X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fdemoscenemusic%2Fdata%2FDefaultGroup.java;h=16c1c76d6327ea7b01daedc73fc2bf1f47c3dcb0;hb=9eee0f4f619731e5f8b79396d2476090d328be6b;hp=4495830c59b5f05cbff50beb63539704f5adb911;hpb=cf06b3a6434f85821bca923b80364806b10f73f1;p=demoscenemusic.git diff --git a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultGroup.java b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultGroup.java index 4495830..16c1c76 100644 --- a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultGroup.java +++ b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultGroup.java @@ -17,52 +17,60 @@ package net.pterodactylus.demoscenemusic.data; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.Collection; -import net.pterodactylus.util.database.ObjectCreator; - /** - * TODO + * Default implementation of a group data container. * * @author David ‘Bombe’ Roden */ public class DefaultGroup extends DefaultBase implements Group { - public static final ObjectCreator CREATOR = new GroupCreator(); - + /** + * Creates a new group data container. + * + * @param id + * The ID of the group + */ public DefaultGroup(String id) { super(id); } + // + // GROUP METHODS + // + /** * {@inheritDoc} */ - public String name() { - return value("name", String.class).get(); + @Override + public String getName() { + return getValue("name", String.class).get(); } /** * {@inheritDoc} */ - public Group name(String name) { - value("name", String.class).set(name); + @Override + public Group setName(String name) { + getValue("name", String.class).set(name); return this; } /** * {@inheritDoc} */ - public String url() { - return value("url", String.class).get(); + @Override + public String getUrl() { + return getValue("url", String.class).get(); } /** * {@inheritDoc} */ - public Group url(String url) { - value("url", String.class).set(url); + @Override + public Group setUrl(String url) { + getValue("url", String.class).set(url); return this; } @@ -71,29 +79,40 @@ public class DefaultGroup extends DefaultBase implements Group { */ @Override @SuppressWarnings("unchecked") - public Collection artists() { - return value("artists", Collection.class).get(); + public Collection getArtists() { + return getValue("artists", Collection.class).get(); } /** * {@inheritDoc} */ @Override - public Group artists(Collection artists) { - value("artists", Collection.class).set(artists); + public Group setArtists(Collection artists) { + getValue("artists", Collection.class).set(artists); return this; } - private static class GroupCreator implements ObjectCreator { + // + // OBJECT METHODS + // - /** - * {@inheritDoc} - */ - @Override - public Group createObject(ResultSet resultSet) throws SQLException { - return new DefaultGroup(resultSet.getString("GROUPS.ID")).name(resultSet.getString("GROUPS.NAME")).url(resultSet.getString("GROUPS.URL")); - } + /** + * {@inheritDoc} + */ + @Override + public int hashCode() { + return getId().hashCode(); + } + /** + * {@inheritDoc} + */ + @Override + public boolean equals(Object object) { + if (!(object instanceof Group)) { + return false; + } + return ((Group) object).getId().equals(getId()); } }