X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=iotjava%2Fiotrmi%2FJava%2Fsample%2FCallBack_CBSkeleton.java;h=7eaf1ff555e08bd68d105b916d5022725b9d28b4;hb=8e565033fd19c4696f67862ade27f0ebbacf5682;hp=c038ec7e4a7df6dafe1e713026c06181fdd7fa59;hpb=e8202b98639eb5d07f3342e920d0bcdc23503c3d;p=iot2.git diff --git a/iotjava/iotrmi/Java/sample/CallBack_CBSkeleton.java b/iotjava/iotrmi/Java/sample/CallBack_CBSkeleton.java index c038ec7..7eaf1ff 100644 --- a/iotjava/iotrmi/Java/sample/CallBack_CBSkeleton.java +++ b/iotjava/iotrmi/Java/sample/CallBack_CBSkeleton.java @@ -8,11 +8,6 @@ import iotrmi.Java.IoTRMIObject; public class CallBack_CBSkeleton implements CallBackInterface { private int objectId = 0; // Default value is 0 - private final static String[] methodSignatures = { - - "intprintInt()", - "voidsetInt(int)" - }; private CallBackInterface cb; @@ -28,49 +23,44 @@ public class CallBack_CBSkeleton implements CallBackInterface { System.out.println("Creating CallBack_Skeleton and waiting!"); } - - public Object invokeMethod(IoTRMIObject rmiObj) throws IOException { - - String methodSign = rmiObj.getSignature(); - Object[] paramObj = null; - Object retObj = null; - - if (methodSign.equals("intprintInt()")) { - retObj = printInt(); - } else if (methodSign.equals("voidsetInt(int)")) { - paramObj = rmiObj.getMethodParams(new Class[] { int.class }, - new Class[] { null }, new Class[] { null }); - setInt((int) paramObj[0]); - } else - throw new Error("Signature not recognized!"); - System.out.println("Return object: " + retObj); - - return retObj; - } - - - // Return method signatures - public static String[] getMethodSignatures() { - - return methodSignatures; - } - - + public int printInt() { return cb.printInt(); } + + + public void ___printInt(IoTRMIObject rmiObj) throws IOException { + Object retObj = printInt(); + rmiObj.sendReturnObj(retObj); + } public void setInt(int _i) { cb.setInt(_i); } + + + public void ___setInt(IoTRMIObject rmiObj) { + Object[] paramObj = rmiObj.getMethodParams(new Class[] { int.class }, + new Class[] { null }); + setInt((int) paramObj[0]); + } + + + public void invokeMethod(IoTRMIObject rmiObj) throws IOException { + + int methodId = rmiObj.getMethodId(); + + switch (methodId) { + case 0: ___printInt(rmiObj); break; + case 1: ___setInt(rmiObj); break; + default: + throw new Error("Method Id not recognized!"); + } + } public static void main(String[] args) throws Exception { - int port = 5010; - CallBack cb = new CallBack(23); - CallBack_Skeleton cbSkel = new CallBack_Skeleton(cb, port); - cbSkel.waitRequestInvokeMethod(); } }