lumis.portal.socialnetwork.relationship
Interface IRelationshipManager

Package class diagram package IRelationshipManager
All Known Implementing Classes:
RelationshipManager

public interface IRelationshipManager

Provides operations on the relationship framework.

Since:
7.0.0

Method Summary
 String addNode(String type, String objectId)
          Adds a new relatable node.
 String addRelationship(IRelatable source, IRelatable target, IRelationshipType relationshipType)
          Adds a new relationship between the source and target nodes.
 String addRelationshipType(String id, String name, String reverseName, Set<String> sourceTypes, Set<String> targetTypes, boolean bidirectional)
          Adds a new type of relationship.
 void deleteNode(String id)
          Removes a node.
 void deleteRelationship(String id)
          Removes a relationship.
 void deleteRelationshipType(String id)
          Removes a type of relationship.
 IRelatable getNode(String id)
          Gets the relatable node.
 IRelatable getNode(String type, String objectId, boolean createNode)
          Gets the relatable node or creates a new node with the values in type and objectId params if the param createNode is equal to true.
 IRelationship getRelationship(String id)
          Gets the relationship.
 IRelationshipType getRelationshipType(String id)
          Gets the type of relationship.
 Set<IRelatable> listRelationships(IRelatable firstObject, IRelatable secondObject, IRelationshipType relationshipType)
          Lists all relatable nodes that contains a relationship with firstObject and secondObject.
 Set<IRelationship> listRelationships(IRelatable source, IRelationshipType relationshipType)
          Lists all relationships where the param source is the source and where the param source is the target if the relationship is bidirectional.
 void updateRelationshipType(IRelationshipType relationshipType)
          Updates a type of relationship.
 

Method Detail

addNode

String addNode(String type,
               String objectId)
               throws PortalObjectAlreadyExistsException
Adds a new relatable node.

Parameters:
type - of node.
objectId - identify some kind of object.
Returns:
the identify of node created.
Throws:
PortalObjectAlreadyExistsException - if exist some node with the same type and objectId.
Since:
7.0.0

addRelationship

String addRelationship(IRelatable source,
                       IRelatable target,
                       IRelationshipType relationshipType)
                       throws PortalException
Adds a new relationship between the source and target nodes.

Parameters:
source - relatable source.
target - relatable target.
relationshipType - a kind of relationship.
Returns:
the identify of relationship created.
Throws:
PortalException
Since:
7.0.0

addRelationshipType

String addRelationshipType(String id,
                           String name,
                           String reverseName,
                           Set<String> sourceTypes,
                           Set<String> targetTypes,
                           boolean bidirectional)
                           throws PortalException
Adds a new type of relationship.

Parameters:
id - identifies the type of relationship.
name - display name to source.
reverseName - display name to target.
sourceTypes - set that contains names to type of source.
targetTypes - set that contains names to type of target.
bidirectional - true or false if the relationship is bidirectional.
Returns:
the identify of relationshipType created.
Throws:
PortalException
Since:
7.0.0

deleteNode

void deleteNode(String id)
                throws PortalObjectNotFoundException
Removes a node.

Parameters:
id - identifies the node.
Throws:
PortalObjectNotFoundException - if the node was not found.
Since:
7.0.0

deleteRelationship

void deleteRelationship(String id)
                        throws PortalObjectNotFoundException
Removes a relationship.

Parameters:
id - identifies the relationship.
Throws:
PortalObjectNotFoundException - if the relationship was not found.
Since:
7.0.0

deleteRelationshipType

void deleteRelationshipType(String id)
                            throws PortalObjectNotFoundException
Removes a type of relationship.

Parameters:
id - identifies the type of relationship.
Throws:
PortalObjectNotFoundException - if the type of relationship was not found.
Since:
7.0.0

getNode

IRelatable getNode(String id)
                   throws PortalException
Gets the relatable node.

Parameters:
id - identifies the node.
Returns:
a IRelatable that contains the identity equals the value passed in id param.
Throws:
PortalException
Since:
7.0.0

getNode

IRelatable getNode(String type,
                   String objectId,
                   boolean createNode)
                   throws PortalException
Gets the relatable node or creates a new node with the values in type and objectId params if the param createNode is equal to true.

Parameters:
type - of node.
objectId - identify some kind of object.
createNode - true or false.
Returns:
a new node or a node existing.
Throws:
PortalException
Since:
7.0.0

getRelationship

IRelationship getRelationship(String id)
                              throws PortalException
Gets the relationship.

Parameters:
id - identifies the relationship.
Returns:
a IRelationship that contains the identity equals the value passed in id param.
Throws:
PortalException
Since:
7.0.0

getRelationshipType

IRelationshipType getRelationshipType(String id)
                                      throws PortalObjectNotFoundException
Gets the type of relationship.

Parameters:
id - identifies the type of relationship.
Returns:
a IRelationshipType that contains the identity equals the value passed in id param.
Throws:
PortalObjectNotFoundException - if the type of relationship was not found.
Since:
7.0.0

updateRelationshipType

void updateRelationshipType(IRelationshipType relationshipType)
                            throws PortalObjectNotFoundException
Updates a type of relationship.

Parameters:
relationshipType - new relationship object with the values updated.
Throws:
PortalObjectNotFoundException - if the type of relationship was not found.
Since:
7.0.0

listRelationships

Set<IRelationship> listRelationships(IRelatable source,
                                     IRelationshipType relationshipType)
                                     throws PortalException
Lists all relationships where the param source is the source and where the param source is the target if the relationship is bidirectional.

Parameters:
source - IRelatable source.
relationshipType - IRelationship.
Returns:
a Set.
Throws:
PortalException
Since:
7.0.0

listRelationships

Set<IRelatable> listRelationships(IRelatable firstObject,
                                  IRelatable secondObject,
                                  IRelationshipType relationshipType)
                                  throws PortalException
Lists all relatable nodes that contains a relationship with firstObject and secondObject.

Parameters:
firstObject - IRelatable source.
secondObject - IRelatable source.
relationshipType - a kind of relationship.
Returns:
a list that contains relatable nodes.
Throws:
PortalException
Since:
7.0.0


Lumisportal  7.0.0.121130 - Copyright © 2006–2012 Lumis EIP Tecnologia da Informação LTDA. All Rights Reserved.