X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2Fimpl%2FSoneImpl.java;h=24792763c471032b345278998095d8ab3ae97cc0;hp=44111aad0748f7282c70500db955528196c1c5ae;hb=90d193f69c4aa12c232f937a9d2b7d5afdda81dd;hpb=f5c7590a5a340597f8127440a20058f65ed0abd1 diff --git a/src/main/java/net/pterodactylus/sone/data/impl/SoneImpl.java b/src/main/java/net/pterodactylus/sone/data/impl/SoneImpl.java index 44111aa..2479276 100644 --- a/src/main/java/net/pterodactylus/sone/data/impl/SoneImpl.java +++ b/src/main/java/net/pterodactylus/sone/data/impl/SoneImpl.java @@ -25,6 +25,7 @@ import java.net.MalformedURLException; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; +import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; @@ -94,7 +95,7 @@ public class SoneImpl implements LocalSone { private volatile boolean known; /** All posts. */ - private final Set posts = new CopyOnWriteArraySet(); + private final Collection posts = new HashSet(); /** All replies. */ private final Set replies = new CopyOnWriteArraySet(); @@ -120,13 +121,14 @@ public class SoneImpl implements LocalSone { * @param local * {@code true} if the Sone is a local Sone, {@code false} otherwise */ - public SoneImpl(Database database, Identity identity, boolean local, long time, Client client) { + public SoneImpl(Database database, Identity identity, boolean local, long time, Client client, Collection posts) { this.database = database; this.id = identity.getId(); this.identity = identity; this.local = local; this.time = time; this.client = client; + this.posts.addAll(posts); } // @@ -368,10 +370,6 @@ public class SoneImpl implements LocalSone { * @return This Sone (for method chaining) */ public Sone setPosts(Collection posts) { - synchronized (this) { - this.posts.clear(); - this.posts.addAll(posts); - } return this; }