Add a getEndpointInfo accessor to AIDL-generated RPC proxy classes

Change-Id: I1de957db3eceebc466d8ce23e2a80a0fcf4c917c
diff --git a/tools/aidl/generate_java_rpc.cpp b/tools/aidl/generate_java_rpc.cpp
index 8c94875..5280ff3 100644
--- a/tools/aidl/generate_java_rpc.cpp
+++ b/tools/aidl/generate_java_rpc.cpp
@@ -291,6 +291,7 @@
 
 private:
     void generate_ctor();
+    void generate_get_endpoint_info();
 };
 
 RpcProxyClass::RpcProxyClass(const interface_type* iface, InterfaceType* interfaceType)
@@ -310,6 +311,7 @@
 
     // methods
     generate_ctor();
+    generate_get_endpoint_info();
 }
 
 RpcProxyClass::~RpcProxyClass()
@@ -333,6 +335,19 @@
     ctor->statements->Add(new Assignment(this->endpoint, endpoint));
 }
 
+void
+RpcProxyClass::generate_get_endpoint_info()
+{
+    Method* get = new Method;
+    get->modifiers = PUBLIC;
+    get->returnType = RPC_ENDPOINT_INFO_TYPE;
+    get->name = "getEndpointInfo";
+    get->statements = new StatementBlock;
+    this->elements.push_back(get);
+
+    get->statements->Add(new ReturnStatement(this->endpoint));
+}
+
 // =================================================
 class EventListenerClass : public DispatcherClass
 {