[Java hidl-gen] Fix multi-dimensional arrays (used within structures, not

as method arguments).

Bug: 31438033
Change-Id: I8e29ae8eca2a9ef8a320e37ca0bb79dcfa8a9b9a
diff --git a/generateJava.cpp b/generateJava.cpp
index e89a577..df239a2 100644
--- a/generateJava.cpp
+++ b/generateJava.cpp
@@ -33,7 +33,9 @@
         const TypedVar *arg,
         bool isReader) const {
     if (isReader) {
-        out << arg->type().getJavaType()
+        std::string extra;
+        out << arg->type().getJavaType(&extra)
+            << extra
             << " "
             << arg->name()
             << " = ";
@@ -270,7 +272,9 @@
         }
 
         if (returnsValue && !needsCallback) {
-            out << method->results()[0]->type().getJavaType();
+            std::string extra;
+            out << method->results()[0]->type().getJavaType(&extra)
+                << extra;
         } else {
             out << "void";
         }
@@ -330,7 +334,9 @@
 
             out << "public ";
             if (returnsValue && !needsCallback) {
-                out << method->results()[0]->type().getJavaType();
+                std::string extra;
+                out << method->results()[0]->type().getJavaType(&extra)
+                    << extra;
             } else {
                 out << "void";
             }
@@ -491,8 +497,10 @@
 
             if (!needsCallback && returnsValue) {
                 const TypedVar *returnArg = method->results()[0];
+                std::string extra;
 
-                out << returnArg->type().getJavaType()
+                out << returnArg->type().getJavaType(&extra)
+                    << extra
                     << " "
                     << returnArg->name()
                     << " = ";