From ef7bc5f24ecedb78122d0a314bb20b7eacea6e43 Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Fri, 8 Apr 2011 16:54:26 +0200 Subject: [PATCH] Add method to return a Post from the simple field set. --- .../sone/fcp/AbstractSoneCommand.java | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java index 4ad6389..ba3bc88 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java @@ -97,6 +97,32 @@ public abstract class AbstractSoneCommand extends AbstractCommand { } /** + * Returns a post whose ID is a parameter in the given simple field set. + * + * @param simpleFieldSet + * The simple field set containing the ID of the post + * @param parameterName + * The name under which the post ID is stored in the simple field + * set + * @return The post + * @throws FcpException + * if there is no post ID stored under the given parameter name, + * or if the post ID is invalid + */ + protected Post getPost(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { + try { + String postId = simpleFieldSet.getString(parameterName); + Post post = core.getPost(postId, false); + if (post == null) { + throw new FcpException("Could not load post from “" + postId + "”."); + } + return post; + } catch (FSParseException fspe1) { + throw new FcpException("Could not post ID from “" + parameterName + "”.", fspe1); + } + } + + /** * Creates a simple field set from the given collection of Sones. * * @param sones -- 2.7.4