Add method to get all posts that have a certain Sone as recipient.
[Sone.git] / src / main / java / net / pterodactylus / sone / core / Core.java
index 5a91f79..731fcbd 100644 (file)
@@ -534,7 +534,7 @@ public class Core implements IdentityListener, UpdateListener {
         *
         * @param postId
         *            The ID of the post to get
-        * @return The post, or {@code null} if there is no such post
+        * @return The post with the given ID, or a new post with the given ID
         */
        public Post getPost(String postId) {
                return getPost(postId, true);
@@ -576,6 +576,27 @@ public class Core implements IdentityListener, UpdateListener {
        }
 
        /**
+        * Returns all posts that have the given Sone as recipient.
+        *
+        * @see Post#getRecipient()
+        * @param recipient
+        *            The recipient of the posts
+        * @return All posts that have the given Sone as recipient
+        */
+       public Set<Post> getDirectedPosts(Sone recipient) {
+               Validation.begin().isNotNull("Recipient", recipient).check();
+               Set<Post> directedPosts = new HashSet<Post>();
+               synchronized (posts) {
+                       for (Post post : posts.values()) {
+                               if (recipient.equals(post.getRecipient())) {
+                                       directedPosts.add(post);
+                               }
+                       }
+               }
+               return directedPosts;
+       }
+
+       /**
         * Returns the reply with the given ID. If there is no reply with the given
         * ID yet, a new one is created.
         *
@@ -1719,7 +1740,7 @@ public class Core implements IdentityListener, UpdateListener {
 
                }));
                options.addIntegerOption("PositiveTrust", new DefaultOption<Integer>(75));
-               options.addIntegerOption("NegativeTrust", new DefaultOption<Integer>(-100));
+               options.addIntegerOption("NegativeTrust", new DefaultOption<Integer>(-25));
                options.addStringOption("TrustComment", new DefaultOption<String>("Set from Sone Web Interface"));
                options.addBooleanOption("SoneRescueMode", new DefaultOption<Boolean>(false));
                options.addBooleanOption("ClearOnNextRestart", new DefaultOption<Boolean>(false));