Class ActorRoleHandler
java.lang.Object
org.odpi.openmetadata.frameworkservices.omf.client.handlers.ActorRoleHandler
- Direct Known Subclasses:
ActorRoleManagement
ActorRoleHandler provides methods to define actor roles
The interface supports the following types of objects
- ActorRole
- PersonRole
- TeamRole
- ITProfileRole
- GovernanceRole
- SolutionRole
-
Constructor Summary
ConstructorsConstructorDescriptionActorRoleHandler
(String localServerName, String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize, boolean createSolutionRoles) Create a new client that passes userId and password in each HTTP request.ActorRoleHandler
(String localServerName, String serverName, String serverPlatformURLRoot, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize, boolean createSolutionRoles) Create a new client with no authentication embedded in the HTTP request. -
Method Summary
Modifier and TypeMethodDescriptioncreateActorRole
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, ActorRoleProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new actor role.createActorRoleFromTemplate
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new metadata element to represent an actor role using an existing element as a template.void
deleteActorRole
(String userId, String externalSourceGUID, String externalSourceName, String actorRoleGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete a actor role.void
detachITProfileRoleFromProfile
(String userId, String externalSourceGUID, String externalSourceName, String itProfileRoleGUID, String itProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach an IT profile role from an IT profile.void
detachPersonRoleFromProfile
(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach a person role from a profile.void
detachTeamRoleFromProfile
(String userId, String externalSourceGUID, String externalSourceName, String teamRoleGUID, String teamProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach a team role from a team profile.findActorRoles
(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of actor roles metadata elements that contain the search string and show which solution components (if any) are attached to it.getActorRoleByGUID
(String userId, String actorRoleGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the properties of a specific actor role.getActorRolesByName
(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Returns the list of actor roles with a particular name.void
linkITProfileRoleToProfile
(String userId, String externalSourceGUID, String externalSourceName, String itProfileRoleGUID, String itProfileGUID, ITProfileRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach an IT profile role to an IT profile.void
linkPersonRoleToProfile
(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personProfileGUID, PersonRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach a person role to a person profile.void
linkTeamRoleToProfile
(String userId, String externalSourceGUID, String externalSourceName, String teamRoleGUID, String teamProfileGUID, TeamRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach a team role to a team profile.void
updateActorRole
(String userId, String externalSourceGUID, String externalSourceName, String actorRoleGUID, boolean replaceAllProperties, ActorRoleProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of an actor role.
-
Constructor Details
-
ActorRoleHandler
public ActorRoleHandler(String localServerName, String serverName, String serverPlatformURLRoot, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize, boolean createSolutionRoles) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
localServerName
- name of this server (view server)serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesauditLog
- logging destinationaccessServiceURLMarker
- which access service to callserviceName
- local service namemaxPageSize
- maximum number of results supported by this server- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
ActorRoleHandler
public ActorRoleHandler(String localServerName, String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize, boolean createSolutionRoles) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requestsmaxPageSize
- maximum number of results supported by this serverauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
-
Method Details
-
createActorRole
public String createActorRole(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, ActorRoleProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new actor role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingproperties
- properties for the new element.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createActorRoleFromTemplate
public String createActorRoleFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionCreate a new metadata element to represent an actor role using an existing element as a template. The template defines additional classifications and relationships that should be added to the new actor role.- Parameters:
userId
- calling userexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingeffectiveFrom
- the date when this element is active - null for active on creationeffectiveTo
- the date when this element becomes inactive - null for active until deletedtemplateGUID
- the unique identifier of the existing asset to copy (this will copy all the attachments such as nested content, schema connection etc)replacementProperties
- properties of the new metadata element. These override the template valuesplaceholderProperties
- property name-to-property value map to replace any placeholder values in the template element - and their anchored elements, which are also copied as part of this operation.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
updateActorRole
public void updateActorRole(String userId, String externalSourceGUID, String externalSourceName, String actorRoleGUID, boolean replaceAllProperties, ActorRoleProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of an actor role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementactorRoleGUID
- unique identifier of the actor role (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkPersonRoleToProfile
public void linkPersonRoleToProfile(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personProfileGUID, PersonRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach a person role to a person profile.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementpersonRoleGUID
- unique identifier of the person rolepersonProfileGUID
- unique identifier of the person profilerelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachPersonRoleFromProfile
public void detachPersonRoleFromProfile(String userId, String externalSourceGUID, String externalSourceName, String personRoleGUID, String personProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach a person role from a profile.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementpersonRoleGUID
- unique identifier of the person rolepersonProfileGUID
- unique identifier of the person profileforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkTeamRoleToProfile
public void linkTeamRoleToProfile(String userId, String externalSourceGUID, String externalSourceName, String teamRoleGUID, String teamProfileGUID, TeamRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach a team role to a team profile.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementteamRoleGUID
- unique identifier of the team roleteamProfileGUID
- unique identifier of the team profilerelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachTeamRoleFromProfile
public void detachTeamRoleFromProfile(String userId, String externalSourceGUID, String externalSourceName, String teamRoleGUID, String teamProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach a team role from a team profile.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementteamRoleGUID
- unique identifier of the teamteamProfileGUID
- unique identifier of the team profileforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkITProfileRoleToProfile
public void linkITProfileRoleToProfile(String userId, String externalSourceGUID, String externalSourceName, String itProfileRoleGUID, String itProfileGUID, ITProfileRoleAppointmentProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach an IT profile role to an IT profile.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementitProfileRoleGUID
- unique identifier of the IT profile roleitProfileGUID
- unique identifier of the IT profilerelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachITProfileRoleFromProfile
public void detachITProfileRoleFromProfile(String userId, String externalSourceGUID, String externalSourceName, String itProfileRoleGUID, String itProfileGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach an IT profile role from an IT profile.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementitProfileRoleGUID
- unique identifier of the IT profile roleitProfileGUID
- unique identifier of the IT profileforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteActorRole
public void deleteActorRole(String userId, String externalSourceGUID, String externalSourceName, String actorRoleGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete a actor role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementactorRoleGUID
- unique identifier of the elementcascadedDelete
- can the actor role be deleted if it has solution components linked to it?forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getActorRolesByName
public List<ActorRoleElement> getActorRolesByName(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Returns the list of actor roles with a particular name.- Parameters:
userId
- userId of user making requestname
- name of the element to return - match is full text match in qualifiedName or nametemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- a list of elements
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getActorRoleByGUID
public ActorRoleElement getActorRoleByGUID(String userId, String actorRoleGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the properties of a specific actor role.- Parameters:
userId
- userId of user making requestactorRoleGUID
- unique identifier of the required elementasOfTime
- repository time to useforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- retrieved properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findActorRoles
public List<ActorRoleElement> findActorRoles(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of actor roles metadata elements that contain the search string and show which solution components (if any) are attached to it. The returned actor roles include a list of the components that are associated with it. The search string is treated as a regular expression.- Parameters:
userId
- calling usersearchString
- string to find in the propertiestemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-