diff options
author | Max Cai <maxtroy@google.com> | 2014-08-21 17:39:00 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-08-21 17:39:00 +0000 |
commit | c6d612ac7b18ba758c9067136c1217589aa5796f (patch) | |
tree | a21d25a6db12a86353e7bc88a5e3a43c3e0ecccd /java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java | |
parent | b172d66772c921589a1338f00b34ff5bc3bcc225 (diff) | |
parent | ecb2c88b22ad898c088a81870f58adbf4e16d126 (diff) | |
download | external_protobuf-c6d612ac7b18ba758c9067136c1217589aa5796f.zip external_protobuf-c6d612ac7b18ba758c9067136c1217589aa5796f.tar.gz external_protobuf-c6d612ac7b18ba758c9067136c1217589aa5796f.tar.bz2 |
am ecb2c88b: am 55ef21bc: am a88808d4: Merge "Fix access around unknownFieldData."
* commit 'ecb2c88b22ad898c088a81870f58adbf4e16d126':
Fix access around unknownFieldData.
Diffstat (limited to 'java/src/main/java/com/google/protobuf/nano/ExtendableMessageNano.java')
-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()); + } } |