Class PersonRoleHandler<B>

Type Parameters:
B - class that represents the role

public class PersonRoleHandler<B> extends ReferenceableHandler<B>
PersonRoleHandler provides the exchange of metadata about roles between the repository and the OMAS. The PersonRole entity does not support effectivity dates - but appointments - ie links between person roles and actors do need effectivity dates
  • Constructor Details

    • PersonRoleHandler

      public PersonRoleHandler(OpenMetadataAPIGenericConverter<B> converter, Class<B> beanClass, String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)
      Construct the handler with information needed to work with B objects.
      Parameters:
      converter - specific converter for this bean class
      beanClass - name of bean class that is represented by the generic class B
      serviceName - name of this service
      serverName - name of the local server
      invalidParameterHandler - handler for managing parameter errors
      repositoryHandler - manages calls to the repository services
      repositoryHelper - provides utilities for manipulating the repository services objects
      localServerUserId - userId for this server
      securityVerifier - open metadata security services verifier
      supportedZones - list of zones that the access service is allowed to serve B instances from
      defaultZones - list of zones that the access service should set in all new B instances
      publishZones - list of zones that the access service sets up in published B instances
      auditLog - destination for audit log events
  • Method Details

    • createPersonRole

      public String createPersonRole(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String identifier, String name, String description, String scope, int headCount, boolean headCountLimitSet, int domainIdentifier, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Create the description of a role. This is typically a subtype of PersonRole.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      qualifiedName - unique name for the role - used in other configuration
      identifier - unique identifier for the role - typically from external system
      name - short display name for the role
      description - description of the role
      scope - the scope of the role
      headCount - number of individuals that can be appointed to this role
      headCountLimitSet - should the headcount be added to the entity?
      domainIdentifier - governance domain identifier
      additionalProperties - additional properties for a role
      suppliedTypeName - type name from the caller (enables creation of subtypes)
      extendedProperties - properties for a governance role subtype
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      unique identifier of the new role object
      Throws:
      InvalidParameterException - qualifiedName or userId is null
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • createPersonRoleFromTemplate

      public String createPersonRoleFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String qualifiedName, String identifier, String name, String description, int headCount, boolean headCountLimitSet, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Create a new metadata element to represent a role using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new role.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      templateGUID - unique identifier of the metadata element to copy
      qualifiedName - unique name for the role - used in other configuration
      identifier - unique identifier for the role - typically from external system
      name - short display name for the role
      description - description of the governance role
      headCount - number of individuals that can be appointed to this role
      headCountLimitSet - should the headcount value be set in the entity?
      methodName - calling method
      Returns:
      unique identifier of the new metadata element
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • appointPersonToRole

      public String appointPersonToRole(String userId, String externalSourceGUID, String externalSourceName, String profileGUID, String profileGUIDParameterName, String roleGUID, String roleGUIDParameterName, boolean isPublic, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Link a person role with a Person profile to show that the person has been appointed to role.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      profileGUID - unique identifier of actor profile
      profileGUIDParameterName - parameter name supplying profileGUID
      roleGUID - unique identifier of the person role
      roleGUIDParameterName - parameter name supplying roleGUID
      isPublic - is this appointment visible to others
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      unique identifier of the appointment relationship
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • updateAppointment

      public void updateAppointment(String userId, String externalSourceGUID, String externalSourceName, String appointmentGUID, String appointmentGUIDParameterName, boolean isPublic, Date effectiveFrom, Date effectiveTo, boolean isMergeUpdate, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Update the properties in an appointment relationship.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      appointmentGUID - relationship GUID
      appointmentGUIDParameterName - property for appointmentGUID
      isPublic - is this appointment visible to others
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      isMergeUpdate - should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?
      forLineage - return elements marked with the Memento classification?
      forDuplicateProcessing - do not merge elements marked as duplicates?
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • relievePersonFromRole

      public void relievePersonFromRole(String userId, String externalSourceGUID, String externalSourceName, String profileGUID, String profileGUIDParameterName, String roleGUID, String roleGUIDParameterName, String appointmentGUID, String appointmentGUIDParameterName, Date endDate, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Set an end date on a specific appointment.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      profileGUID - unique identifier of person profile
      profileGUIDParameterName - parameter name supplying profileGUID
      roleGUID - unique identifier of the person role
      roleGUIDParameterName - parameter name supplying roleGUID
      appointmentGUID - unique identifier (guid) of the appointment relationship
      appointmentGUIDParameterName - parameter name supplying appointmentGUID
      endDate - the official end of the appointment - null means effective immediately
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • addTeamLeader

      public void addTeamLeader(String userId, String externalSourceGUID, String externalSourceName, String teamLeaderRoleGUID, String teamLeaderRoleGUIDParameterName, String teamGUID, String teamGUIDParameterName, String position, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Link a team leader role to a team profile.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      teamLeaderRoleGUID - unique identifier of TeamLeader role
      teamLeaderRoleGUIDParameterName - parameter name supplying teamLeaderRoleGUID
      teamGUID - unique identifier of the user identity
      teamGUIDParameterName - parameter name supplying teamGUID
      position - optional name of position
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • removeTeamLeader

      public void removeTeamLeader(String userId, String externalSourceGUID, String externalSourceName, String teamLeaderRoleGUID, String teamLeaderRoleGUIDParameterName, String teamGUID, String teamGUIDParameterName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Unlink a team leader role from a team profile.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      teamLeaderRoleGUID - unique identifier of TeamLeader role
      teamLeaderRoleGUIDParameterName - parameter name supplying teamLeaderRoleGUID
      teamGUID - unique identifier of the user identity
      teamGUIDParameterName - parameter name supplying teamGUID
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • addTeamMember

      public void addTeamMember(String userId, String externalSourceGUID, String externalSourceName, String teamMemberRoleGUID, String teamMemberRoleGUIDParameterName, String teamGUID, String teamGUIDParameterName, String position, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Link a team member role to a team profile.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      teamMemberRoleGUID - unique identifier of TeamMember role
      teamMemberRoleGUIDParameterName - parameter name supplying teamMemberRoleGUID
      teamGUID - unique identifier of the user identity
      teamGUIDParameterName - parameter name supplying teamGUID
      position - optional name of position
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • removeTeamMember

      public void removeTeamMember(String userId, String externalSourceGUID, String externalSourceName, String teamMemberRoleGUID, String teamMemberRoleGUIDParameterName, String teamGUID, String teamGUIDParameterName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Unlink a team member role from a team profile.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      teamMemberRoleGUID - unique identifier of TeamMember role
      teamMemberRoleGUIDParameterName - parameter name supplying teamMemberRoleGUID
      teamGUID - unique identifier of the user identity
      teamGUIDParameterName - parameter name supplying teamGUID
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • addGovernanceResponsibility

      public void addGovernanceResponsibility(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personRoleGUIDParameterName, String governanceResponsibilityGUID, String governanceResponsibilityGUIDParameterName, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Link a role to a governance responsibility.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      personRoleGUID - unique identifier of TeamMember role
      personRoleGUIDParameterName - parameter name supplying personRoleGUID
      governanceResponsibilityGUID - unique identifier of the user identity
      governanceResponsibilityGUIDParameterName - parameter name supplying governanceResponsibilityGUID
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • removeGovernanceResponsibility

      public void removeGovernanceResponsibility(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personRoleGUIDParameterName, String governanceResponsibilityGUID, String governanceResponsibilityGUIDParameterName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Unlink a role from a governance responsibility.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      personRoleGUID - unique identifier of TeamMember role
      personRoleGUIDParameterName - parameter name supplying personRoleGUID
      governanceResponsibilityGUID - unique identifier of the user identity
      governanceResponsibilityGUIDParameterName - parameter name supplying governanceResponsibilityGUID
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - entity not known, null userId or guid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • getRolesWithGovernanceResponsibility

      public List<B> getRolesWithGovernanceResponsibility(String userId, String governanceResponsibilityGUID, String governanceResponsibilityGUIDParameterName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
      Returns the list of roles that are responsible for the supplied governance definition.
      Parameters:
      userId - String userId of user making request.
      governanceResponsibilityGUID - String unique id for element.
      governanceResponsibilityGUIDParameterName - name of parameter supplying the GUID
      startFrom - int starting position for fist returned element.
      pageSize - int maximum number of elements to return on the call.
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for
      methodName - String calling method
      Returns:
      a list of assets or
      Throws:
      InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
      PropertyServerException - - there is a problem retrieving the asset properties from the property server or
      UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
    • updatePersonRole

      public void updatePersonRole(String userId, String externalSourceGUID, String externalSourceName, String roleGUID, String roleGUIDParameterName, String qualifiedName, String qualifiedNameParameterName, String identifier, String name, String nameParameterName, String description, String scope, int headCount, boolean headCountLimitSet, int domainIdentifier, Map<String,String> additionalProperties, String typeName, Map<String,Object> extendedProperties, boolean isMergeUpdate, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Update the person role object.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      roleGUID - unique identifier of the role to update
      roleGUIDParameterName - parameter passing the roleGUID
      qualifiedName - unique name for the role - used in other configuration
      qualifiedNameParameterName - parameter providing qualified name
      identifier - unique identifier for the role - typically from external system
      name - short display name for the role
      nameParameterName - parameter providing name
      description - description of the role
      scope - the scope of the role
      headCountLimitSet - should the head count be set in the entity?
      headCount - number of individuals that can be appointed to this role
      domainIdentifier - governance domain identifier
      additionalProperties - additional properties for a governance role
      typeName - type of role
      extendedProperties - properties for a governance role subtype
      isMergeUpdate - should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?
      effectiveFrom - starting time for this element (null for all time)
      effectiveTo - ending time for this element (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - qualifiedName or userId is null
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • removePersonRole

      public void removePersonRole(String userId, String externalSourceGUID, String externalSourceName, String roleGUID, String roleGUIDParameterName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Remove the metadata element representing a role. This will delete the role and all categories and terms because the Anchors classifications are set up in these elements.
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      roleGUID - unique identifier of the metadata element to remove
      roleGUIDParameterName - parameter supplying the roleGUID
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • findPersonRoles

      public List<B> findPersonRoles(String userId, String searchString, String searchStringParameterName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve the list of role metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      userId - calling user
      searchString - string to find in the properties
      searchStringParameterName - name of parameter supplying the search string
      startFrom - paging start point
      pageSize - maximum results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of matching metadata elements
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • getPersonRolesByName

      public List<B> getPersonRolesByName(String userId, String name, String nameParameterName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve the list of role metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      userId - calling user
      name - name to search for
      nameParameterName - parameter supplying name
      startFrom - paging start point
      pageSize - maximum results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of matching metadata elements
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • getProjectManagerRoles

      public List<B> getProjectManagerRoles(String userId, String projectGUID, String projectGUIDParameterName, int startingFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
      Return the person roles attached to a supplied project via the project management relationship.
      Parameters:
      userId - calling user
      projectGUID - identifier for the entity that the contact details are attached to
      projectGUIDParameterName - name of parameter supplying the GUID
      startingFrom - where to start from in the list
      pageSize - maximum number of results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of objects or null if none found
      Throws:
      InvalidParameterException - the input properties are invalid
      UserNotAuthorizedException - user not authorized to issue this request
      PropertyServerException - problem accessing the property server
    • getTeamLeaderRoles

      public List<B> getTeamLeaderRoles(String userId, String teamGUID, String teamGUIDParameterName, int startingFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
      Return the person roles attached to a supplied team via the team leadership relationship.
      Parameters:
      userId - calling user
      teamGUID - identifier for the entity that the contact details are attached to
      teamGUIDParameterName - name of parameter supplying the GUID
      startingFrom - where to start from in the list
      pageSize - maximum number of results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of objects or null if none found
      Throws:
      InvalidParameterException - the input properties are invalid
      UserNotAuthorizedException - user not authorized to issue this request
      PropertyServerException - problem accessing the property server
    • getTeamMemberRoles

      public List<B> getTeamMemberRoles(String userId, String teamGUID, String teamGUIDParameterName, int startingFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
      Return the person roles attached to a supplied team via the team membership relationship.
      Parameters:
      userId - calling user
      teamGUID - identifier for the entity that the contact details are attached to
      teamGUIDParameterName - name of parameter supplying the GUID
      startingFrom - where to start from in the list
      pageSize - maximum number of results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of objects or null if none found
      Throws:
      InvalidParameterException - the input properties are invalid
      UserNotAuthorizedException - user not authorized to issue this request
      PropertyServerException - problem accessing the property server
    • getCommunityRoles

      public List<B> getCommunityRoles(String userId, String communityGUID, String communityGUIDParameterName, int startingFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
      Return the person roles attached to a supplied community via the community membership relationship.
      Parameters:
      userId - calling user
      communityGUID - identifier for the entity that the contact details are attached to
      communityGUIDParameterName - name of parameter supplying the GUID
      startingFrom - where to start from in the list
      pageSize - maximum number of results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of objects or null if none found
      Throws:
      InvalidParameterException - the input properties are invalid
      UserNotAuthorizedException - user not authorized to issue this request
      PropertyServerException - problem accessing the property server
    • getPersonRoleByGUID

      public B getPersonRoleByGUID(String userId, String personRoleGUID, String personRoleGUIDParameterName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Return the bean that represents a person role.
      Parameters:
      userId - calling user
      personRoleGUID - unique identifier of the role
      personRoleGUIDParameterName - name of the parameter that supplied the GUID
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      bean
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • getPersonRolesForRoleId

      public List<B> getPersonRolesForRoleId(String userId, String name, String nameParameterName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve the list of role metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      userId - calling user
      name - name to search for
      nameParameterName - parameter supplying name
      startFrom - paging start point
      pageSize - maximum results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of matching metadata elements
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • getPersonRolesForTitle

      public List<B> getPersonRolesForTitle(String userId, String name, String nameParameterName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve the list of role metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      userId - calling user
      name - name to search for
      nameParameterName - parameter supplying name
      startFrom - paging start point
      pageSize - maximum results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of matching metadata elements
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • getPersonRolesForDomainId

      public List<B> getPersonRolesForDomainId(String userId, int domainIdentifier, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve the list of role metadata elements with a matching domain identifier. If the domain identifier is 0 then all roles are returned.
      Parameters:
      userId - calling user
      domainIdentifier - domain of interest - 0 means all domains
      startFrom - paging start point
      pageSize - maximum results that can be returned
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      list of matching metadata elements
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)