annotate mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/Status.java @ 1124:a14a2f7e74d8 development/2024.03.x tip

2024.03.x branch is created
author Nadia Burnasheva <nadezhda.burnasheva@jetbrains.com>
date Thu, 15 Feb 2024 11:33:35 +0100
parents 7bf4d943d5bb
children
rev   line source
732
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
1 /*
976
7bf4d943d5bb Update copyright
pavel.sher
parents: 732
diff changeset
2 * Copyright 2000-2018 JetBrains s.r.o.
732
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
3 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
4 * Licensed under the Apache License, Version 2.0 (the "License");
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
5 * you may not use this file except in compliance with the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
6 * You may obtain a copy of the License at
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
7 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
8 * http://www.apache.org/licenses/LICENSE-2.0
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
9 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
10 * Unless required by applicable law or agreed to in writing, software
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
11 * distributed under the License is distributed on an "AS IS" BASIS,
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
13 * See the License for the specific language governing permissions and
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
14 * limitations under the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
15 */
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 425
diff changeset
16
425
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
17 package jetbrains.buildServer.buildTriggers.vcs.mercurial.command;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
18
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
19 import org.jetbrains.annotations.NotNull;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
20
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
21 import static com.intellij.openapi.util.text.StringUtil.isEmpty;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
22
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
23 /**
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
24 * File status, see 'hg help status'.
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
25 */
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
26 public enum Status {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
27
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
28 ADDED("added"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
29 MODIFIED("modified"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
30 REMOVED("removed"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
31 CLEAN("clean"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
32 MISSING("missing"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
33 NOT_TRACKED("not tracked"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
34 IGNORED("ignored"),
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
35 UNKNOWN("unknown");
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
36
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
37 private final String myName;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
38
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
39 Status(@NotNull String name) {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
40 myName = name;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
41 }
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
42
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
43 @NotNull
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
44 public String getName() {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
45 return myName;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
46 }
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
47
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
48 public static Status makeStatus(@NotNull final String s) {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
49 if (isEmpty(s))
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
50 return UNKNOWN;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
51 return makeStatus(s.charAt(0));
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
52 }
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
53
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
54 public static Status makeStatus(final char c) {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
55 switch (c) {
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
56 case 'A': return ADDED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
57 case 'M': return MODIFIED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
58 case 'R': return REMOVED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
59 case 'C': return CLEAN;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
60 case '!': return MISSING;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
61 case '?': return NOT_TRACKED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
62 case 'I': return IGNORED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
63 case ' ': return ADDED;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
64 default : return UNKNOWN;
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
65 }
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
66 }
e33c3e4918f5 Add list files support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
67 }