a82ae71df500260f06b52f4153a60b2602f9f690
[iot2.git] / benchmarks / Java / IrrigationController / MoistureSensorCallback_CallbackSkeleton.java
1 package IrrigationController;
2
3 import java.io.IOException;
4 import java.util.List;
5 import java.util.ArrayList;
6 import java.util.Arrays;
7 import iotrmi.Java.IoTRMICall;
8 import iotrmi.Java.IoTRMIObject;
9
10 import iotcode.interfaces.*;
11
12 public class MoistureSensorCallback_CallbackSkeleton implements MoistureSensorCallback {
13
14         private MoistureSensorCallback mainObj;
15         private int objectId = 0;
16         private String callbackAddress;
17         
18
19         public MoistureSensorCallback_CallbackSkeleton(MoistureSensorCallback _mainObj, String _callbackAddress, int _objectId) throws Exception {
20                 callbackAddress = _callbackAddress;
21                 mainObj = _mainObj;
22                 objectId = _objectId;
23         }
24
25         public void newReadingAvailable(int sensorId, float moisture, long timeStampOfLastReading) {
26                 mainObj.newReadingAvailable(sensorId, moisture, timeStampOfLastReading);
27         }
28
29         public void ___newReadingAvailable(IoTRMIObject rmiObj) {
30                 Object[] paramObj = rmiObj.getMethodParams(new Class<?>[] { int.class, float.class, long.class }, 
31                 new Class<?>[] { null, null, null });
32                 newReadingAvailable((int) paramObj[0], (float) paramObj[1], (long) paramObj[2]);
33         }
34
35         public void invokeMethod(IoTRMIObject rmiObj) throws IOException {
36                 int methodId = rmiObj.getMethodId();
37                 switch (methodId) {
38                         case 0: ___newReadingAvailable(rmiObj); break;
39                         default: 
40                         throw new Error("Method Id " + methodId + " not recognized!");
41                 }
42         }
43
44 }