X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fdemoscenemusic%2Fdata%2FDefaultArtist.java;h=151aeca9f54c7d4d0e9e7827bac14b1d6c90afb2;hb=9eee0f4f619731e5f8b79396d2476090d328be6b;hp=7f99a9c99cd53aec946f92307470000819a04eda;hpb=e3ac92367c0fde656598f388e9026f45c2868c4b;p=demoscenemusic.git diff --git a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultArtist.java b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultArtist.java index 7f99a9c..151aeca 100644 --- a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultArtist.java +++ b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultArtist.java @@ -18,6 +18,7 @@ package net.pterodactylus.demoscenemusic.data; import java.util.Collection; +import java.util.Comparator; /** * Default implementation for an artist data container. @@ -26,6 +27,15 @@ import java.util.Collection; */ public class DefaultArtist extends DefaultBase implements Artist { + /** Comparator that sorts artists by name. */ + public static final Comparator NAME_COMPARATOR = new Comparator() { + + @Override + public int compare(Artist leftArtist, Artist rightArtist) { + return leftArtist.getName().compareToIgnoreCase(rightArtist.getName()); + } + }; + /** * Creates a new artist data container. * @@ -93,4 +103,27 @@ public class DefaultArtist extends DefaultBase implements Artist { return this; } + // + // OBJECT METHODS + // + + /** + * {@inheritDoc} + */ + @Override + public int hashCode() { + return getId().hashCode(); + } + + /** + * {@inheritDoc} + */ + @Override + public boolean equals(Object object) { + if (!(object instanceof Artist)) { + return false; + } + return ((Artist) object).getId().equals(getId()); + } + }