1 package com.smartdevicelink.proxy;
\r
3 import java.util.Hashtable;
\r
4 import java.util.Iterator;
6 import com.smartdevicelink.proxy.constants.Names;
\r
8 public class RPCMessage extends RPCStruct {
\r
10 public RPCMessage(String functionName) {
\r
11 this(functionName, "request");
\r
14 protected RPCMessage(RPCMessage rpcm) {
\r
18 protected RPCMessage(RPCStruct rpcs) {
\r
20 this.parameters = rpcs.store;
\r
23 public RPCMessage(String functionName, String messageType) {
\r
24 function = new Hashtable();
\r
25 this.messageType = messageType;
\r
26 store.put(messageType, function);
\r
27 parameters = new Hashtable();
\r
28 function.put(Names.parameters, parameters);
\r
29 function.put(Names.function_name, functionName);
\r
32 public RPCMessage(Hashtable hash) {
\r
34 Iterator it = hash.keySet().iterator();
36 while (it.hasNext()) {
37 key = (String)it.next().toString();
38 if (key != Names.bulkData) messageType = key;
40 function = (Hashtable)hash.get(messageType);
\r
41 parameters = (Hashtable)function.get(Names.parameters);
\r
44 protected String messageType;
\r
45 protected Hashtable parameters;
\r
46 protected Hashtable function;
\r
48 public String getFunctionName() {
\r
49 return (String)function.get(Names.function_name);
\r
52 protected void setFunctionName(String functionName) {
\r
53 function.put(Names.function_name, functionName);
\r
56 public String getMessageType() {
\r
60 public void setParameters(String functionName, Object value) {
\r
61 if (value != null) {
\r
62 parameters.put(functionName, value);
\r
64 parameters.remove(functionName);
\r
68 public Object getParameters(String functionName) {
\r
69 return parameters.get(functionName);
\r