package org.openntf.domino.graph2.builtin.social;
import org.openntf.domino.graph2.annotations.AdjacencyUnique;
import org.openntf.domino.graph2.annotations.IncidenceUnique;
import org.openntf.domino.graph2.builtin.DVertexFrame;
import com.tinkerpop.blueprints.Direction;
import com.tinkerpop.frames.modules.typedgraph.TypeValue;
@TypeValue("Sharer")
public interface Sharer extends DVertexFrame {
@AdjacencyUnique(label = SharedBy.LABEL)
public Iterable<Share> getShares();
@AdjacencyUnique(label = SharedBy.LABEL)
public SharedBy addShare(Share share);
@AdjacencyUnique(label = SharedBy.LABEL)
public void removeShare(Share share);
@IncidenceUnique(label = SharedBy.LABEL)
public Iterable<SharedBy> getSharedBys();
@IncidenceUnique(label = SharedBy.LABEL)
public int countSharedBys();
@IncidenceUnique(label = SharedBy.LABEL)
public void removeSharedBy(SharedBy sharedBy);
@AdjacencyUnique(label = SharedWith.LABEL, direction = Direction.IN)
public Iterable<Share> getSharedWithShares();
@AdjacencyUnique(label = SharedWith.LABEL, direction = Direction.IN)
public SharedWith addSharedWithShare(Share share);
@AdjacencyUnique(label = SharedWith.LABEL, direction = Direction.IN)
public void removeSharedWithShare(Share share);
@IncidenceUnique(label = SharedWith.LABEL, direction = Direction.IN)
public Iterable<SharedWith> getSharedWiths();
@IncidenceUnique(label = SharedWith.LABEL, direction = Direction.IN)
public int countSharedWiths();
@IncidenceUnique(label = SharedWith.LABEL, direction = Direction.IN)
public void removeSharedWith(SharedWith sharedWith);
}