FileDocCategorySizeDatePackage
Setup4.javaAPI DocExample3740Wed Apr 19 11:20:24 BST 2000examples.activation

Setup4

public class Setup4 extends Object

Fields Summary
Constructors Summary
Methods Summary
public static voidmain(java.lang.String[] args)

	
	System.setSecurityManager(new RMISecurityManager());
	
	// Because of the 1.2 security model, a security policy should 
	// be specified for the ActivationGroup VM. The first argument
	// to the Properties put method, inherited from Hashtable, is 
	// the key and the second is the value 
	// 
	Properties props = new Properties(); 
	props.put("java.security.policy", 
	   "/home/rmi_tutorial/activation/policy"); 
	
	ActivationGroupDesc.CommandEnvironment ace = null; 
	ActivationGroupDesc exampleGroup = new ActivationGroupDesc(props, ace);
	
	// Once the ActivationGroupDesc has been created, register it 
	// with the activation system to obtain its ID
	//
	ActivationGroupID agi = 
	   ActivationGroup.getSystem().registerGroup(exampleGroup);
	
	// Now explicitly create the group
	//
	ActivationGroup.createGroup(agi, exampleGroup, 0);

	// Don't forget the trailing slash at the end of the URL
	// or your classes won't be found
	//	
	String location = "file:/home/rmi_tutorial/activation/";

	// Pass the file that we want to persist to as the Marshalled
	// object
	MarshalledObject data =  new MarshalledObject (new File(
	    "/home/rmi_tutorial/activation/persistentObjectStore.ser"));

	// The second argument to the ActivationDesc constructor will be used 
	// to uniquely identify this class; it's location is relative to the  
	// URL-formatted String, location.
	//
	ActivationDesc desc = new ActivationDesc 
	    (agi, "examples.activation.MyPersistentClass", location, data);
	
	YetAnotherRemoteInterface yari = 
	    (YetAnotherRemoteInterface)Activatable.register(desc);
	System.out.println("Got the stub for MyPersistentClass");

	// Bind the stub to a name in the registry running on 1099
	//
	Naming.rebind("MyPersistentClass", yari);
	System.out.println("Exported MyPersistentClass");

	System.exit(0);