Package: ProcessExecutorException
ProcessExecutorException
name | instruction | branch | complexity | line | method | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ProcessExecutorException(String, int, List, List) |
|
|
|
|
|
||||||||||||||||||||
getExitCode() |
|
|
|
|
|
||||||||||||||||||||
getStderr() |
|
|
|
|
|
||||||||||||||||||||
getStdout() |
|
|
|
|
|
Coverage
1: /*
2: * #%L
3: * *********************************************************************************************************************
4: *
5: * NorthernWind - lightweight CMS
6: * http://northernwind.tidalwave.it - git clone https://bitbucket.org/tidalwave/northernwind-src.git
7: * %%
8: * Copyright (C) 2011 - 2023 Tidalwave s.a.s. (http://tidalwave.it)
9: * %%
10: * *********************************************************************************************************************
11: *
12: * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
13: * the License. You may obtain a copy of the License at
14: *
15: * http://www.apache.org/licenses/LICENSE-2.0
16: *
17: * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
18: * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
19: * specific language governing permissions and limitations under the License.
20: *
21: * *********************************************************************************************************************
22: *
23: *
24: * *********************************************************************************************************************
25: * #L%
26: */
27: package it.tidalwave.util;
28:
29: import javax.annotation.Nonnull;
30: import java.util.List;
31: import java.util.concurrent.CopyOnWriteArrayList;
32: import java.io.IOException;
33: import lombok.Getter;
34:
35: /***********************************************************************************************************************
36: *
37: * An exception thrown when an external process terminated with a non-zero exit code. Getter methods allow to access
38: * the exit code as well as the stdout and stderr output.
39: *
40: * @author Fabrizio Giudici
41: *
42: **********************************************************************************************************************/
43: public class ProcessExecutorException extends IOException
44: {
45: /** The exit code. */
46: @Getter
47: private final int exitCode;
48:
49: /** The stdout. */
50: @Getter @Nonnull
51: private final List<String> stdout;
52:
53: /** The stderr. */
54: @Getter @Nonnull
55: private final List<String> stderr;
56:
57: public ProcessExecutorException (@Nonnull final String message,
58: final int exitCode,
59: @Nonnull final List<String> stdout,
60: @Nonnull final List<String> stderr)
61: {
62: super(message);
63: this.exitCode = exitCode;
64: this.stdout = new CopyOnWriteArrayList<>(stdout);
65: this.stderr = new CopyOnWriteArrayList<>(stderr);
66: }
67: }