org.ow2.dragon.api.service.organization
Interface RoleOfPartyManager

All Known Implementing Classes:
RoleOfPartyManagerImpl

@Transactional
public interface RoleOfPartyManager

Author:
ofabre - eBM WebSourcing

Nested Class Summary
static class RoleOfPartyManager.LINK_TYPE
          An enumeration of all available types of links between registry entities
 
Method Summary
 java.lang.String createEndpointRole(java.lang.String partyId, java.lang.String endpointId, java.lang.String type)
          Create a link between a party (person or organization) and an endpoint
 java.lang.String createTechServiceRole(java.lang.String partyId, java.lang.String technicalServiceId, java.lang.String type)
          Create a link between a party (person or organization) and a tech service
 java.util.List<OrgToEndpointTO> getOrgRolesByEndpoint(java.lang.String endpointId, RequestOptionsTO requestOptionsTO)
          Retrieve all links between the given endpoint and an organization
 java.util.List<OrgToTechServiceTO> getOrgRolesByTechService(java.lang.String techServiceId, RequestOptionsTO requestOptionsTO)
          Retrieve all links between the given tech service and an organization
 java.util.List<PersonToEndpointTO> getPersonRolesByEndpoint(java.lang.String endpointId, RequestOptionsTO requestOptionsTO)
          Retrieve all links between the given endpoint and a person
 java.util.List<PersonToTechServiceTO> getPersonRolesByTechService(java.lang.String techServiceId, RequestOptionsTO requestOptionsTO)
          Retrieve all links between the given tech service and a person
 java.lang.String[] getRolesTypes(RoleOfPartyManager.LINK_TYPE linkType, RequestOptionsTO iOptions)
          Get all role types for a particular link type.
 void removeRole(java.lang.String roleId)
          Remove a role from the registry
 

Method Detail

createEndpointRole

java.lang.String createEndpointRole(java.lang.String partyId,
                                    java.lang.String endpointId,
                                    java.lang.String type)
                                    throws OrganizationException
Create a link between a party (person or organization) and an endpoint

Parameters:
partyId - the Party id ( Person id or OrganizationUnit id)
endpointId - the Endpoint id
type - the role of the Party towards the Endpoint
Returns:
the created role id
Throws:
OrganizationException - if an error occurs during role creation

createTechServiceRole

java.lang.String createTechServiceRole(java.lang.String partyId,
                                       java.lang.String technicalServiceId,
                                       java.lang.String type)
                                       throws OrganizationException
Create a link between a party (person or organization) and a tech service

Parameters:
partyId - the Party id ( Person id or OrganizationUnit id)
technicalServiceId - the TechnicalService id
type - the role of the Party towards the TechnicalService
Returns:
the created role id
Throws:
OrganizationException - if an error occurs during role creation

getOrgRolesByEndpoint

@Transactional(readOnly=true)
java.util.List<OrgToEndpointTO> getOrgRolesByEndpoint(java.lang.String endpointId,
                                                                    RequestOptionsTO requestOptionsTO)
                                                      throws OrganizationException
Retrieve all links between the given endpoint and an organization

Parameters:
endpointId - an Endpoint id
requestOptionsTO - sort, pagination and case sensitive parameters, could be null
Returns:
a List of OrgToEndpointTO roles between OrganizationUnits and the given Endpoint
Throws:
OrganizationException - if an error occurs during roles retrieval

getOrgRolesByTechService

@Transactional(readOnly=true)
java.util.List<OrgToTechServiceTO> getOrgRolesByTechService(java.lang.String techServiceId,
                                                                          RequestOptionsTO requestOptionsTO)
                                                            throws OrganizationException
Retrieve all links between the given tech service and an organization

Parameters:
techServiceId - a TechnicalService id
requestOptionsTO - sort, pagination and case sensitive parameters, could be null
Returns:
a List of OrgToTechServiceTO roles between OrganizationUnits and the given TechnicalService
Throws:
OrganizationException - if an error occurs during roles retrieval

getPersonRolesByEndpoint

@Transactional(readOnly=true)
java.util.List<PersonToEndpointTO> getPersonRolesByEndpoint(java.lang.String endpointId,
                                                                          RequestOptionsTO requestOptionsTO)
                                                            throws OrganizationException
Retrieve all links between the given endpoint and a person

Parameters:
endpointId - an Endpoint id
requestOptionsTO - sort, pagination and case sensitive parameters, could be null
Returns:
a List of PersonToEndpointTO roles between Persons and the given Endpoint
Throws:
OrganizationException - if an error occurs during roles retrieval

getPersonRolesByTechService

@Transactional(readOnly=true)
java.util.List<PersonToTechServiceTO> getPersonRolesByTechService(java.lang.String techServiceId,
                                                                                RequestOptionsTO requestOptionsTO)
                                                                  throws OrganizationException
Retrieve all links between the given tech service and a person

Parameters:
techServiceId - a TechnicalService id
requestOptionsTO - sort, pagination and case sensitive parameters, could be null
Returns:
a List of PersonToTechServiceTO roles between Persons and the given TechnicalService
Throws:
OrganizationException - if an error occurs during roles retrieval

getRolesTypes

@Transactional(readOnly=true)
java.lang.String[] getRolesTypes(RoleOfPartyManager.LINK_TYPE linkType,
                                               RequestOptionsTO iOptions)
                                 throws OrganizationException
Get all role types for a particular link type. For exemple, the list of role type for a link between an organization and an endpoint is: "Analyst", "Consumer", "Owner", "Provider".

Parameters:
linkType - a RoleOfPartyManager.LINK_TYPE
iOptions - sort, pagination and case sensitive parameters, could be null
Returns:
all role types as String array for a particular RoleOfPartyManager.LINK_TYPE
Throws:
OrganizationException - if an error occurs during role types retrieval

removeRole

void removeRole(java.lang.String roleId)
                throws OrganizationException
Remove a role from the registry

Parameters:
roleId - a role ( Link) id
Throws:
OrganizationException - if an error occurs during role removal


Copyright © 2008-2009 eBMWebsourcing. All Rights Reserved.