annotate mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CommandSettings.java @ 669:c32869bd757b

Merge Gaya-8.0.x
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Sat, 12 Oct 2013 19:38:36 +0400
parents 40c085517770
children 1da36037196d
rev   line source
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
1 package jetbrains.buildServer.buildTriggers.vcs.mercurial.command;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
2
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
3 import org.jetbrains.annotations.NotNull;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
4
493
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
5 import java.util.HashMap;
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
6 import java.util.HashSet;
493
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
7 import java.util.Map;
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
8 import java.util.Set;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
9
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
10 /**
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
11 * @author dmitry.neverov
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
12 */
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
13 public class CommandSettings {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
14
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
15 private int myTimeout = 3600;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
16 private Set<String> myPrivateData = new HashSet<String>();
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
17 private boolean myCheckForFailure = true;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
18 private boolean myFailWhenStderrNotEmpty = false;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
19 private String myLogLevel = "debug";
493
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
20 private Map<String, String> myHgEnv = new HashMap<String, String>();
578
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
21 private int myLogOutputLimit = -1;
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
22
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
23 public CommandSettings() {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
24
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
25 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
26
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
27 public CommandSettings(int timeout,
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
28 @NotNull Set<String> privateData,
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
29 boolean checkForFailure,
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
30 boolean failWhenStderrNotEmpty,
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
31 @NotNull String logLevel) {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
32 myTimeout = timeout;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
33 myPrivateData = privateData;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
34 myCheckForFailure = checkForFailure;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
35 myFailWhenStderrNotEmpty = failWhenStderrNotEmpty;
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
36 myLogLevel = logLevel;
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
37 }
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
38
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
39 public CommandSettings setTimeout(int timeout) {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
40 myTimeout = timeout;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
41 return this;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
42 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
43
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
44 public int getTimeout() {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
45 return myTimeout;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
46 }
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
47
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
48 public CommandSettings setPrivateData(@NotNull Set<String> privateData) {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
49 myPrivateData = privateData;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
50 return this;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
51 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
52
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
53 @NotNull
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
54 public Set<String> getPrivateData() {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
55 return myPrivateData;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
56 }
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
57
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
58 public CommandSettings setCheckForFailure(boolean checkForFailure) {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
59 myCheckForFailure = checkForFailure;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
60 return this;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
61 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
62
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
63 public boolean isCheckForFailure() {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
64 return myCheckForFailure;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
65 }
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
66
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
67 public CommandSettings setFailWhenStderrNotEmpty(boolean failWhenStderrNotEmpty) {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
68 myFailWhenStderrNotEmpty = failWhenStderrNotEmpty;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
69 return this;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
70 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
71
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
72 public boolean isFailWithNonEmptyStderr() {
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
73 return myFailWhenStderrNotEmpty;
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
74 }
480
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
75
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
76 public CommandSettings setLogLevel(String logLevel) {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
77 myLogLevel = logLevel;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
78 return this;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
79 }
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
80
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
81 public String getLogLevel() {
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
82 return myLogLevel;
efba721f9a1d TW-23382 agent logs with info, server logs with debug
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 367
diff changeset
83 }
493
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
84
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
85 public CommandSettings addHgEnv(@NotNull String param, @NotNull String value) {
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
86 myHgEnv.put(param, value);
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
87 return this;
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
88 }
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
89
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
90 public Map<String, String> getHgEnv() {
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
91 return myHgEnv;
236d0866a45f Make tests independent from mercurial settings on agent
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 480
diff changeset
92 }
578
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
93
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
94 public int getLogOutputLimit() {
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
95 return myLogOutputLimit;
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
96 }
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
97
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
98 public CommandSettings setLogOutputLimit(int logOutputLimit) {
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
99 myLogOutputLimit = logOutputLimit;
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
100 return this;
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 493
diff changeset
101 }
367
061e5f3a6bad Make plugin compatible with mercurial 2.1
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
102 }