Adding new policy, Java, and Cpp files for testing/debugging
[iot2.git] / iotjava / iotpolicy / IoTCompiler.java
index 674c98c7559857708fe45212a7850b67a35e4e98..028373b77b8883a43f9b70ee16089ec01bfa7fd1 100644 (file)
@@ -1589,7 +1589,8 @@ public class IoTCompiler {
         * HELPER: writeMethodHelperReturnJavaSkeleton() writes return statement part in skeleton
         */
        private void writeMethodHelperReturnJavaSkeleton(InterfaceDecl intDecl, List<String> methParams,
-                       List<String> methPrmTypes, String method, boolean isCallbackMethod, String callbackType) {
+                       List<String> methPrmTypes, String method, boolean isCallbackMethod, String callbackType,
+                       boolean isStructMethod) {
 
                checkAndWriteEnumTypeJavaSkeleton(methParams, methPrmTypes);
                Map<Integer,String> mapStubParam = null;
@@ -1616,7 +1617,10 @@ public class IoTCompiler {
                                print("paramStruct" + i);
                        } else {
                                String prmType = checkAndGetArray(methPrmTypes.get(i), methParams.get(i));
-                               print("(" + prmType + ") paramObj[offset" + i + "]");
+                               if (isStructMethod)
+                                       print("(" + prmType + ") paramObj[offset" + i + "]");
+                               else
+                                       print("(" + prmType + ") paramObj[" + i + "]");
                        }
                        if (i != methParams.size() - 1)
                                print(", ");
@@ -1684,7 +1688,7 @@ public class IoTCompiler {
                println("Object[] paramObj = rmiObj.getMethodParams(paramCls, paramClsGen);");
                writeStructMembersInitJavaSkeleton(intDecl, methParams, methPrmTypes, method);
                // Write the return value part
-               writeMethodHelperReturnJavaSkeleton(intDecl, methParams, methPrmTypes, method, isCallbackMethod, callbackType);
+               writeMethodHelperReturnJavaSkeleton(intDecl, methParams, methPrmTypes, method, isCallbackMethod, callbackType, true);
        }
 
 
@@ -1726,7 +1730,7 @@ public class IoTCompiler {
                }
                println(" });");
                // Write the return value part
-               writeMethodHelperReturnJavaSkeleton(intDecl, methParams, methPrmTypes, method, isCallbackMethod, callbackType);
+               writeMethodHelperReturnJavaSkeleton(intDecl, methParams, methPrmTypes, method, isCallbackMethod, callbackType, false);
        }
 
 
@@ -1980,10 +1984,10 @@ public class IoTCompiler {
                        println("if (!set" + newObjectId + "Allowed.contains(methodId)) {");
                        println("throw new Error(\"Object with object Id: \" + _objectId + \"  is not allowed to access method: \" + methodId);");
                        println("}");
+                       println("}");
                        println("else {");
                        println("throw new Error(\"Object Id: \" + _objectId + \" not recognized!\");");
                        println("}");
-                       println("}");
                }
        }
 
@@ -3635,7 +3639,8 @@ public class IoTCompiler {
                                        println("vector<int> paramEnumInt" + i + ";");
                                } else {
                                        String methParamComplete = checkAndGetCplusArray(methPrmType, methParams.get(i));
-                                       println(methParamComplete + ";");
+                                       //println(methParamComplete + " = " + generateCplusInitializer(methPrmType) + ";");
+                    println(methParamComplete + ";");
                                }
                        }
                }
@@ -3991,11 +3996,11 @@ public class IoTCompiler {
                        println("cerr << \"Object with object Id: \" << _objectId << \"  is not allowed to access method: \" << methodId << endl;");
                        println("exit(-1);");
                        println("}");
+                       println("}");
                        println("else {");
                        println("cerr << \"Object Id: \" << _objectId << \" not recognized!\" << endl;");
                        println("exit(-1);");
                        println("}");
-                       println("}");
                }
        }