//Sample2/AclassCI.java //################################################################# // Class AclassCI : Aclass (C)lient (I)mplementation //################################################################# // // Construction Date : 9/24/98 3:44 PM // Auto-generated by CreateNetAppWrappers (Chris Anderson (C) UCLA 1998) // import java.io.*; import java.net.Socket; import java.util.Vector; import cam.netapp.*; public class AclassCI implements cam.netapp.CIinterface { // //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Client Implementation of Source Class Methods //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // public int addTwo(int Arg_1) { Vector methodData = new Vector(2); methodData.addElement(new Integer(0)); methodData.addElement(new Integer(Arg_1)); try{Os.writeObject(methodData);} catch(Exception e){System.out.println(e);}; Vector MethodRet = new Vector(); try{MethodRet = (Vector)Is.readObject();} catch(Exception e){System.out.println(e);}; int retValue = ((Integer)MethodRet.elementAt(0)).intValue(); if(retValue != 0) { System.out.println("Error In Remote Invocation Of Aclass.addTwo"); } return ((Integer)MethodRet.elementAt(1)).intValue(); } // //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Client Implementation Specific Methods //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // public AclassCI() { verboseFlag = false; Os = null; Is = null; netConnect = new NetworkConnection(); netConnect.setVerboseFlag(verboseFlag); } protected void finalize() throws Throwable { netConnect.disconnectRemoteApplication(); } public void setObjectStreams(InputStream inS, OutputStream outS) throws Exception { try{Os = new ObjectOutputStream(outS);} catch(Exception e){throw e;} try{Is = new ObjectInputStream(inS);} catch(Exception e){throw e;} } public void createServerInstance(String address, int portnum) throws Exception { int auxConnections = 1; try{netConnect.connectRemoteApplication(address, portnum,"AclassSI", auxConnections);} catch(Exception e) {throw new Exception("AclassCI : Unable to Connect to Remote Instance");}; netConnect.startRemoteApplication(); try{Os = new ObjectOutputStream(netConnect.getOutputStream());} catch(Exception e) {throw new Exception("AclassCI : Unable to Connect to Remote Instance");}; try{Is = new ObjectInputStream(netConnect.getInputStream());} catch(Exception e) {throw new Exception("AclassCI : Unable to Connect to Remote Instance");}; if(verboseFlag){System.out.println("AclassCI : Connection Complete");}; } public void setVerboseFlag(boolean flag) { verboseFlag = flag; netConnect.setVerboseFlag(verboseFlag); } // //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Data Members //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // ObjectOutputStream Os; ObjectInputStream Is; NetworkConnection netConnect; public boolean verboseFlag; }