X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=iotjava%2Fiotrmi%2FJava%2Fbasics%2FTestClass.java;h=6e9aea4cb56f3473417bfdb9b08cf56eed95bbef;hb=8e565033fd19c4696f67862ade27f0ebbacf5682;hp=616606d573adc6dc4764ec53cd22496e15060fbd;hpb=f4d0e8746bf8895c2f644b8c1b3ef4df6e23547d;p=iot2.git diff --git a/iotjava/iotrmi/Java/basics/TestClass.java b/iotjava/iotrmi/Java/basics/TestClass.java index 616606d..6e9aea4 100644 --- a/iotjava/iotrmi/Java/basics/TestClass.java +++ b/iotjava/iotrmi/Java/basics/TestClass.java @@ -1,6 +1,7 @@ import java.util.Set; import java.util.List; import java.util.ArrayList; +import java.util.Arrays; public class TestClass implements TestClassInterface { @@ -10,7 +11,7 @@ public class TestClass implements TestClassInterface { private int intA; private float floatB; private String stringC; - private List cblist; + private List cblist; /** * Constructors @@ -20,6 +21,7 @@ public class TestClass implements TestClassInterface { intA = 1; floatB = 2; stringC = "345"; + cblist = new ArrayList(); } @@ -28,33 +30,62 @@ public class TestClass implements TestClassInterface { intA = _int; floatB = _float; stringC = _string; + cblist = new ArrayList(); } + + public int callBack() { + + int sum = 0; + System.out.println("Callback called! cblist: " + cblist.size()); + for (CallBackInterfaceWithCallBack cb : cblist) { + sum = sum + cb.printInt(); + //cb.needCallback(this); + TestClass tci = new TestClass(); + cb.needCallback(this); + cb.needCallback(tci); + System.out.println("\n\nInside the loop! Sum is now: " + sum + "\n\n"); + } + System.out.println("Executed callback of callback! Returning value: " + sum + "\n\n"); + return sum; + } // Callback - public void registerCallback(CallBackInterface _cb) { + //public void registerCallback(CallBackInterface _cb) { + public void registerCallback(CallBackInterfaceWithCallBack _cb) { - cblist.add(cb); - System.out.println("Registering callback object!"); + cblist.add(_cb); + System.out.println("Registering callback object! Items: " + cblist.size()); } - /*public void registerCallback(CallBackInterface[] _cb) { + public void registerCallbackArray(CallBackInterfaceWithCallBack _cb[]) { - for (CallBackInterface cb : _cb) { + for (CallBackInterfaceWithCallBack cb : _cb) { cblist.add(cb); - System.out.println("Registering callback object!"); + System.out.println("Registering callback objects in array!"); } - }*/ + } - public int callBack() { + public void registerCallbackList(List _cb) { - int sum = 0; - for (CallBackInterface cb : cblist) { - sum = sum + cb.printInt(); + for (CallBackInterfaceWithCallBack cb : _cb) { + cblist.add(cb); + System.out.println("Registering callback objects in list!"); } - return sum; + } + + + public void registerCallbackComplex(int in, List _cb, double db) { + + for (CallBackInterfaceWithCallBack cb : _cb) { + cblist.add(cb); + System.out.println("Registering callback objects in list!"); + } + + System.out.println("Integer: " + in); + System.out.println("Double: " + db); } @@ -212,6 +243,264 @@ public class TestClass implements TestClassInterface { } + // Enum + public Enum handleEnum(Enum en) { + + System.out.println("Enum: " + en); + + return en; + } + + + public Enum[] handleEnumArray(Enum[] en) { + + for (Enum e : en) { + System.out.println("Enum: " + e); + } + + return en; + } + + + public List handleEnumList(List en) { + + for (Enum e : en) { + System.out.println("Enum: " + e); + } + + return en; + } + + + public Enum handleEnumComplex(Enum en, int i, char c) { + + System.out.println("Enum: " + en); + System.out.println("Integer: " + i); + System.out.println("Char: " + c); + + return en; + } + + + public Enum[] handleEnumComplex2(Enum[] en, int in, char c) { + + for (Enum e : en) { + System.out.println("Enum: " + e); + } + System.out.println("Integer: " + in); + System.out.println("Char: " + c); + + return en; + } + + + public Enum[] handleEnumTwo(Enum en1[], Enum en2[]) { + + for (Enum e : en1) { + System.out.println("Enum1: " + e); + } + for (Enum e : en2) { + System.out.println("Enum2: " + e); + } + + return en1; + } + + + public Enum[] handleEnumThree(Enum en1[], Enum en2[], List str1, List str2) { + + for (Enum e : en1) { + System.out.println("Enum1: " + e); + } + for (Enum e : en2) { + System.out.println("Enum2: " + e); + } + + return en1; + } + + + // Struct + public Struct handleStruct(Struct str) { + + //System.out.println("Name: " + str.name); + //System.out.println("Value: " + str.value); + //System.out.println("Year: " + str.year); + + + //Struct test = new Struct(); + //test.name = "Anonymous"; + //test.value = 1.33f; + //test.year = 2016; + + //str = test; + + return str; + } + + + public Struct[] handleStructArray(Struct str[]) { + + for (Struct st : str) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + Struct test = new Struct(); + test.name = "Anonymous"; + test.value = 1.33f; + test.year = 2016; + + str[0] = test; + + return str; + } + + + public List handleStructList(List str) { + + for (Struct st : str) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + Struct test = new Struct(); + test.name = "Tests"; + test.value = 1.34f; + test.year = 2017; + + str.add(test); + + return str; + } + + + public Struct handleStructComplex(int in, char c, Struct str) { + + System.out.println("Name: " + str.name); + System.out.println("Value: " + str.value); + System.out.println("Year: " + str.year); + + System.out.println("Integer: " + in); + System.out.println("Char: " + c); + + Struct test = new Struct(); + test.name = "Anonymous"; + test.value = 1.33f; + test.year = 2016; + + str = test; + + return str; + } + + + public List handleStructComplex2(int in, char c, Struct str[]) { + + for (Struct st : str) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + System.out.println("Integer: " + in); + System.out.println("Char: " + c); + + return new ArrayList(Arrays.asList(str)); + } + + + public Enum[] handleEnumStruct(Enum en[], List str, char c) { + + for (Struct st : str) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + System.out.println("Char: " + c); + + return en; + } + + + public List handleStructTwo(List str1, List str2) { + + for (Struct st : str1) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + return str1; + } + + + public List handleStructThree(List str1, List str2, List str3) { + + for (Struct st : str1) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + return str2; + } + + + public Enum[] handleAll(Enum en[], List str, char c, List _cb) { + + for (CallBackInterfaceWithCallBack cb : _cb) { + cblist.add(cb); + System.out.println("Registering callback objects in list!"); + } + + for (Struct st : str) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + System.out.println("Char: " + c); + + return en; + } + + + public Enum[] handleCallbackEnum(Enum en[], char c, List _cb) { + + for (CallBackInterfaceWithCallBack cb : _cb) { + cblist.add(cb); + System.out.println("Registering callback objects in list!"); + } + + System.out.println("Char: " + c); + + return en; + } + + + public Enum[] handleAllTwo(Enum en1[], Enum en2[], List str1, List str2, char c, List _cb1, List _cb2) { + + for (CallBackInterfaceWithCallBack cb : _cb1) { + cblist.add(cb); + System.out.println("Registering callback objects in list!"); + } + + for (Struct st : str1) { + System.out.println("Name: " + st.name); + System.out.println("Value: " + st.value); + System.out.println("Year: " + st.year); + } + + System.out.println("Char: " + c); + + return en1; + } + + // Getters public String sumArray(String[] newA) { @@ -235,4 +524,10 @@ public class TestClass implements TestClassInterface { intA = newA; return intA; } + + public static void main(String[] args) { + + TestClass tc = new TestClass(); + System.out.println("Get short: " + tc.getShort((short) 1234)); + } }