public interface TestClassInterface { public short getShort(short in); public Enum handleEnum(Enum en); public Enum[] handleEnumArray(Enum en[]); public List handleEnumList(List en); public Enum handleEnumComplex(Enum en, int i, char c); public Enum[] handleEnumComplex2(Enum en[], int in, char c); public Enum[] handleEnumTwo(Enum en1[], Enum en2[]); public Struct handleStruct(Struct str); public Struct[] handleStructArray(Struct str[]); public List handleStructList(List str); public Struct handleStructComplex(int in, char c, Struct str); public List handleStructTwo(List str1, List str2); public List handleStructThree(List str1, List str2, List str3); public List handleStructComplex2(int in, char c, Struct str[]); public Enum[] handleEnumStruct(Enum en[], List str, char c); public void registerCallback(CallBackInterface _cb); public void registerCallbackArray(CallBackInterface _cb[]); public void registerCallbackList(List _cb); public void registerCallbackComplex(int in, List _cb, double db); public int callBack(); public Enum[] handleCallbackEnum(Enum en[], char c, List _cb); public Enum[] handleAll(Enum en[], List str, char c, List _cb); public Enum[] handleAllTwo(Enum en1[], Enum en2[], List str1, List str2, char c, List _cb1, List _cb2); public Enum[] handleEnumThree(Enum en1[], Enum en2[], List str1, List str2); capability EnumsStructs { description = "All the set methods"; method = "handleEnum(Enum en)"; method = "handleEnumArray(Enum en[])"; method = "handleEnumList(List en)"; method = "handleEnumComplex(Enum en, int i, char c)"; method = "handleEnumComplex2(Enum en[], int in, char c)"; method = "handleEnumTwo(Enum en1[], Enum en2[])"; method = "handleEnumThree(Enum en1[], Enum en2[], List str1, List str2)"; method = "handleStruct(Struct str)"; method = "handleStructArray(Struct str[])"; method = "handleStructList(List str)"; method = "handleStructComplex(int in, char c, Struct str)"; method = "handleStructComplex2(int in, char c, Struct str[])"; method = "handleStructTwo(List str1, List str2)"; method = "handleStructThree(List str1, List str2, List str3)"; method = "handleEnumStruct(Enum en[], List str, char c)"; method = "handleCallbackEnum(Enum en[], char c, List _cb)"; method = "handleAll(Enum en[], List str, char c, List _cb)"; method = "handleAllTwo(Enum en1[], Enum en2[], List str1, List str2, char c, List _cb1, List _cb2)"; } capability Callbacks { description = "All the set-and-get methods"; method = "getShort(short in)"; method = "registerCallback(CallBackInterface _cb)"; method = "registerCallbackArray(CallBackInterface _cb[])"; method = "registerCallbackList(List _cb)"; method = "registerCallbackComplex(int in, List _cb, double db)"; method = "callBack()"; } enum Enum { APPLE, ORANGE, GRAPE } struct Struct { string name; float value; int year; } }