1) file CamCoStr.idl: ===================== interface CamCoStr { string cacoStr(in string inStr); }; 2) file make.bat: ===================== echo Building Java Camac client .... idltojava CamCoStr.idl javac client.java 3) file client.java: ===================== //================================================================================= // client program for testing CORBA camac server with java. // compiled by Urs Rohrer (PSI), August 1999 // used CORBA implementation: Sun's IDL compiler for java together with JDK_1.2.2 // (for downloading see http://java.sun.com/products/OV_jdkProduct.html ) //================================================================================= import org.omg.CosNaming.*; import java.util.Properties; import java.io.*; public class client { public static void main(String args[]) { if (args.length != 1) { System.out.println("Usage: java client pcxyz"); System.exit(1); } Properties props = new Properties(); props.put("org.omg.CORBA.ORBInitialPort", "900"); props.put("org.omg.CORBA.ORBInitialHost", "pc303.psi.ch"); org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,props); try { org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService"); NamingContext ncRef = NamingContextHelper.narrow(objRef); NameComponent nc1 = new NameComponent(args[0],""); NameComponent nc2 = new NameComponent(args[0],"Object"); NameComponent [] path = {nc1, nc2}; org.omg.CORBA.Object obj = ncRef.resolve(path); CamCoStr myobject = CamCoStrHelper.narrow(obj); BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); while(true) { System.out.print("Enter command [ ? for help, EXIT for quit ] : "); System.out.flush(); String In = in.readLine(); if (In.equals("EXIT")) break; else if (In.equals("?")) Help(); else { String Out = myobject.cacoStr(In); System.out.println("server returned: " + Out); } } } catch(Exception e) { System.out.println("Exception: " + e); System.exit(1); } } public static void Help() { System.out.println("Version 1.00: Legal commands are:"); System.out.println("-------------------------------------------------------------------------"); System.out.println("| desired Action | Input | Receive (ok) | or Error |"); System.out.println("-------------------+-----------------+-------------------+---------------"); System.out.println("| SockTimeOut | TOUT nnn | *TOUT* nnn | |"); System.out.println("| ReadAllDevices | RALL | *RALL* <list> | *RALL* 0 |"); System.out.println("| ReadAllDevices | RAL2 | *RAL2* <list> | *RAL2* 0 |"); System.out.println("| ReadAllDacs | ALLD | *ALLD* <list> | *ALLD* 0 |"); System.out.println("| WriteDAC | WDAC XYZ nnn | *WDAC* XYZ= nnn | *WDAC* error |"); System.out.println("| WriteDAC&Wait | WDAW XYZ nnn | *WDAW* XYZ= nnn | *WDAW* error |"); System.out.println("| ReadDAC | RDAC XYZ | *RDAC* XYZ= nnn | *RDAC* error |"); System.out.println("| ReadADC | RADC XYZ | *RADC* XYZ= nnn | *RADC* error |"); System.out.println("| ReadCamacDac | RCAD XYZ f | *RCAD* nnn | *RCAD* error |"); System.out.println("| WriteCamacDac | WCAD XYZ f nnn | *WCAD* nnn | *WCAD* error |"); System.out.println("| DoReadCamac | RCAM N A F | *RCAM* sta nnn | *RCAM* error |"); System.out.println("| DoWriteCamac | WCAM N A F nnn | *WCAM* sta | *WCAM* error |"); System.out.println("| DoControlCamac | CCAM N A F | *CCAM* sta | *CCAM* error |"); System.out.println("| GetDeviceName | DEVN nnn | *DEVN* nnn= XYZ | *DEVN* error |"); System.out.println("| DeviceParameter | DEVP nnn | *DEVP* <3par> | *DEVP* error |"); System.out.println("| DeviceParameter2 | DEPA nnn | *DEPA* <17par> | *DEPA* error |"); System.out.println("| DeviceParameter3 | DEPB nnn | *DEPB* <4par> | *DEPB* error |"); System.out.println("-------------------+-----------------+-------------------+---------------"); System.out.print("--- press <Enter> key for more --- "); System.out.flush(); BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); try { String In = in.readLine(); } catch(Exception e) {} System.out.println("-------------------------------------------------------------------------"); System.out.println("| desired Action | Input | Receive (ok) | or Error |"); System.out.println("-------------------+-----------------+-------------------+---------------"); System.out.println("| ReserveCrate | RESC | *RESC* 1 | *RESC* 0 |"); System.out.println("| FreeCrate | FREE | *FREE* 1 | |"); System.out.println("| NewDeviceList | NEWL | *NEWL* 1 | *NEWL* 0 |"); System.out.println("| GetPageIndex | PIND nnn | *PIND* nnn | *PIND* error |"); System.out.println("| GetNumberOfPages | NPAG | *NPAG* nnn | |"); System.out.println("| ReadOnePage | RPAG nnn | *RPAG* nnn <list> | *RPAG* 0 |"); System.out.println("| SwitchOnCombis | SWON | *SWON* nnn | |"); System.out.println("| SwitchOnCombi | SWCO XYZ | *SWCO* XYZ 1 | *SWCO* XYZ 0 |"); System.out.println("| SwitchOffCombi | SWOF XYZ | *SWOF* XYZ 1 | *SWOF* XYZ 0 |"); System.out.println("| ClearScalers | CLSC sn s1 s2 | *CLSC* | *CLSC* error |"); System.out.println("| ReadScalers | RDSC sn s1 s2 | *RDSC* nnn mmm | *RDSC* error |"); System.out.println("| ReadClAllScalers | RCAS n | *RCAS* <6rates> | *RCAS* error |"); System.out.println("| Shutdown | EXIT | | |"); System.out.println("| Help info | ? | these help frames | |"); System.out.println("-------------------------------------------------------------------------"); System.out.flush(); } }
|