Override StatusHints.equals
Bug: 16979621
Change-Id: I858a4718a8815be18214400d3bc1d9054b99434e
diff --git a/telecomm/java/android/telecomm/StatusHints.java b/telecomm/java/android/telecomm/StatusHints.java
index 50f525a..496a38c 100644
--- a/telecomm/java/android/telecomm/StatusHints.java
+++ b/telecomm/java/android/telecomm/StatusHints.java
@@ -27,6 +27,7 @@
import android.util.DisplayMetrics;
import java.util.MissingResourceException;
+import java.util.Objects;
/**
* Contains status label and icon displayed in the in-call UI.
@@ -127,4 +128,22 @@
return null;
}
}
+
+ @Override
+ public boolean equals(Object other) {
+ if (other != null && other instanceof StatusHints) {
+ StatusHints otherHints = (StatusHints) other;
+ return Objects.equals(otherHints.getComponentName(), getComponentName()) &&
+ Objects.equals(otherHints.getLabel(), getLabel()) &&
+ otherHints.getIconId() == getIconId() &&
+ Objects.equals(otherHints.getExtras(), getExtras());
+ }
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hashCode(mComponentName) + Objects.hashCode(mLabel) + mIconId +
+ Objects.hashCode(mExtras);
+ }
}