Add methods to set and remove trust for identities.
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 2 Jan 2011 12:47:51 +0000 (13:47 +0100)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 2 Jan 2011 12:47:51 +0000 (13:47 +0100)
src/main/java/net/pterodactylus/sone/freenet/wot/DefaultOwnIdentity.java
src/main/java/net/pterodactylus/sone/freenet/wot/OwnIdentity.java

index f89ddda..3af8b38 100644 (file)
@@ -21,6 +21,8 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 
+import net.pterodactylus.util.validation.Validation;
+
 /**
  * An own identity is an identity that the owner of the node has full control
  * over.
@@ -135,4 +137,22 @@ public class DefaultOwnIdentity extends DefaultIdentity implements OwnIdentity {
                }
        }
 
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       public void setTrust(Identity target, int trustValue, String comment) throws WebOfTrustException {
+               Validation.begin().isNotNull("Trust Target", target).isNotNull("Trust Comment", comment).isLessOrEqual("Trust Value", trustValue, 100).isGreaterOrEqual("Trust Value", trustValue, -100).check();
+               webOfTrustConnector.setTrust(this, target, trustValue, comment);
+       }
+
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       public void removeTrust(Identity target) throws WebOfTrustException {
+               Validation.begin().isNotNull("Trust Target", target).check();
+               webOfTrustConnector.removeTrust(this, target);
+       }
+
 }
index deaf25c..68a10f4 100644 (file)
@@ -108,4 +108,28 @@ public interface OwnIdentity extends Identity {
         */
        public void removeProperty(String name) throws WebOfTrustException;
 
+       /**
+        * Sets the trust for the given target identity.
+        *
+        * @param target
+        *            The target to set the trust for
+        * @param trustValue
+        *            The new trust value (from {@code -100} or {@code 100})
+        * @param comment
+        *            The comment for the trust assignment
+        * @throws WebOfTrustException
+        *             if an error occurs
+        */
+       public void setTrust(Identity target, int trustValue, String comment) throws WebOfTrustException;
+
+       /**
+        * Removes any trust assignment for the given target identity.
+        *
+        * @param target
+        *            The targe to remove the trust assignment for
+        * @throws WebOfTrustException
+        *             if an error occurs
+        */
+       public void removeTrust(Identity target) throws WebOfTrustException;
+
 }