// Proxy.java import IDLInterchange.*; import CosPropertyService.*; import ACM.*; import java.io.*; import java.net.*; public class StreetServer { public static void main(String[] args) { // Initialize the ORB. org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,null); // Initialize the BOA org.omg.CORBA.BOA boa = orb.BOA_init(); //Creating a Proxy (CConstrainCollection) Street proxy = new Street("Proxy", orb); boa.obj_is_ready(proxy); System.out.println("Created" + proxy); //Creating a CQuery CQueryImpl cquery = new CQueryImpl("aQueryObject"); boa.obj_is_ready(cquery); System.out.println("Created" + cquery); if ( args.length != 0 ) { //String url = "http://Eel:15000/ACMProxy.ior"; //try { // System.out.println("Resolving the url"); // com.visigenic.vbroker.URLNaming.Resolver resolver = // com.visigenic.vbroker.URLNaming.ResolverHelper.narrow( // orb.resolve_initial_references("URLNamingResolver")); // resolver.force_register_url(url,proxy); // url = "http://Eel:15000/CQuery.ior"; // System.out.println("Resolving the url"); // resolver.force_register_url(url,result); // Gerard, 2-5-98, new class which does that, naming.java naming.PublishInfobus(proxy, "ACM", "dl/Services", "IDL:IDLInterchange/CConstrainCollection:1.0", "IDLInterchange.CConstrainCollection", orb); // Now we publish in Visigenic only the CQuery object, needed to // work with applets..... Needs work!!!! naming.PublishVisi(cquery, "CQuery", orb); //} //catch (Exception e) { // System.err.println(e); //} } // Wait for incoming requests boa.impl_is_ready(); } private static String Get_IOR (String url) { String ior = ""; try { System.out.println("URL: " + url); URL bUrl = new URL(url); DataInputStream bUrlIn = new DataInputStream(bUrl.openStream()); ior = bUrlIn.readLine(); bUrlIn.close(); } catch (Exception e) { System.out.println(e); } finally { return (ior); } } public static void Publish (String name ,String pObject) { String url; String status = null; url = ""; try { url = url.concat("http://grunion.stanford.edu/cgi-bin/testbed/cosnaming/cosnaming.py"); url = url.concat("?method=Bind&pName="); url = url.concat(name); url = url.concat("&pContext=dl/Services&pSBH="); url = url.concat(pObject); url = url.concat("&pTypeID=IDL:IDLInterchange/CConstrainCollection:1.0"); url = url.concat("&pType=IDLInterchange.CConstrainCollection"); System.out.println("URL: " + url); URL bUrl = new URL(url); DataInputStream bUrlIn = new DataInputStream(bUrl.openStream()); status = bUrlIn.readLine(); status = status.trim(); bUrlIn.close(); } catch (Exception e) { System.out.println(e); } if (!(status.equals("Success"))) { System.out.println("Cannot bind:" + status); } else { System.out.println("Published!!!!"); } } }