Extract default Image implementation as base for all future image implementations.
[Sone.git] / src / main / java / net / pterodactylus / sone / data / impl / ImageBuilderImpl.java
index 870b5d7..8135736 100644 (file)
@@ -17,6 +17,9 @@
 
 package net.pterodactylus.sone.data.impl;
 
+import static java.util.UUID.randomUUID;
+
+import net.pterodactylus.sone.data.Album;
 import net.pterodactylus.sone.data.Image;
 import net.pterodactylus.sone.data.ImageImpl;
 import net.pterodactylus.sone.database.ImageBuilder;
@@ -28,10 +31,16 @@ import net.pterodactylus.sone.database.ImageBuilder;
  */
 public class ImageBuilderImpl extends AbstractImageBuilder {
 
+       public ImageBuilderImpl(Album album) {
+               super(album);
+       }
+
        @Override
        public Image build() throws IllegalStateException {
                validate();
-               return randomId ? new ImageImpl() : new ImageImpl(id);
+               String id = randomId ? randomUUID().toString() : this.id;
+               long creationTime = createdNow ? System.currentTimeMillis() : this.creationTime;
+               return new ImageImpl(id, sone, album, key, creationTime, width, height);
        }
 
 }