Use a unique ID for posts
[Sone.git] / src / main / java / net / pterodactylus / sone / database / memory / MemoryPost.java
index 84f3714..34e90f8 100644 (file)
@@ -19,6 +19,7 @@ package net.pterodactylus.sone.database.memory;
 
 import java.util.UUID;
 
+import net.pterodactylus.sone.data.IdBuilder;
 import net.pterodactylus.sone.data.Post;
 import net.pterodactylus.sone.data.Sone;
 import net.pterodactylus.sone.database.SoneProvider;
@@ -33,8 +34,10 @@ import com.google.common.base.Optional;
  */
 class MemoryPost implements Post {
 
+       private final IdBuilder idBuilder = new IdBuilder();
+
        /** The post database. */
-       private final MemoryPostDatabase postDatabase;
+       private final MemoryDatabase postDatabase;
 
        /** The Sone provider. */
        private final SoneProvider soneProvider;
@@ -72,7 +75,7 @@ class MemoryPost implements Post {
         * @param text
         *            The text of the post
         */
-       public MemoryPost(MemoryPostDatabase postDatabase, SoneProvider soneProvider, String id, String soneId, String recipientId, long time, String text) {
+       public MemoryPost(MemoryDatabase postDatabase, SoneProvider soneProvider, String id, String soneId, String recipientId, long time, String text) {
                this.postDatabase = postDatabase;
                this.soneProvider = soneProvider;
                this.id = UUID.fromString(id);
@@ -91,9 +94,19 @@ class MemoryPost implements Post {
         */
        @Override
        public String getId() {
+               return idBuilder.buildId(soneId, id.toString());
+       }
+
+       @Override
+       public String getInternalId() {
                return id.toString();
        }
 
+       @Override
+       public boolean isLoaded() {
+               return true;
+       }
+
        /**
         * {@inheritDoc}
         */