package org.jacorb.test.nio; import java.util.Properties; import org.jacorb.test.TestIfPOA; import org.omg.CORBA.ORB; import org.omg.CORBA.Policy; import org.omg.PortableServer.IdAssignmentPolicyValue; import org.omg.PortableServer.POA; import org.omg.PortableServer.POAHelper; import org.omg.PortableServer.POAManager; import org.omg.PortableServer.Servant; public class NIOTestServer extends TestIfPOA { @Override public void op() { try { Thread.sleep (3000); } catch (InterruptedException e) { // ignore } } @Override public void onewayOp() { // ignore } public static void main (String[] args) throws Exception { Properties props = new Properties(); props.setProperty ("jacorb.implname","NIOTestServer"); props.setProperty ("OAPort", "16969"); String objID = "ObjectID"; ORB orb = ORB.init(args, props); POA rootPOA = POAHelper.narrow(orb.resolve_initial_references("RootPOA")); Policy[] policies = new Policy[1]; policies[0] = rootPOA.create_id_assignment_policy(IdAssignmentPolicyValue.USER_ID); POAManager poa_manager = rootPOA.the_POAManager(); POA child = rootPOA.create_POA ("thePOA", poa_manager, policies); poa_manager.activate(); Servant impl = new NIOTestServer(); child.activate_object_with_id(objID.getBytes(), impl); // Manually create a persistent based corbaloc. String corbalocStr = "corbaloc::localhost:" + props.getProperty("OAPort") + "/" + props.getProperty("jacorb.implname") + "/" + child.the_name() + "/" + objID; System.out.println ("SERVER IOR: " + corbalocStr); orb.run(); } }