X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2Fimpl%2FPostReplyBuilderImpl.java;h=c553bc37be5a356aefff10bbb8476ac1d59ae81a;hb=658a702c550e15bd3c868ed399621606eeb4ef20;hp=756f28e3db1d43d7ae9cbe09c08ca827b8c3b594;hpb=6b7b300eda315485c9d70ad1f8739bdf11f9bd30;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/data/impl/PostReplyBuilderImpl.java b/src/main/java/net/pterodactylus/sone/data/impl/PostReplyBuilderImpl.java index 756f28e..c553bc3 100644 --- a/src/main/java/net/pterodactylus/sone/data/impl/PostReplyBuilderImpl.java +++ b/src/main/java/net/pterodactylus/sone/data/impl/PostReplyBuilderImpl.java @@ -21,9 +21,10 @@ import static com.google.common.base.Preconditions.checkState; import java.util.UUID; -import net.pterodactylus.sone.data.Post; import net.pterodactylus.sone.data.PostReply; import net.pterodactylus.sone.data.PostReplyBuilder; +import net.pterodactylus.sone.database.PostProvider; +import net.pterodactylus.sone.database.SoneProvider; import org.apache.commons.lang.StringUtils; @@ -33,17 +34,36 @@ import org.apache.commons.lang.StringUtils; * * @author David ‘Bombe’ Roden */ -public class PostReplyBuilderImpl extends AbstractReplyBuilder implements PostReplyBuilder { +public class PostReplyBuilderImpl extends AbstractReplyBuilder implements PostReplyBuilder { - /** The post the created reply refers to. */ - private Post post; + /** The Sone provider. */ + private final SoneProvider soneProvider; + + /** The post provider. */ + private final PostProvider postProvider; + + /** The ID of the post the created reply refers to. */ + private String postId; + + /** + * Creates a new post reply builder. + * + * @param soneProvider + * The Sone provider + * @param postProvider + * The post provider + */ + public PostReplyBuilderImpl(SoneProvider soneProvider, PostProvider postProvider) { + this.soneProvider = soneProvider; + this.postProvider = postProvider; + } /** * {@inheritDoc} */ @Override - public PostReplyBuilder to(Post post) { - this.post = post; + public PostReplyBuilder to(String postId) { + this.postId = postId; return this; } @@ -53,17 +73,12 @@ public class PostReplyBuilderImpl extends AbstractReplyBuilder= 0)), "either current time or custom time must be set"); checkState(!StringUtils.isBlank(text), "text must not be empty"); - checkState(post != null, "post must not be null"); + checkState(postId != null, "post must not be null"); /* create new post reply. */ - PostReplyImpl postReplyImpl = new PostReplyImpl(randomId ? UUID.randomUUID().toString() : id); - postReplyImpl.setSone(sender); - postReplyImpl.setPost(post); - postReplyImpl.setTime(currentTime ? System.currentTimeMillis() : time); - postReplyImpl.setText(text); - return postReplyImpl; + return new PostReplyImpl(soneProvider, postProvider, randomId ? UUID.randomUUID().toString() : id, senderId, currentTime ? System.currentTimeMillis() : time, text, postId); } }