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

as method arguments).

Bug: 31438033
Change-Id: I8e29ae8eca2a9ef8a320e37ca0bb79dcfa8a9b9a
diff --git a/CompoundType.cpp b/CompoundType.cpp
index 8a692c1..5c702c2 100644
--- a/CompoundType.cpp
+++ b/CompoundType.cpp
@@ -82,7 +82,9 @@
     }
 }
 
-std::string CompoundType::getJavaType() const {
+std::string CompoundType::getJavaType(
+        std::string *extra, bool /* forInitializer */) const {
+    extra->clear();
     return fullJavaName();
 }
 
@@ -208,6 +210,7 @@
 
 void CompoundType::emitJavaFieldReaderWriter(
         Formatter &out,
+        size_t /* depth */,
         const std::string &blobName,
         const std::string &fieldName,
         const std::string &offset,
@@ -389,7 +392,13 @@
     out << "HwBlob _hidl_blob = parcel.readBuffer();\n\n";
 
     VectorType::EmitJavaFieldReaderWriterForElementType(
-            out, this, "_hidl_blob", "_hidl_vec", "0", true /* isReader */);
+            out,
+            0 /* depth */,
+            this,
+            "_hidl_blob",
+            "_hidl_vec",
+            "0",
+            true /* isReader */);
 
     out << "\nreturn _hidl_vec.toArray(new "
         << localName()
@@ -418,6 +427,7 @@
 
         field->type().emitJavaFieldReaderWriter(
                 out,
+                0 /* depth */,
                 "_hidl_blob",
                 field->name(),
                 "_hidl_offset + " + std::to_string(offset),
@@ -495,7 +505,13 @@
     out << "HwBlob _hidl_blob = new HwBlob(24 /* sizeof(hidl_vec<T>) */);\n";
 
     VectorType::EmitJavaFieldReaderWriterForElementType(
-            out, this, "_hidl_blob", "_hidl_vec", "0", false /* isReader */);
+            out,
+            0 /* depth */,
+            this,
+            "_hidl_blob",
+            "_hidl_vec",
+            "0",
+            false /* isReader */);
 
     out << "\nparcel.writeBuffer(_hidl_blob);\n";
 
@@ -522,6 +538,7 @@
 
         field->type().emitJavaFieldReaderWriter(
                 out,
+                0 /* depth */,
                 "_hidl_blob",
                 field->name(),
                 "_hidl_offset + " + std::to_string(offset),