17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package jdk.test.lib.dcmd;
25
26 import jdk.test.lib.process.OutputAnalyzer;
27
28 /**
29 * Abstract base class for Diagnostic Command executors
30 */
31 public abstract class CommandExecutor {
32
33 /**
34 * Execute a diagnostic command
35 *
36 * @param cmd The diagnostic command to execute
37 * @return an {@link jdk.testlibrary.OutputAnalyzer} encapsulating the output of the command
38 * @throws CommandExecutorException if there is an exception on the "calling side" while trying to execute the
39 * Diagnostic Command. Exceptions thrown on the remote side are available as textual representations in
40 * stderr, regardless of the specific executor used.
41 */
42 public final OutputAnalyzer execute(String cmd) throws CommandExecutorException {
43 return execute(cmd, false);
44 }
45
46 /**
47 * Execute a diagnostic command
48 *
49 * @param cmd The diagnostic command to execute
50 * @param silent Do not print the command output
51 * @return an {@link jdk.testlibrary.OutputAnalyzer} encapsulating the output of the command
52 * @throws CommandExecutorException if there is an exception on the "calling side" while trying to execute the
53 * Diagnostic Command. Exceptions thrown on the remote side are available as textual representations in
54 * stderr, regardless of the specific executor used.
55 */
56 public final OutputAnalyzer execute(String cmd, boolean silent) throws CommandExecutorException {
57 if (!silent) {
58 System.out.printf("Running DCMD '%s' through '%s'%n", cmd, this.getClass().getSimpleName());
59 }
60
61 OutputAnalyzer oa = executeImpl(cmd);
62
63 if (!silent) {
64 System.out.println("---------------- stdout ----------------");
65 System.out.println(oa.getStdout());
66 System.out.println("---------------- stderr ----------------");
67 System.out.println(oa.getStderr());
68 System.out.println("----------------------------------------");
69 System.out.println();
70 }
71 return oa;
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package jdk.test.lib.dcmd;
25
26 import jdk.test.lib.process.OutputAnalyzer;
27
28 /**
29 * Abstract base class for Diagnostic Command executors
30 */
31 public abstract class CommandExecutor {
32
33 /**
34 * Execute a diagnostic command
35 *
36 * @param cmd The diagnostic command to execute
37 * @return an {@link jdk.test.lib.process.OutputAnalyzer} encapsulating the output of the command
38 * @throws CommandExecutorException if there is an exception on the "calling side" while trying to execute the
39 * Diagnostic Command. Exceptions thrown on the remote side are available as textual representations in
40 * stderr, regardless of the specific executor used.
41 */
42 public final OutputAnalyzer execute(String cmd) throws CommandExecutorException {
43 return execute(cmd, false);
44 }
45
46 /**
47 * Execute a diagnostic command
48 *
49 * @param cmd The diagnostic command to execute
50 * @param silent Do not print the command output
51 * @return an {@link jdk.test.lib.process.OutputAnalyzer} encapsulating the output of the command
52 * @throws CommandExecutorException if there is an exception on the "calling side" while trying to execute the
53 * Diagnostic Command. Exceptions thrown on the remote side are available as textual representations in
54 * stderr, regardless of the specific executor used.
55 */
56 public final OutputAnalyzer execute(String cmd, boolean silent) throws CommandExecutorException {
57 if (!silent) {
58 System.out.printf("Running DCMD '%s' through '%s'%n", cmd, this.getClass().getSimpleName());
59 }
60
61 OutputAnalyzer oa = executeImpl(cmd);
62
63 if (!silent) {
64 System.out.println("---------------- stdout ----------------");
65 System.out.println(oa.getStdout());
66 System.out.println("---------------- stderr ----------------");
67 System.out.println(oa.getStderr());
68 System.out.println("----------------------------------------");
69 System.out.println();
70 }
71 return oa;
|