1 package iotrmi.Java.sample;
3 import java.io.IOException;
5 import java.util.Arrays;
6 import iotrmi.Java.IoTRMIObject;
8 public class CallBack_CBSkeleton implements CallBackInterface {
10 private int objectId = 0; // Default value is 0
11 private final static String[] methodSignatures = {
16 private CallBackInterface cb;
22 public CallBack_CBSkeleton(CallBackInterface _cb, int _objectId) throws
23 ClassNotFoundException, InstantiationException,
24 IllegalAccessException, IOException {
28 System.out.println("Creating CallBack_Skeleton and waiting!");
32 public int printInt() {
37 public int ___printInt() {
42 public void setInt(int _i) {
47 public void ___setInt(IoTRMIObject rmiObj) {
48 Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class },
49 new Class<?>[] { null }, new Class<?>[] { null });
50 setInt((int) paramObj[0]);
54 public Object invokeMethod(IoTRMIObject rmiObj) throws IOException {
56 String methodSign = rmiObj.getSignature();
57 Object[] paramObj = null;
60 if (methodSign.equals("intprintInt()")) {
61 retObj = ___printInt();
62 } else if (methodSign.equals("voidsetInt(int)")) {
65 throw new Error("Signature not recognized!");
66 System.out.println("Return object: " + retObj);
72 // Return method signatures
73 public static String[] getMethodSignatures() {
75 return methodSignatures;
79 public static void main(String[] args) throws Exception {