Cleaning up code for runtime, installer, RMI, compiler for the Java side
[iot2.git] / iotjava / iotrmi / Java / sample / TestClass_Skeleton.java
diff --git a/iotjava/iotrmi/Java/sample/TestClass_Skeleton.java b/iotjava/iotrmi/Java/sample/TestClass_Skeleton.java
deleted file mode 100644 (file)
index 822e064..0000000
+++ /dev/null
@@ -1,343 +0,0 @@
-package iotrmi.Java.sample;
-
-import java.io.IOException;
-import java.util.Arrays;
-
-import java.util.List;
-
-import iotrmi.Java.IoTRMIObject;
-import iotrmi.Java.IoTRMICall;
-
-public class TestClass_Skeleton implements TestClassInterface {
-
-       /**
-        * Class Constants
-        */
-       private TestClassInterface tc;
-       private int port;
-       private IoTRMIObject rmiObj;
-
-       // Callback stuff
-       private static int objIdCnt = 0; // Counter for callback object Ids
-       private IoTRMICall rmiCall;
-       private CallBackInterface cbstub;
-
-       // Object permission
-       private int object0Id = 0;
-       private static Integer[] object0Permission = { 0, 1, 2, 3, 4, 5 };
-       private List<Integer> set0Allowed;
-
-
-       /**
-        * Constructors
-        */
-       public TestClass_Skeleton(TestClass _tc, int _port) throws
-               ClassNotFoundException, InstantiationException,
-                       IllegalAccessException, IOException {
-
-               tc = _tc;
-               port = _port;
-               rmiObj = new IoTRMIObject(_port);
-               set0Allowed = Arrays.asList(object0Permission);
-               ___waitRequestInvokeMethod();
-       }
-
-       
-       public void setA(int _int) {
-               
-               tc.setA(_int);
-       }
-       
-       
-       public void ___setA() {
-
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class }, 
-                       new Class<?>[] { null });
-               setA((int) paramObj[0]);
-       }
-       
-       
-       public void setB(float _float) {
-               
-               tc.setB(_float);
-       }
-       
-       
-       public void ___setB() {
-
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { float.class }, 
-                       new Class<?>[] { null });
-               setB((float) paramObj[0]);
-       }
-       
-       
-       public void setC(String _string) {
-               
-               tc.setC(_string);
-       }
-       
-       
-       public void ___setC() {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { String.class }, 
-                       new Class<?>[] { null });
-               setC((String) paramObj[0]);
-       }
-       
-       
-       public String sumArray(String[] newA) {
-               
-               return tc.sumArray(newA);
-       }
-       
-       
-       public void ___sumArray() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { String[].class }, 
-                       new Class<?>[] { null });
-               Object retObj = sumArray((String[]) paramObj[0]);
-               rmiObj.sendReturnObj(retObj);
-       }
-       
-       
-       public int setAndGetA(int newA) {
-               
-               return tc.setAndGetA(newA);
-       }
-       
-       
-       public void ___setAndGetA() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class }, 
-                       new Class<?>[] { null });
-               Object retObj = setAndGetA((int) paramObj[0]);
-               rmiObj.sendReturnObj(retObj);
-       }
-       
-       
-       public int setACAndGetA(String newC, int newA) {
-               
-               return tc.setACAndGetA(newC, newA);
-       }
-       
-       
-       public void ___setACAndGetA() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { String.class, int.class }, 
-                       new Class<?>[] { null, null });
-               Object retObj = setACAndGetA((String) paramObj[0], (int) paramObj[1]);
-               rmiObj.sendReturnObj(retObj);
-       }
-       
-       
-       public void registerCallback(CallBackInterface _cb) {
-               
-               tc.registerCallback(_cb);
-       }
-       
-       
-       public void ___registerCallback() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class, String.class, int.class }, 
-                       new Class<?>[] { null, null, null });
-               CallBackInterface cbstub = new CallBack_Stub((int) paramObj[0], (String) paramObj[1], (int) paramObj[2]);
-               registerCallback((CallBackInterface) cbstub);
-       }
-       
-
-       public void registerCallback(CallBackInterface[] _cb) {
-               
-               tc.registerCallback(_cb);
-       }
-       
-       
-       // Use 4 underscores because this is a second instance of registerCallback
-       public void ____registerCallback() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class }, 
-                       new Class<?>[] { null });
-               int numStubs = (int) paramObj[0];
-               CallBackInterface[] stub = new CallBackInterface[numStubs];
-               for (int objId = 0; objId < numStubs; objId++) {
-                       stub[objId] = new CallBack_CBStub(rmiCall, objIdCnt);
-                       objIdCnt++;
-               }
-               registerCallback(stub);
-       }
-       
-       
-       public void ___regCB() throws IOException {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class, String.class, int.class }, 
-                       new Class<?>[] { null, null, null });
-               //String[] methodSignatures = CallBack_CBStub.getMethodSignatures();
-               rmiCall = new IoTRMICall((int) paramObj[0], (String) paramObj[1], (int) paramObj[2]);
-               System.out.println("Creating a new IoTRMICall object");
-       }
-       
-       
-       public int callBack() {
-               
-               return tc.callBack();
-       }
-       
-       
-       public void ___callBack() throws IOException {
-               
-               Object retObj = callBack();
-               rmiObj.sendReturnObj(retObj);
-       }
-       
-
-       public StructJ[] handleStruct(StructJ[] data) {
-
-               return tc.handleStruct(data);
-       }
-       
-       
-       public int ___structSize() {
-               
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class }, 
-                       new Class<?>[] { null });
-               return (int) paramObj[0];
-       }
-       
-       
-       public void ___handleStruct(int structsize1) throws IOException {
-
-               Class<?>[] paramCls = new Class<?>[3*structsize1];
-               Class<?>[] paramClsVal = new Class<?>[3*structsize1];
-               int pos = 0;
-               for(int i=0; i < structsize1; i++) {
-                       paramCls[pos] = String.class;
-                       paramClsVal[pos++] = null;
-                       paramCls[pos] = float.class;
-                       paramClsVal[pos++] = null;
-                       paramCls[pos] = int.class;
-                       paramClsVal[pos++] = null;
-               }
-               Object[] paramObj = rmiObj.getMethodParams(paramCls, 
-                       paramClsVal);
-               StructJ[] data = new StructJ[structsize1];
-               for (int i=0; i < structsize1; i++) {
-                       data[i] = new StructJ();
-               }
-               pos = 0;
-               for(int i=0; i < structsize1; i++) {
-                       data[i].name = (String) paramObj[pos++];
-                       data[i].value = (float) paramObj[pos++];
-                       data[i].year = (int) paramObj[pos++];
-               }
-               // Just the following if there is no returned value
-               //tc.handleStruct(data);
-               StructJ[] retStruct = tc.handleStruct(data);
-               // Return length first
-               int structsize2 = retStruct.length;
-               Object retObj = structsize2;
-               rmiObj.sendReturnObj(retObj);           
-               // Send the actual struct members
-               // Calculate the size of the array
-               Class<?>[] retCls = new Class<?>[3*structsize2];
-               Object[] retObj2 = new Object[3*structsize2];
-               // Handle with for loop
-               pos = 0;
-               for(int i = 0; i < structsize2; i++) {
-                       retCls[pos] = String.class;
-                       retObj2[pos++] = data[i].name;
-                       retCls[pos] = float.class;
-                       retObj2[pos++] = data[i].value;
-                       retCls[pos] = int.class;
-                       retObj2[pos++] = data[i].year;
-               }
-               rmiObj.sendReturnObj(retCls, retObj2);
-       }
-
-
-       public EnumJ[] handleEnum(EnumJ[] en) {
-
-               return tc.handleEnum(en);
-       }
-
-
-       public void ___handleEnum() throws IOException {
-
-               Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int[].class }, 
-                       new Class<?>[] { null }); 
-               // Encoder/decoder
-               int paramInt[] = (int[]) paramObj[0];
-               int enumSize1 = paramInt.length;
-               EnumJ[] enumJ = EnumJ.values();
-               EnumJ[] data = new EnumJ[enumSize1];
-               for (int i=0; i < enumSize1; i++) {
-                       data[i] = enumJ[paramInt[i]];
-               }
-               // if void, just "handleEnum(data)"
-               // this is when we have return value EnumJ[]
-               EnumJ[] retEnum = handleEnum(data);
-               // Get length first
-               int enumSize2 = retEnum.length;
-               // Now send the array of integers
-               int[] retEnumInt = new int[enumSize2];
-               for (int i=0; i < enumSize2; i++) {
-                       retEnumInt[i] = retEnum[i].ordinal();
-               }
-               Object retObj = retEnumInt;
-               rmiObj.sendReturnObj(retObj);
-       }
-       
-
-       private void ___waitRequestInvokeMethod() throws IOException {
-
-               // Struct size
-               int structSize1 = 0;
-               int enumSize1 = 0;
-               // Loop continuously waiting for incoming bytes
-               while (true) {
-
-                       rmiObj.getMethodBytes();
-                       int _objectId = rmiObj.getObjectId();
-                       int methodId = rmiObj.getMethodId();
-                       if (_objectId == object0Id) {
-                       // Multiplex based on object Id
-                               // Complain if the method is not allowed
-                               if (!set0Allowed.contains(methodId))
-                                       throw new Error("TestClass_Skeleton: This object is not allowed to access method " + methodId);
-                       // If we have more than 1 object Id...
-                       //else if (_objectId == object1Id) {
-
-                       } else
-                               throw new Error("TestClass_Skeleton: Unrecognizable object Id: " + _objectId);
-
-                       switch (methodId) {
-
-                               case 0: ___setA(); break;
-                               case 1: ___setB(); break;
-                               case 2: ___setC(); break;
-                               case 3: ___sumArray(); break;
-                               case 4: ___setAndGetA(); break;
-                               case 5: ___setACAndGetA(); break;
-                               case 6: ___callBack(); break; 
-                               case 7: ___registerCallback(); break;
-                               case 8: ____registerCallback(); break;
-                               // Special option to register callback
-                               case 9: ___regCB(); break;
-                               // Struct handling (3 is the size of the struct)
-                               case 10: ___handleStruct(structSize1); break;
-                               case 11: structSize1 = ___structSize(); break;
-                               case 12: ___handleEnum(); break;
-                               default:
-                                       throw new Error("Method Id " + methodId + " not recognized!");
-                       }
-
-               }
-       }
-       
-       
-       public static void main(String[] args) throws Exception {
-
-               int port = 5010;
-               TestClass tc = new TestClass(3, 5f, "7911");
-               TestClass_Skeleton tcSkel = new TestClass_Skeleton(tc, port);
-
-       }
-}