diff options
author | Max Cai <maxtroy@google.com> | 2014-07-15 15:22:02 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-07-15 15:22:02 +0000 |
commit | 55ef21bca9802af2a9aadd593cc606706b13f8da (patch) | |
tree | 75205c505646c352b6cd21a73869d8f1d0dc3572 /java/src/main | |
parent | f39998c2c5754ec6e2ff5ddfa529a079093b41e9 (diff) | |
parent | a88808d414308b5b567d3afaab56fc338ad80667 (diff) | |
download | external_protobuf-55ef21bca9802af2a9aadd593cc606706b13f8da.zip external_protobuf-55ef21bca9802af2a9aadd593cc606706b13f8da.tar.gz external_protobuf-55ef21bca9802af2a9aadd593cc606706b13f8da.tar.bz2 |
am a88808d4: Merge "Fix access around unknownFieldData."
* commit 'a88808d414308b5b567d3afaab56fc338ad80667':
Fix access around unknownFieldData.
Diffstat (limited to 'java/src/main')
-rw-r--r-- | java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java b/java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java index a0c2731..5984d35 100644 --- a/java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java +++ b/java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java @@ -147,4 +147,29 @@ public abstract class ExtendableMessageNano<M extends ExtendableMessageNano<M>> field.addUnknownField(unknownField); return true; } + + /** + * Returns whether the stored unknown field data in this message is equivalent to that in the + * other message. + * + * @param other the other message. + * @return whether the two sets of unknown field data are equal. + */ + protected final boolean unknownFieldDataEquals(M other) { + if (unknownFieldData == null || unknownFieldData.isEmpty()) { + return other.unknownFieldData == null || other.unknownFieldData.isEmpty(); + } else { + return unknownFieldData.equals(other.unknownFieldData); + } + } + + /** + * Computes the hashcode representing the unknown field data stored in this message. + * + * @return the hashcode for the unknown field data. + */ + protected final int unknownFieldDataHashCode() { + return (unknownFieldData == null || unknownFieldData.isEmpty() + ? 0 : unknownFieldData.hashCode()); + } } |