Use Sone builder to set the posts of a Sone.
[Sone.git] / src / main / java / net / pterodactylus / sone / database / SoneBuilder.java
1 package net.pterodactylus.sone.database;
2
3 import java.util.Collection;
4
5 import net.pterodactylus.sone.data.Client;
6 import net.pterodactylus.sone.data.Post;
7 import net.pterodactylus.sone.data.Sone;
8 import net.pterodactylus.sone.freenet.wot.Identity;
9
10 /**
11  * Builder for {@link Sone} objects.
12  *
13  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
14  */
15 public interface SoneBuilder {
16
17         SoneBuilder from(Identity identity);
18         SoneBuilder local();
19
20         SoneBuilder lastUpdated(long lastUpdated);
21         SoneBuilder using(Client client);
22
23         SoneBuilder withPosts(Collection<Post> posts);
24
25         Sone build() throws IllegalStateException;
26
27 }