X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FCore.java;h=450e996b383cd4e501021829cd9d08185581081f;hp=ad1982490353d69da264e53eab52576b927c358d;hb=62ebf3da00001abb841c92128c4fdb57d0795ee2;hpb=7ec5cf4d41166dab589d026256ee995068577ef2 diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java index ad19824..450e996 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -107,11 +107,11 @@ public class Core implements IdentityListener { private Map remoteSones = new HashMap(); /** All new Sones. */ - private Set newSones = new HashSet(); + private Set newSones = new HashSet(); /** All known Sones. */ /* synchronize access on {@link #newSones}. */ - private Set knownSones = new HashSet(); + private Set knownSones = new HashSet(); /** All posts. */ private Map posts = new HashMap(); @@ -380,8 +380,8 @@ public class Core implements IdentityListener { */ public boolean isNewSone(Sone sone) { synchronized (newSones) { - boolean isNew = !knownSones.contains(sone) && newSones.remove(sone); - knownSones.add(sone); + boolean isNew = !knownSones.contains(sone.getId()) && newSones.remove(sone.getId()); + knownSones.add(sone.getId()); return isNew; } } @@ -581,7 +581,7 @@ public class Core implements IdentityListener { sone.setLatestEdition(Numbers.safeParseLong(identity.getProperty("Sone.LatestEdition"), (long) 0)); if (newSone) { synchronized (newSones) { - newSones.add(sone); + newSones.add(sone.getId()); } } remoteSones.put(identity.getId(), sone); @@ -759,18 +759,13 @@ public class Core implements IdentityListener { } /* load friends. */ - Set friends = new HashSet(); + Set friends = new HashSet(); while (true) { String friendId = configuration.getStringValue(sonePrefix + "/Friends/" + friends.size() + "/ID").getValue(null); if (friendId == null) { break; } - Boolean friendLocal = configuration.getBooleanValue(sonePrefix + "/Friends/" + friends.size() + "/Local").getValue(null); - if (friendLocal == null) { - logger.log(Level.WARNING, "Invalid friend found, aborting load!"); - return; - } - friends.add(friendLocal ? getLocalSone(friendId) : getRemoteSone(friendId)); + friends.add(friendId); } /* if we’re still here, Sone was loaded successfully. */ @@ -785,7 +780,7 @@ public class Core implements IdentityListener { sone.setModificationCounter(soneModificationCounter); } synchronized (newSones) { - for (Sone friend : friends) { + for (String friend : friends) { knownSones.add(friend); } } @@ -862,9 +857,8 @@ public class Core implements IdentityListener { /* save friends. */ int friendCounter = 0; - for (Sone friend : sone.getFriends()) { - configuration.getStringValue(sonePrefix + "/Friends/" + friendCounter + "/ID").setValue(friend.getId()); - configuration.getBooleanValue(sonePrefix + "/Friends/" + friendCounter++ + "/Local").setValue(friend.getInsertUri() != null); + for (String friend : sone.getFriends()) { + configuration.getStringValue(sonePrefix + "/Friends/" + friendCounter + "/ID").setValue(friend); } configuration.getStringValue(sonePrefix + "/Friends/" + friendCounter + "/ID").setValue(null); @@ -1046,7 +1040,7 @@ public class Core implements IdentityListener { break; } synchronized (newSones) { - knownSones.add(getRemoteSone(knownSoneId)); + knownSones.add(knownSoneId); } } } @@ -1064,8 +1058,8 @@ public class Core implements IdentityListener { /* save known Sones. */ int soneCounter = 0; synchronized (newSones) { - for (Sone knownSone : knownSones) { - configuration.getStringValue("KnownSone/" + soneCounter++ + "/ID").setValue(knownSone.getId()); + for (String knownSoneId : knownSones) { + configuration.getStringValue("KnownSone/" + soneCounter++ + "/ID").setValue(knownSoneId); } configuration.getStringValue("KnownSone/" + soneCounter + "/ID").setValue(null); }