X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentity.java;h=2849da91fb3bf6bc8a6a4dbbfc86a620811e5c98;hp=0a9fb935781cd9955d64cfa303bb3faa88dfa3ff;hb=17ed3b897e37c8b16c559b79bfe97d32a7605bfb;hpb=480691a26222e035e53bda56029524e160fdf898 diff --git a/src/main/java/net/pterodactylus/sone/freenet/wot/Identity.java b/src/main/java/net/pterodactylus/sone/freenet/wot/Identity.java index 0a9fb93..2849da9 100644 --- a/src/main/java/net/pterodactylus/sone/freenet/wot/Identity.java +++ b/src/main/java/net/pterodactylus/sone/freenet/wot/Identity.java @@ -17,13 +17,14 @@ package net.pterodactylus.sone.freenet.wot; +import java.util.Collection; import java.util.Map; import java.util.Set; /** * Interface for web of trust identities, defining all functions that can be - * performed on an identity. The identity is the main entry point for identity - * management. + * performed on an identity. An identity is only a container for identity data + * and will not perform any updating in the WebOfTrust plugin itself. * * @author David ‘Bombe’ Roden */ @@ -68,6 +69,30 @@ public interface Identity { public boolean hasContext(String context); /** + * Adds the given context to this identity. + * + * @param context + * The context to add + */ + public void addContext(String context); + + /** + * Sets all contexts of this identity. + * + * @param contexts + * All contexts of the identity + */ + public void setContexts(Collection contexts); + + /** + * Removes the given context from this identity. + * + * @param context + * The context to remove + */ + public void removeContext(String context); + + /** * Returns all properties of this identity. * * @return All properties of this identity @@ -84,6 +109,32 @@ public interface Identity { public String getProperty(String name); /** + * Sets the property with the given name to the given value. + * + * @param name + * The name of the property + * @param value + * The value of the property + */ + public void setProperty(String name, String value); + + /** + * Sets all properties of this identity. + * + * @param properties + * The new properties of this identity + */ + public void setProperties(Map properties); + + /** + * Removes the property with the given name. + * + * @param name + * The name of the property to remove + */ + public void removeProperty(String name); + + /** * Retrieves the trust that this identity receives from the given own * identity. If this identity is not in the own identity’s trust tree, a * {@link Trust} is returned that has all its elements set to {@code null}. @@ -96,4 +147,23 @@ public interface Identity { */ public Trust getTrust(OwnIdentity ownIdentity); + /** + * Sets the trust given by an own identity to this identity. + * + * @param ownIdentity + * The own identity that gave trust to this identity + * @param trust + * The trust given by the given own identity + */ + public void setTrust(OwnIdentity ownIdentity, Trust trust); + + /** + * Removes trust assignment from the given own identity for this identity. + * + * @param ownIdentity + * The own identity that removed the trust assignment for this + * identity + */ + public void removeTrust(OwnIdentity ownIdentity); + }