test/sun/tools/common/ShutdownSimpleApplication.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 22,62 ****
*/
/*
*
*
! * Used to shutdown SimpleApplication. The argument to this class is
! * the TCP port number where SimpleApplication is listening.
*/
import java.net.Socket;
import java.net.InetSocketAddress;
import java.io.File;
import java.io.FileInputStream;
public class ShutdownSimpleApplication {
public static void main(String args[]) throws Exception {
// read the (TCP) port number from the given file
File f = new File(args[0]);
FileInputStream fis = new FileInputStream(f);
byte b[] = new byte[8];
int n = fis.read(b);
if (n < 1) {
! throw new RuntimeException("Empty file");
}
fis.close();
String str = new String(b, 0, n, "UTF-8");
! System.out.println("Port number of application is: " + str);
int port = Integer.parseInt(str);
// Now connect to the port (which will shutdown application)
! System.out.println("Connecting to port " + port +
! " to shutdown Application ...");
Socket s = new Socket();
s.connect( new InetSocketAddress(port) );
s.close();
}
}
--- 22,78 ----
*/
/*
*
*
! * Used to shutdown SimpleApplication (or a subclass). The argument to
! * this class is the name of a file that contains the TCP port number
! * on which SimpleApplication (or a subclass) is listening.
! *
! * Note: When this program returns, the SimpleApplication (or a subclass)
! * may still be running because the application has not yet reached the
! * shutdown check.
*/
import java.net.Socket;
import java.net.InetSocketAddress;
import java.io.File;
import java.io.FileInputStream;
public class ShutdownSimpleApplication {
public static void main(String args[]) throws Exception {
+ if (args.length != 1) {
+ throw new RuntimeException("Usage: ShutdownSimpleApplication" +
+ " port-file");
+ }
+
// read the (TCP) port number from the given file
File f = new File(args[0]);
FileInputStream fis = new FileInputStream(f);
byte b[] = new byte[8];
int n = fis.read(b);
if (n < 1) {
! throw new RuntimeException("Empty port-file");
}
fis.close();
String str = new String(b, 0, n, "UTF-8");
! System.out.println("INFO: Port number of SimpleApplication: " + str);
int port = Integer.parseInt(str);
// Now connect to the port (which will shutdown application)
! System.out.println("INFO: Connecting to port " + port +
! " to shutdown SimpleApplication ...");
! System.out.flush();
Socket s = new Socket();
s.connect( new InetSocketAddress(port) );
s.close();
+
+ System.out.println("INFO: done connecting to SimpleApplication.");
+ System.out.flush();
+
+ System.exit(0);
}
}