diff --git a/src/main/java/com/google/api/generator/gapic/model/ResourceReference.java b/src/main/java/com/google/api/generator/gapic/model/ResourceReference.java index cbd0ff8548..8140a8c231 100644 --- a/src/main/java/com/google/api/generator/gapic/model/ResourceReference.java +++ b/src/main/java/com/google/api/generator/gapic/model/ResourceReference.java @@ -28,6 +28,25 @@ public boolean isOnlyWildcard() { return resourceTypeString().equals(ResourceNameConstants.WILDCARD_PATTERN); } + @Override + public boolean equals(Object o) { + if (!(o instanceof ResourceReference)) { + return false; + } + + ResourceReference other = (ResourceReference) o; + return resourceTypeString().equals(other.resourceTypeString()) + && isChildType() == other.isChildType() + && isOnlyWildcard() == other.isOnlyWildcard(); + } + + @Override + public int hashCode() { + return 17 * resourceTypeString().hashCode() + + (isChildType() ? 1 : 0) * 19 + + (isOnlyWildcard() ? 1 : 0) * 31; + } + public static ResourceReference withType(String resourceTypeString) { return builder().setResourceTypeString(resourceTypeString).setIsChildType(false).build(); }