lumis.portal.socialnetwork.relationship
Class RelationshipManager

Package class diagram package RelationshipManager
java.lang.Object
  extended by lumis.portal.socialnetwork.relationship.RelationshipManager
All Implemented Interfaces:
IRelationshipManager

public class RelationshipManager
extends Object
implements IRelationshipManager

Relationship manager implementation.

Since:
7.0.0

Constructor Summary
RelationshipManager()
           
 
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 source, IRelatable target, 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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RelationshipManager

public RelationshipManager()
Method Detail

addNode

public String addNode(String type,
                      String objectId)
               throws PortalObjectAlreadyExistsException
Description copied from interface: IRelationshipManager
Adds a new relatable node.

Specified by:
addNode in interface IRelationshipManager
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.

addRelationship

public String addRelationship(IRelatable source,
                              IRelatable target,
                              IRelationshipType relationshipType)
Description copied from interface: IRelationshipManager
Adds a new relationship between the source and target nodes.

Specified by:
addRelationship in interface IRelationshipManager
Parameters:
source - relatable source.
target - relatable target.
relationshipType - a kind of relationship.
Returns:
the identify of relationship created.

addRelationshipType

public String addRelationshipType(String id,
                                  String name,
                                  String reverseName,
                                  Set<String> sourceTypes,
                                  Set<String> targetTypes,
                                  boolean bidirectional)
Description copied from interface: IRelationshipManager
Adds a new type of relationship.

Specified by:
addRelationshipType in interface IRelationshipManager
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.

deleteNode

public void deleteNode(String id)
                throws PortalObjectNotFoundException
Description copied from interface: IRelationshipManager
Removes a node.

Specified by:
deleteNode in interface IRelationshipManager
Parameters:
id - identifies the node.
Throws:
PortalObjectNotFoundException - if the node was not found.

deleteRelationship

public void deleteRelationship(String id)
                        throws PortalObjectNotFoundException
Description copied from interface: IRelationshipManager
Removes a relationship.

Specified by:
deleteRelationship in interface IRelationshipManager
Parameters:
id - identifies the relationship.
Throws:
PortalObjectNotFoundException - if the relationship was not found.

deleteRelationshipType

public void deleteRelationshipType(String id)
                            throws PortalObjectNotFoundException
Description copied from interface: IRelationshipManager
Removes a type of relationship.

Specified by:
deleteRelationshipType in interface IRelationshipManager
Parameters:
id - identifies the type of relationship.
Throws:
PortalObjectNotFoundException - if the type of relationship was not found.

getNode

public IRelatable getNode(String id)
Description copied from interface: IRelationshipManager
Gets the relatable node.

Specified by:
getNode in interface IRelationshipManager
Parameters:
id - identifies the node.
Returns:
a IRelatable that contains the identity equals the value passed in id param.

getNode

public IRelatable getNode(String type,
                          String objectId,
                          boolean createNode)
Description copied from interface: IRelationshipManager
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.

Specified by:
getNode in interface IRelationshipManager
Parameters:
type - of node.
objectId - identify some kind of object.
createNode - true or false.
Returns:
a new node or a node existing.

getRelationship

public IRelationship getRelationship(String id)
Description copied from interface: IRelationshipManager
Gets the relationship.

Specified by:
getRelationship in interface IRelationshipManager
Parameters:
id - identifies the relationship.
Returns:
a IRelationship that contains the identity equals the value passed in id param.

getRelationshipType

public IRelationshipType getRelationshipType(String id)
                                      throws PortalObjectNotFoundException
Description copied from interface: IRelationshipManager
Gets the type of relationship.

Specified by:
getRelationshipType in interface IRelationshipManager
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.

listRelationships

public Set<IRelationship> listRelationships(IRelatable source,
                                            IRelationshipType relationshipType)
Description copied from interface: IRelationshipManager
Lists all relationships where the param source is the source and where the param source is the target if the relationship is bidirectional.

Specified by:
listRelationships in interface IRelationshipManager
Parameters:
source - IRelatable source.
relationshipType - IRelationship.
Returns:
a Set.

listRelationships

public Set<IRelatable> listRelationships(IRelatable source,
                                         IRelatable target,
                                         IRelationshipType relationshipType)
Description copied from interface: IRelationshipManager
Lists all relatable nodes that contains a relationship with firstObject and secondObject.

Specified by:
listRelationships in interface IRelationshipManager
Parameters:
source - IRelatable source.
target - IRelatable source.
relationshipType - a kind of relationship.
Returns:
a list that contains relatable nodes.

updateRelationshipType

public void updateRelationshipType(IRelationshipType relationshipType)
                            throws PortalObjectNotFoundException
Description copied from interface: IRelationshipManager
Updates a type of relationship.

Specified by:
updateRelationshipType in interface IRelationshipManager
Parameters:
relationshipType - new relationship object with the values updated.
Throws:
PortalObjectNotFoundException - if the type of relationship was not found.


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