summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenigan <rheniga1@MGC12Z921DLVCG.fbpld77.ford.com>2021-01-05 10:41:30 -0500
committerHenigan <rheniga1@MGC12Z921DLVCG.fbpld77.ford.com>2021-01-05 10:41:30 -0500
commitc3a9057cdb0403d97477b32fbeb5f270ed3565e9 (patch)
treeab85fff5889f699783a61da49dce4896691fc0de
parenta104251842e6efe37cacd0e82af7c8c268d0753d (diff)
downloadsdl_android-c3a9057cdb0403d97477b32fbeb5f270ed3565e9.tar.gz
Fix Review feedback (add javadocs)feature/issue_116
-rw-r--r--android/sdl_android/src/androidTest/java/com/smartdevicelink/test/proxy/RPCStructTests.java7
-rw-r--r--base/src/main/java/com/smartdevicelink/proxy/RPCStruct.java17
2 files changed, 21 insertions, 3 deletions
diff --git a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/proxy/RPCStructTests.java b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/proxy/RPCStructTests.java
index 29235b0ec..da539eba7 100644
--- a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/proxy/RPCStructTests.java
+++ b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/proxy/RPCStructTests.java
@@ -206,16 +206,17 @@ public class RPCStructTests extends TestCase {
map.put(key, value);
RPCStruct rpcStruct = new RPCStruct(map);
+ RPCStruct rpcStruct2 = new RPCStruct(map);
Hashtable<String, Object> map2 = new Hashtable<>();
String key2 = "test2";
Integer value2 = 24;
map2.put(key2, value2);
- RPCStruct rpcStruct2 = new RPCStruct(map2);
+ RPCStruct rpcStruct3 = new RPCStruct(map2);
- assertEquals(rpcStruct.hashCode(), 3556536);
- assertNotSame(rpcStruct2.hashCode(), 3556536);
+ assertEquals(rpcStruct.hashCode(), rpcStruct2.hashCode());
+ assertNotSame(rpcStruct2.hashCode(), rpcStruct3.hashCode());
}
public void testEquals() {
diff --git a/base/src/main/java/com/smartdevicelink/proxy/RPCStruct.java b/base/src/main/java/com/smartdevicelink/proxy/RPCStruct.java
index 83c32f37f..c0dd495dd 100644
--- a/base/src/main/java/com/smartdevicelink/proxy/RPCStruct.java
+++ b/base/src/main/java/com/smartdevicelink/proxy/RPCStruct.java
@@ -379,12 +379,18 @@ public class RPCStruct implements Cloneable {
return null;
}
+ /**
+ * Creates a deep copy of the object
+ *
+ * @return deep copy of the object, null if an exception occurred
+ */
@Override
public RPCStruct clone() {
try {
RPCStruct clone = (RPCStruct) super.clone();
clone.setPayloadProtected(protectedPayload);
clone.setBulkData(_bulkData);
+ clone.store = (Hashtable) store.clone();
return clone;
} catch (CloneNotSupportedException e) {
DebugTool.logError("RPCStruct", "Failed to clone: " + e);
@@ -392,6 +398,12 @@ public class RPCStruct implements Cloneable {
}
}
+ /**
+ * Uses the RPCStruct store for RPCStruct objects
+ *
+ * @param obj - The object to compare
+ * @return boolean of whether the objects are the same or not
+ */
@Override
public boolean equals(@Nullable Object obj) {
if (obj == null) {
@@ -413,6 +425,11 @@ public class RPCStruct implements Cloneable {
return store.equals(rpc.store);
}
+ /**
+ * Used to compile hashcode for RPCStruct
+ *
+ * @return Custom hashcode of RPCStruct
+ */
@Override
public int hashCode() {
return store.hashCode();