Remove Identified interface
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Wed, 7 Oct 2015 17:19:19 +0000 (19:19 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Wed, 7 Oct 2015 17:19:19 +0000 (19:19 +0200)
src/main/java/net/pterodactylus/sone/data/Album.java
src/main/java/net/pterodactylus/sone/data/Identified.java [deleted file]
src/main/java/net/pterodactylus/sone/data/Image.java
src/main/java/net/pterodactylus/sone/data/Post.java
src/main/java/net/pterodactylus/sone/data/Reply.java
src/main/java/net/pterodactylus/sone/data/Sone.java

index b4c6b0f..3aba779 100644 (file)
@@ -36,7 +36,7 @@ import com.google.common.collect.ImmutableList;
  *
  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
  */
-public interface Album extends Identified, Fingerprintable {
+public interface Album extends Fingerprintable {
 
        /** Compares two {@link Album}s by {@link #getTitle()}. */
        Comparator<Album> TITLE_COMPARATOR = new Comparator<Album>() {
diff --git a/src/main/java/net/pterodactylus/sone/data/Identified.java b/src/main/java/net/pterodactylus/sone/data/Identified.java
deleted file mode 100644 (file)
index 4892479..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Sone - Identified.java - Copyright © 2013 David Roden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-package net.pterodactylus.sone.data;
-
-import javax.annotation.Nonnull;
-
-import com.google.common.base.Function;
-import com.google.common.base.Optional;
-
-/**
- * Interface for all objects that expose an ID.
- *
- * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
- */
-public interface Identified {
-
-       /** Function to extract the ID from an optional. */
-       public static final Function<Optional<? extends Identified>, Optional<String>> GET_ID = new Function<Optional<? extends Identified>, Optional<String>>() {
-
-               @Override
-               @Nonnull
-               public Optional<String> apply(Optional<? extends Identified> identified) {
-                       return (identified == null) ? Optional.<String>absent() : (identified.isPresent() ? Optional.of(identified.get().getId()) : Optional.<String>absent());
-               }
-       };
-
-       /**
-        * Returns the ID of this element.
-        *
-        * @return The ID of this element
-        */
-       public String getId();
-
-}
index f2ef88d..6e8016e 100644 (file)
@@ -22,7 +22,7 @@ package net.pterodactylus.sone.data;
  *
  * @author <a href="mailto:d.roden@xplosion.de">David Roden</a>
  */
-public interface Image extends Identified, Fingerprintable {
+public interface Image extends Fingerprintable {
 
        /**
         * Returns the ID of this image.
index d27d243..099f67e 100644 (file)
@@ -30,7 +30,7 @@ import com.google.common.base.Predicate;
  *
  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
  */
-public interface Post extends Identified {
+public interface Post {
 
        /** Comparator for posts, sorts descending by time. */
        public static final Comparator<Post> TIME_COMPARATOR = new Comparator<Post>() {
index cf50a5c..c6c6101 100644 (file)
@@ -29,7 +29,7 @@ import com.google.common.primitives.Longs;
  *            The type of the reply
  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
  */
-public interface Reply<T extends Reply<T>> extends Identified {
+public interface Reply<T extends Reply<T>> {
 
        /** Comparator that sorts replies ascending by time. */
        Comparator<? super Reply<?>> TIME_COMPARATOR = new Comparator<Reply<?>>() {
index 7acdb7f..441112a 100644 (file)
@@ -48,7 +48,7 @@ import com.google.common.primitives.Ints;
  *
  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
  */
-public interface Sone extends Identified, Fingerprintable, Comparable<Sone> {
+public interface Sone extends Fingerprintable, Comparable<Sone> {
 
        /**
         * Enumeration for the possible states of a {@link Sone}.
@@ -196,6 +196,8 @@ public interface Sone extends Identified, Fingerprintable, Comparable<Sone> {
                }
        };
 
+       String getId();
+       
        /**
         * Returns the identity of this Sone.
         *