From d6e61f56d4907ddcdf1f136229ee3396de6c3cc2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Thu, 11 Jun 2009 00:40:37 +0200 Subject: [PATCH] Implement GetIdentity message. --- .../pterodactylus/fcp/plugin/WebOfTrustPlugin.java | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/src/net/pterodactylus/fcp/plugin/WebOfTrustPlugin.java b/src/net/pterodactylus/fcp/plugin/WebOfTrustPlugin.java index 233e72e..df6991e 100644 --- a/src/net/pterodactylus/fcp/plugin/WebOfTrustPlugin.java +++ b/src/net/pterodactylus/fcp/plugin/WebOfTrustPlugin.java @@ -133,6 +133,48 @@ public class WebOfTrustPlugin { return ownIdentities; } + /** + * Returns the identity with the given identifier and the trust values + * depending on the given own identity. + * + * @param ownIdentity + * The own identity that is used to calculate trust values + * @param identifier + * The identifier of the identity to get + * @return The request identity + * @throws IOException + * if an I/O error occurs + * @throws FcpException + * if an FCP error occurs + */ + public Identity getIdentity(OwnIdentity ownIdentity, String identifier) throws IOException, FcpException { + Map replies = fcpClient.sendPluginMessage("plugins.WoT.WoT", createParameters("Message", "GetIdentity", "TreeOwner", ownIdentity.getIdentifier(), "Identity", identifier)); + if (!replies.get("Message").equals("Identity")) { + throw new FcpException("WebOfTrust Plugin did not reply with “Identity” message!"); + } + String nickname = replies.get("Nickname"); + String requestUri = replies.get("RequestURI"); + Byte trust = null; + try { + trust = Byte.valueOf(replies.get("Trust")); + } catch (NumberFormatException nfe1) { + /* ignore. */ + } + Integer score = null; + try { + score = Integer.valueOf(replies.get("Score")); + } catch (NumberFormatException nfe1) { + /* ignore. */ + } + Integer rank = null; + try { + rank = Integer.valueOf(replies.get("Rank")); + } catch (NumberFormatException nfe1) { + /* ignore. */ + } + return new Identity(identifier, nickname, requestUri, trust, score, rank); + } + // // PRIVATE METHODS // -- 2.7.4