From 14b1aa4bf4b88e80f9cce4ec14d0950727df4a5f Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Fri, 18 Jan 2013 11:01:30 +0100 Subject: [PATCH] Remove possibility to create new posts from post provider interface. --- src/main/java/net/pterodactylus/sone/core/Core.java | 20 ++++---------------- .../net/pterodactylus/sone/core/PostProvider.java | 9 ++------- .../pterodactylus/sone/fcp/AbstractSoneCommand.java | 2 +- .../net/pterodactylus/sone/text/SoneTextParser.java | 2 +- .../net/pterodactylus/sone/web/MarkAsKnownPage.java | 2 +- .../java/net/pterodactylus/sone/web/SearchPage.java | 2 +- .../net/pterodactylus/sone/web/ViewPostPage.java | 2 +- .../sone/web/ajax/DeletePostAjaxPage.java | 2 +- .../pterodactylus/sone/web/ajax/GetPostAjaxPage.java | 2 +- .../sone/web/ajax/GetTimesAjaxPage.java | 2 +- .../sone/web/ajax/MarkAsKnownAjaxPage.java | 2 +- 11 files changed, 15 insertions(+), 32 deletions(-) diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java index a51247e..1ebdcc8 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -522,24 +522,12 @@ public class Core extends AbstractService implements SoneProvider, PostProvider } /** - * Returns the post with the given ID, optionally creating a new post. - * - * @param postId - * The ID of the post to get - * @param create - * {@code true} it create a new post if no post with the given ID - * exists, {@code false} to return {@code null} - * @return The post, or {@code null} if there is no such post + * {@inheritDoc} */ @Override - public Post getPost(String postId, boolean create) { + public Post getPost(String postId) { synchronized (posts) { - Post post = posts.get(postId); - if ((post == null) && create) { - post = new PostImpl(postId); - posts.put(postId, post); - } - return post; + return posts.get(postId); } } @@ -677,7 +665,7 @@ public class Core extends AbstractService implements SoneProvider, PostProvider Set posts = new HashSet(); synchronized (bookmarkedPosts) { for (String bookmarkedPostId : bookmarkedPosts) { - Post post = getPost(bookmarkedPostId, false); + Post post = getPost(bookmarkedPostId); if (post != null) { posts.add(post); } diff --git a/src/main/java/net/pterodactylus/sone/core/PostProvider.java b/src/main/java/net/pterodactylus/sone/core/PostProvider.java index c73ad65..e7167cd 100644 --- a/src/main/java/net/pterodactylus/sone/core/PostProvider.java +++ b/src/main/java/net/pterodactylus/sone/core/PostProvider.java @@ -27,17 +27,12 @@ import net.pterodactylus.sone.data.Post; public interface PostProvider { /** - * Returns the post with the given ID, if it exists. If it does not exist - * and {@code create} is {@code false}, {@code null} is returned; otherwise, - * a new post with the given ID is created and returned. + * Returns the post with the given ID. * * @param postId * The ID of the post to return - * @param create - * {@code true} to create a new post if no post with the given ID - * exists, {@code false} to return {@code null} instead * @return The post with the given ID, or {@code null} */ - public Post getPost(String postId, boolean create); + public Post getPost(String postId); } diff --git a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java index a483b01..b9ff03c 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java @@ -185,7 +185,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { protected Post getPost(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { try { String postId = simpleFieldSet.getString(parameterName); - Post post = core.getPost(postId, false); + Post post = core.getPost(postId); if (post == null) { throw new FcpException("Could not load post from “" + postId + "”."); } diff --git a/src/main/java/net/pterodactylus/sone/text/SoneTextParser.java b/src/main/java/net/pterodactylus/sone/text/SoneTextParser.java index 5c59912..a093e46 100644 --- a/src/main/java/net/pterodactylus/sone/text/SoneTextParser.java +++ b/src/main/java/net/pterodactylus/sone/text/SoneTextParser.java @@ -258,7 +258,7 @@ public class SoneTextParser implements Parser { if (linkType == LinkType.POST) { if (line.length() >= (7 + 36)) { String postId = line.substring(7, 43); - Post post = postProvider.getPost(postId, false); + Post post = postProvider.getPost(postId); if ((post != null) && (post.getSone() != null)) { parts.add(new PostPart(post)); } else { diff --git a/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java b/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java index d552b91..fe50509 100644 --- a/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java +++ b/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java @@ -65,7 +65,7 @@ public class MarkAsKnownPage extends SoneTemplatePage { for (StringTokenizer idTokenizer = new StringTokenizer(ids); idTokenizer.hasMoreTokens();) { String id = idTokenizer.nextToken(); if (type.equals("post")) { - Post post = webInterface.getCore().getPost(id, false); + Post post = webInterface.getCore().getPost(id); if (post == null) { continue; } diff --git a/src/main/java/net/pterodactylus/sone/web/SearchPage.java b/src/main/java/net/pterodactylus/sone/web/SearchPage.java index 1bca8cd..7352bab 100644 --- a/src/main/java/net/pterodactylus/sone/web/SearchPage.java +++ b/src/main/java/net/pterodactylus/sone/web/SearchPage.java @@ -322,7 +322,7 @@ public class SearchPage extends SoneTemplatePage { */ private String getPostId(String phrase) { String postId = phrase.startsWith("post://") ? phrase.substring(7) : phrase; - return (webInterface.getCore().getPost(postId, false) != null) ? postId : null; + return (webInterface.getCore().getPost(postId) != null) ? postId : null; } /** diff --git a/src/main/java/net/pterodactylus/sone/web/ViewPostPage.java b/src/main/java/net/pterodactylus/sone/web/ViewPostPage.java index aaf013d..ca78d99 100644 --- a/src/main/java/net/pterodactylus/sone/web/ViewPostPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ViewPostPage.java @@ -54,7 +54,7 @@ public class ViewPostPage extends SoneTemplatePage { @Override protected String getPageTitle(FreenetRequest request) { String postId = request.getHttpRequest().getParam("post"); - Post post = webInterface.getCore().getPost(postId, false); + Post post = webInterface.getCore().getPost(postId); String title = ""; if ((post != null) && (post.getSone() != null)) { title = post.getText().substring(0, Math.min(20, post.getText().length())) + "…"; diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/DeletePostAjaxPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/DeletePostAjaxPage.java index a8c36d5..3beb85d 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/DeletePostAjaxPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/DeletePostAjaxPage.java @@ -49,7 +49,7 @@ public class DeletePostAjaxPage extends JsonPage { @Override protected JsonObject createJsonObject(FreenetRequest request) { String postId = request.getHttpRequest().getParam("post"); - Post post = webInterface.getCore().getPost(postId, false); + Post post = webInterface.getCore().getPost(postId); if ((post == null) || (post.getSone() == null)) { return createErrorJsonObject("invalid-post-id"); } diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/GetPostAjaxPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/GetPostAjaxPage.java index ae813ee..0c2311e 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/GetPostAjaxPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/GetPostAjaxPage.java @@ -59,7 +59,7 @@ public class GetPostAjaxPage extends JsonPage { @Override protected JsonObject createJsonObject(FreenetRequest request) { String postId = request.getHttpRequest().getParam("post"); - Post post = webInterface.getCore().getPost(postId, false); + Post post = webInterface.getCore().getPost(postId); if (post == null) { return createErrorJsonObject("invalid-post-id"); } diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/GetTimesAjaxPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/GetTimesAjaxPage.java index a7f02c9..03bf8c5 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/GetTimesAjaxPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/GetTimesAjaxPage.java @@ -58,7 +58,7 @@ public class GetTimesAjaxPage extends JsonPage { if (allIds.length() > 0) { String[] ids = allIds.split(","); for (String id : ids) { - Post post = webInterface.getCore().getPost(id, false); + Post post = webInterface.getCore().getPost(id); if (post == null) { continue; } diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/MarkAsKnownAjaxPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/MarkAsKnownAjaxPage.java index a193d75..18450b1 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/MarkAsKnownAjaxPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/MarkAsKnownAjaxPage.java @@ -57,7 +57,7 @@ public class MarkAsKnownAjaxPage extends JsonPage { Core core = webInterface.getCore(); for (String id : ids) { if (type.equals("post")) { - Post post = core.getPost(id, false); + Post post = core.getPost(id); if (post == null) { continue; } -- 2.7.4