Integrating enum and struct in one method call; fixing minor bugs
[iot2.git] / iotjava / iotrmi / Java / basics / TestClassAdvanced_Stub.java
1 import java.util.Arrays;
2 import java.util.List;
3 import java.util.ArrayList;
4 import iotruntime.master.CommunicationHandler;
5
6 public class TestClassAdvanced_Stub {
7
8         public static void main(String[] args) throws Exception {
9
10                 CommunicationHandler comHan = new CommunicationHandler(true);
11                 int numOfPorts = 1;
12                 int[] ports = comHan.getCallbackPorts(numOfPorts);
13
14                 int port = 5010;
15                 String address = "localhost";
16                 //String address = "128.195.136.170";   // dc-9.calit2.uci.edu
17                 int rev = 0;
18
19                 TestClassComplete_Stub tcstub = new TestClassComplete_Stub(port, address, rev, ports);
20 /*              System.out.println("==== ENUM ====");
21                 Enum en = Enum.APPLE;
22                 Enum res = tcstub.handleEnum(en);
23                 System.out.println("Enum member: " + res);
24                 Enum resComp = tcstub.handleEnumComplex(en, 23, 'c');
25                 System.out.println("Enum member: " + resComp);*/
26
27                 Enum[] enArr = { Enum.APPLE, Enum.ORANGE, Enum.APPLE, Enum.GRAPE };
28 /*              Enum[] resArr = tcstub.handleEnumArray(enArr);
29                 System.out.println("Enum members: " + Arrays.toString(resArr));
30                 List<Enum> enArr2 = new ArrayList(Arrays.asList(enArr));
31                 List<Enum> resArr2 = tcstub.handleEnumList(enArr2);
32                 System.out.println("Enum members: " + resArr2.toString());
33                 Enum[] resArr3 = tcstub.handleEnumComplex2(enArr, 23, 'c');
34                 System.out.println("Enum members: " + Arrays.toString(resArr3));*/
35                 
36
37                 System.out.println("==== STRUCT ====");
38                 Struct str = new Struct();
39                 str.name = "Rahmadi";
40                 str.value = 0.123f;
41                 str.year = 2016;
42 /*              Struct strRes = tcstub.handleStruct(str);
43                 System.out.println("Name: " + strRes.name);
44                 System.out.println("Value: " + strRes.value);
45                 System.out.println("Year: " + strRes.year);
46                 Struct strRes2 = tcstub.handleStructComplex(23, 'c', str);
47                 System.out.println("Name: " + strRes2.name);
48                 System.out.println("Value: " + strRes2.value);
49                 System.out.println("Year: " + strRes2.year);*/
50                 Struct str2 = new Struct();
51                 str2.name = "Trimananda";
52                 str2.value = 0.124f;
53                 str2.year = 2017;
54                 Struct[] arrStr = { str, str2 };
55 /*              Struct[] arrRet = tcstub.handleStructArray(arrStr);
56                 for(Struct st : arrRet) {
57                         System.out.println("Name: " + st.name);
58                         System.out.println("Value: " + st.value);
59                         System.out.println("Year: " + st.year);
60                 }*/
61                 List<Struct> stList = new ArrayList(Arrays.asList(arrStr));
62 /*              List<Struct> stRetList = tcstub.handleStructList(stList);
63                 for(Struct st : stRetList) {
64                         System.out.println("Name: " + st.name);
65                         System.out.println("Value: " + st.value);
66                         System.out.println("Year: " + st.year);
67                 }
68                 List<Struct> stRetList2 = tcstub.handleStructComplex2(23, 'c', arrStr);
69                 for(Struct st : stRetList2) {
70                         System.out.println("Name: " + st.name);
71                         System.out.println("Value: " + st.value);
72                         System.out.println("Year: " + st.year);
73                 }
74                 Enum[] resArr3 = tcstub.handleEnumStruct(enArr, stList, 'c');
75                 System.out.println("Enum members: " + Arrays.toString(resArr3));*/
76
77 /*              System.out.println("==== CALLBACKS ====");
78                 CallBackInterface cbSingle = new CallBack(2354);
79                 tcstub.registerCallback(cbSingle);
80                 System.out.println("Return value from callback: " + tcstub.callBack());
81                 CallBackInterface cb1 = new CallBack(23);
82                 CallBackInterface cb2 = new CallBack(33);
83                 CallBackInterface cb3 = new CallBack(43);
84                 CallBackInterface[] cb = { cb1, cb2, cb3 };
85                 tcstub.registerCallbackArray(cb);
86                 System.out.println("Return value from callback: " + tcstub.callBack());*/
87                 List<CallBackInterface> cblist = new ArrayList<CallBackInterface>();
88                 CallBackInterface cb4 = new CallBack(53); cblist.add(cb4);
89                 CallBackInterface cb5 = new CallBack(63); cblist.add(cb5);
90                 CallBackInterface cb6 = new CallBack(73); cblist.add(cb6);
91 //              tcstub.registerCallbackList(cblist);
92 //              System.out.println("Return value from callback: " + tcstub.callBack());
93
94 /*              tcstub.registerCallbackComplex(23, cblist, 0.1234);
95                 System.out.println("Return value from callback: " + tcstub.callBack());*/
96                 Enum[] resArr4 = tcstub.handleAll(enArr, stList, 'c', cblist);
97                 System.out.println("Enum members: " + Arrays.toString(resArr4));
98         }
99 }