import java.rmi.RMISecurityManager; /* * Created on 2005-apr-12 */ /** * @author Henrik Johansson */ public class Client213 extends Client211 { public Client213(String name) { super(name, "127.0.0.1", 1099); } public Client213(String name, String host) { super(name, host, 1099); } public Client213(String name, String host, int port) { super(name, host, port); } /** * installerar en säkerhetshanterare och anropar sedan setup i * superklassen * * @see Client211#setup() */ protected void setup() { try { System.out.println("Client213.Setup()"); if (System.getSecurityManager() == null) { System.out.println("Client213.Setup() setSecurityManager()"); System.setSecurityManager(new RMISecurityManager()); } super.setup(); } catch(Exception e) { e.printStackTrace(); System.exit(1); } } /** * samma argument som till superklassen, men en säkerhetspolicy som * tillåter klienten att ladda hem stubben samt en kodas måste anges, * här ser anropet ut ut:

* java -Djava.security.policy=SecurityPolicy * -Djava.rmi.server.codebase=http://atlas.dsv.su.se/~pierre/i/05_ass/ip4/a_2_1/space/server/ * <servicename> [<host> [<port>]] * * @see Client211#main(java.lang.String[]) */ public static void main(String[] args) throws Exception { if(args.length == 0) { System.err.println("usage: Client213 [ []]"); } else if(args.length == 1) { new Client213(args[0]); } else if(args.length == 2) { new Client213(args[0], args[1]); } else { new Client213(args[0], args[1], Integer.parseInt(args[2])); } } }