X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;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());
}
}