From: David ‘Bombe’ Roden Date: Wed, 10 Jun 2009 22:40:37 +0000 (+0200) Subject: Implement GetIdentity message. X-Git-Tag: v0.1.1~42 X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=d6e61f56d4907ddcdf1f136229ee3396de6c3cc2;p=jFCPlib.git Implement GetIdentity message. --- 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 //