mnpoonia commented on code in PR #7575:
URL: https://github.com/apache/hbase/pull/7575#discussion_r2653256805
##########
hbase-client/src/main/java/org/apache/hadoop/hbase/client/CoprocessorDescriptorBuilder.java:
##########
@@ -111,5 +114,34 @@ public String toString() {
return "class:" + className + ", jarPath:" + jarPath + ", priority:" +
priority
+ ", properties:" + properties;
}
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (!(obj instanceof CoprocessorDescriptor)) {
+ return false;
+ }
+ CoprocessorDescriptor other = (CoprocessorDescriptor) obj;
+ if (
+ priority != other.getPriority() || !Objects.equals(className,
other.getClassName())
+ || !Objects.equals(getJarPath(), other.getJarPath())
+ ) {
+ return false;
+ }
+ return Objects.equals(getProperties(), other.getProperties());
+ }
+
+ @Override
+ public int hashCode() {
+ int result = Objects.hash(className, jarPath, priority);
+ List<Map.Entry<String, String>> entries = new
ArrayList<>(properties.entrySet());
Review Comment:
@Apache9 if you think we should still calculate hash for properties on the
fly and use object hash for others let me know. I think current logic of just
using objects.hash should suffice here after our change in equals logic and
change of properties to navigablemap
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]