X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2FMetadata.java;h=da0aadcd590d172db5d4201143ecea32524d7932;hb=75dec3ceb1a632501c94d2901d9915b4051bab58;hp=91acad4c96e333340d845df1d7e3d38a2f92bf0f;hpb=2daf7a2adb65ea869e85326cff512e0410e1a257;p=sonitus.git diff --git a/src/main/java/net/pterodactylus/sonitus/data/Metadata.java b/src/main/java/net/pterodactylus/sonitus/data/Metadata.java index 91acad4..da0aadc 100644 --- a/src/main/java/net/pterodactylus/sonitus/data/Metadata.java +++ b/src/main/java/net/pterodactylus/sonitus/data/Metadata.java @@ -30,6 +30,9 @@ import com.google.common.base.Optional; */ public class Metadata { + /** Marker for unknown metadata. */ + public static final Metadata UNKNOWN = new Metadata(); + /** The format metadata. */ private final FormatMetadata formatMetadata; @@ -233,6 +236,23 @@ public class Metadata { return String.format("%s%s", title(), comment().isPresent() ? String.format(" (%s)", comment().get()) : ""); } + /** + * Returns whether this metadata object equals the given object if the comments + * of this and the given object are ignored. + * + * @param object + * The object to compare to this one + * @return {@code true} if the given object and this object are equal if the + * comments are ignored, {@code false} otherwise + */ + public boolean equalsIgnoreComment(Object object) { + if (!(object instanceof Metadata)) { + return false; + } + Metadata metadata = (Metadata) object; + return formatMetadata.equals(metadata.formatMetadata) && contentMetadata.equalsIgnoreComment(metadata.contentMetadata); + } + // // OBJECT METHODS //