1 package com.smartdevicelink.trace;
\r
3 import java.util.Hashtable;
\r
4 import java.util.Iterator;
\r
5 import java.util.Vector;
\r
7 import com.smartdevicelink.proxy.RPCMessage;
\r
8 import com.smartdevicelink.proxy.RPCStruct;
\r
10 class OpenRPCMessage extends RPCMessage {
\r
11 private OpenRPCMessage() {super("");}
\r
12 public OpenRPCMessage(RPCMessage rpcm) {
\r
16 public OpenRPCMessage(RPCStruct rpcs) {
\r
20 public String msgDump() {
\r
21 StringBuilder pd = new StringBuilder();
\r
23 pd.append(this.getFunctionName() + " " + this.getMessageType());
\r
27 return pd.toString();
\r
30 public void msgDump(StringBuilder pd) {
\r
33 dumpParams(parameters, pd);
\r
40 private void dumpParams(Hashtable ht, StringBuilder pd) {
\r
41 Iterator keySet = ht.keySet().iterator();
\r
44 boolean isFirstParam = true;
\r
46 while (keySet.hasNext()) {
\r
47 key = (String)keySet.next();
\r
50 isFirstParam = false;
\r
55 dumpParamNode(key, obj, pd);
\r
60 private void dumpParamNode(String key, Object obj, StringBuilder pd) {
\r
62 if (obj instanceof Hashtable) {
\r
64 dumpParams((Hashtable)obj, pd);
\r
66 } else if (obj instanceof RPCStruct) {
\r
68 OpenRPCMessage orpcm = new OpenRPCMessage((RPCStruct)obj);
\r
71 } else if (obj instanceof Vector) {
\r
73 Vector vec = (Vector)obj;
\r
74 for (int idx=0;idx < vec.size();idx++) {
\r
78 dumpParamNode(key, vec.elementAt(idx), pd);
\r
82 pd.append("\"" + key + "\" = \"" + obj.toString() + "\"");
\r
85 } // end-class OpenRPCMessage
\r