1 #ifndef _CALLBACK_CBSKELETON_HPP__
2 #define _CALLBACK_CBSKELETON_HPP__
5 #include "CallBackInterface.hpp"
6 #include "../IoTRMIObject.hpp"
11 class CallBack_CBSkeleton : public CallBackInterface {
13 CallBack_CBSkeleton(CallBackInterface* _cb, int _objectId);
14 ~CallBack_CBSkeleton();
16 void invokeMethod(IoTRMIObject* rmiObj);
20 void ___printInt(IoTRMIObject* rmiObj);
21 void ___setInt(IoTRMIObject* rmiObj);
23 const static int size = 2;
24 const static string methodSignatures[size];
27 CallBackInterface *cb;
32 const string CallBack_CBSkeleton::methodSignatures[CallBack_CBSkeleton::size] = {
40 CallBack_CBSkeleton::CallBack_CBSkeleton(CallBackInterface* _cb, int _objectId) {
44 cout << "Creating CallBack_Skeleton and waiting!" << endl;
48 CallBack_CBSkeleton::~CallBack_CBSkeleton() {
53 int CallBack_CBSkeleton::printInt() {
55 return cb->printInt();
59 void CallBack_CBSkeleton::___printInt(IoTRMIObject* rmiObj) {
61 string paramCls[] = { };
63 void* paramObj[] = { };
64 rmiObj->getMethodParams(paramCls, numParam, paramObj);
65 int retVal = printInt();
66 void* retObj = &retVal;
67 rmiObj->sendReturnObj(retObj, "int");
71 void CallBack_CBSkeleton::setInt(int _i) {
77 void CallBack_CBSkeleton::___setInt(IoTRMIObject* rmiObj) {
79 string paramCls[] = { "int" };
82 void* paramObj[] = { ¶m1 };
83 rmiObj->getMethodParams(paramCls, numParam, paramObj);
88 void CallBack_CBSkeleton::invokeMethod(IoTRMIObject* rmiObj) {
90 string methodSign = rmiObj->getSignature();
92 if (methodSign.compare("intprintInt()") == 0) {
94 } else if (methodSign.compare("voidsetInt(int)") == 0) {
97 string error = "Signature not recognized: " + string(methodSign);