Class OrganizationIntegratorContext
java.lang.Object
org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
org.odpi.openmetadata.integrationservices.organization.connector.OrganizationIntegratorContext
OrganizationIntegratorContext provides a wrapper around the Community Profile OMAS client.
It provides the simplified interface to open metadata needed by the OrganizationIntegratorConnector.
-
Field Summary
Fields inherited from class org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
actionControlInterface, connectorName, externalSourceGUID, externalSourceIsHome, externalSourceName, fileClassifier, governanceConfiguration, integrationConnectorGUID, integrationReportWriter, maxPageSize, openIntegrationClient, openMetadataStoreClient, permittedSynchronization, propertyHelper, userId
-
Constructor Summary
ConstructorDescriptionOrganizationIntegratorContext
(String connectorId, String connectorName, String connectorUserId, String serverName, OpenIntegrationClient openIntegrationClient, GovernanceConfiguration governanceConfiguration, OpenMetadataClient openMetadataStoreClient, ActionControlInterface actionControlInterface, OrganizationManagement organizationManagement, SecurityGroupManagement securityGroupManagement, UserIdentityManagement userIdentityManagement, CommunityProfileEventClient eventClient, boolean generateIntegrationReport, PermittedSynchronization permittedSynchronization, String integrationConnectorGUID, String externalSourceGUID, String externalSourceName, int maxPageSize, AuditLog auditLog) Create a new client to exchange data asset content with open metadata. -
Method Summary
Modifier and TypeMethodDescriptionaddContactMethod
(String actorProfileGUID, ContactMethodProperties properties) Add a new contact method to the profile.void
addIdentityToProfile
(String userIdentityGUID, String profileGUID, ProfileIdentityProperties properties) Link a user identity to a profile.createActorProfile
(ActorProfileProperties properties, ContributionRecord contributionRecord) Create a definition of a actor profile.createPersonRole
(PersonRoleProperties properties) Create a definition of a person role.createSecurityGroup
(SecurityGroupProperties properties) Create a new security group.createUserIdentity
(UserIdentityProperties newIdentity) Create a UserIdentity.createUserIdentityForProfile
(String profileGUID, UserIdentityProperties newIdentity) Create a UserIdentity that is for the sole use of a specific actor profile.void
deleteActorProfile
(String actorProfileGUID) Remove the definition of an actor profile.void
deleteContactMethod
(String contactMethodGUID) Remove an obsolete contact method from the profile.void
deletePersonRole
(String personRoleGUID) Remove the definition of a person role.void
deleteSecurityGroup
(String securityGroupGUID) Delete a specific security group.void
deleteUserIdentity
(String userIdentityGUID) Remove a user identity object.findActorProfiles
(String searchString, int startFrom, int pageSize) Retrieve the list of matching profiles for the search string.findPersonRoles
(String searchString, int startFrom, int pageSize) Retrieve the list of matching roles for the search string.findSecurityGroups
(String searchString, int startFrom, int pageSize) Return the list of security groups that match the search string - this can be a regular expression.findUserIdentities
(String searchString, int startFrom, int pageSize) Retrieve the list of user identity metadata elements that contain the search string.getActorProfileByGUID
(String actorProfileGUID) Return information about a specific actor profile.getActorProfileByUserId
(String actorProfileUserId) Return information about a specific actor profile.getActorProfiles
(int startFrom, int pageSize) Return information about all actor profiles.getActorProfilesByLocation
(String locationGUID, int startFrom, int pageSize) Return information about actor profiles associated with a location.getActorProfilesByName
(String name, int startFrom, int pageSize) Return information about matching named actor profiles.getAppointees
(String personRoleGUID, Date effectiveTime, int startFrom, int pageSize) Return the list of people appointed to a particular role.getElementsGovernedBySecurityGroup
(String securityGroupGUID, int startFrom, int pageSize) Return the elements that are governed by the supplied security group.Return the qualified name of the external source that is supplied in the configuration document.getLeadershipRolesForTeam
(String teamGUID, int startFrom, int pageSize) Return information about the leadership person roles linked to a team.getMembershipRolesForTeam
(String teamGUID, int startFrom, int pageSize) Return information about the membership person roles linked to a team.getPersonRoleByGUID
(String personRoleGUID) Return information about a specific person role.getPersonRolesByName
(String name, int startFrom, int pageSize) Return information about a named person role.getSecurityGroupsForDistinguishedName
(String distinguishedName, int startFrom, int pageSize) Return the list of security groups associated with a unique distinguishedName.getUserIdentitiesByName
(String name, int startFrom, int pageSize) Retrieve the list of user identity metadata elements with a matching qualified name.getUserIdentityByGUID
(String userIdentityGUID) Retrieve the userIdentity metadata element with the supplied unique identifier.void
linkPersonRoleToProfile
(String personRoleGUID, String personProfileGUID, AppointmentProperties properties) Link a person role to a person profile to show that that person is performing the role.void
linkTeamPlayer
(String teamRoleGUID, String teamProfileGUID, String position, boolean leadershipPosition) Link a team leader person role or team member person role to a team profile.void
linkTeamsInHierarchy
(String superTeamProfileGUID, String subTeamProfileGUID, boolean delegationEscalationAuthority, Date effectiveFrom, Date effectiveTo) Link two related team/organization actor profiles together as part of a hierarchy.void
Register a listener object that will be passed each of the events published by the Community Profile OMAS.void
removeIdentityFromProfile
(String userIdentityGUID, String profileGUID) Unlink a user identity from a profile.void
unlinkPersonRoleFromProfile
(String appointmentGUID) Remove the link between a person role and a person profile.void
unlinkTeamPlayer
(String teamRoleGUID, String teamProfileGUID, boolean leadershipPosition) Remove the link between a person role and a team profile.void
unlinkTeamsInHierarchy
(String superTeamProfileGUID, String subTeamProfileGUID) Remove the link between two actor profiles in the actor profile hierarchy.void
updateActorProfile
(String actorProfileGUID, boolean isMergeUpdate, ActorProfileProperties properties, ContributionRecord contributionRecord) Update the definition of an actor profile.void
updateAppointment
(String appointmentGUID, boolean isMergeUpdate, AppointmentProperties properties) Update the properties for the appointment of a person to a role.void
updatePersonRole
(String personRoleGUID, boolean isMergeUpdate, PersonRoleProperties properties) Update the definition of a person role.void
updateProfileIdentity
(String userIdentityGUID, String profileGUID, boolean isMergeUpdate, ProfileIdentityProperties properties) Update the properties of the relationship between a user identity and profile.void
updateSecurityGroup
(String securityGroupGUID, boolean isMergeUpdate, SecurityGroupProperties properties) Update an existing security group.void
updateUserIdentity
(String userIdentityGUID, boolean isMergeUpdate, UserIdentityProperties properties) Update a UserIdentity.Methods inherited from class org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
addCatalogTarget, addCatalogTarget, disconnect, elementShouldBeCatalogued, getAnchorGUID, getAnchorGUID, getCatalogTarget, getCatalogTargets, getCatalogTargets, getConnectedAssetContext, getExternalSourceIsHome, getFileClassifier, getIntegrationGovernanceContext, getMaxPageSize, getMetadataSourceGUID, getMetadataSourceQualifiedName, getMyUserId, getPermittedSynchronization, isRefreshInProgress, isTypeOf, isTypeOf, registerDirectoryListener, registerDirectoryTreeListener, registerFileListener, removeCatalogTarget, reportAnchorGUID, reportAnchorGUID, reportElementCreation, reportElementDelete, reportElementUpdate, reportParentGUID, setActiveReportPublishing, setExternalSourceIsHome, setMetadataSourceQualifiedName, setMetadataSourceQualifiedName, unregisterDirectoryListener, unregisterDirectoryTreeListener, unregisterFileListener, updateCatalogTarget
-
Constructor Details
-
OrganizationIntegratorContext
public OrganizationIntegratorContext(String connectorId, String connectorName, String connectorUserId, String serverName, OpenIntegrationClient openIntegrationClient, GovernanceConfiguration governanceConfiguration, OpenMetadataClient openMetadataStoreClient, ActionControlInterface actionControlInterface, OrganizationManagement organizationManagement, SecurityGroupManagement securityGroupManagement, UserIdentityManagement userIdentityManagement, CommunityProfileEventClient eventClient, boolean generateIntegrationReport, PermittedSynchronization permittedSynchronization, String integrationConnectorGUID, String externalSourceGUID, String externalSourceName, int maxPageSize, AuditLog auditLog) Create a new client to exchange data asset content with open metadata.- Parameters:
connectorId
- unique identifier of the connector (used to configure the event listener)connectorName
- name of connector from configconnectorUserId
- userId for the connectorserverName
- name of the integration daemonopenIntegrationClient
- client for calling the metadata servergovernanceConfiguration
- client for managing catalog targetsopenMetadataStoreClient
- client for calling the metadata serveractionControlInterface
- client for initiating governance actionsorganizationManagement
- client for exchange requestssecurityGroupManagement
- client for exchange requestsuserIdentityManagement
- client for exchange requestseventClient
- client for registered listenersgenerateIntegrationReport
- should the connector generate an integration reports?permittedSynchronization
- the direction of integration permitted by the integration connectorintegrationConnectorGUID
- unique identifier for the integration connector if it is started via an integration group (otherwise it is null).externalSourceGUID
- unique identifier of the software server capability for the asset managerexternalSourceName
- unique name of the software server capability for the asset managermaxPageSize
- max number of elements that can be returned on a queryauditLog
- logging destination
-
-
Method Details
-
getExternalSourceName
Return the qualified name of the external source that is supplied in the configuration document.- Returns:
- string name
-
registerListener
public void registerListener(CommunityProfileEventListener listener) throws InvalidParameterException, ConnectionCheckedException, ConnectorCheckedException, PropertyServerException, UserNotAuthorizedException Register a listener object that will be passed each of the events published by the Community Profile OMAS.- Parameters:
listener
- listener object- Throws:
InvalidParameterException
- one of the parameters is null or invalid.ConnectionCheckedException
- there are errors in the configuration of the connection which is preventing the creation of a connector.ConnectorCheckedException
- there are errors in the initialization of the connector.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createActorProfile
public String createActorProfile(ActorProfileProperties properties, ContributionRecord contributionRecord) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a definition of a actor profile. This could be for the whole organization, a team, a person or a system.- Parameters:
properties
- properties for a actor profilecontributionRecord
- optional properties for the contribution record- Returns:
- unique identifier of actor profile
- Throws:
InvalidParameterException
- qualifiedName or userId is null; qualifiedName is not uniquePropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateActorProfile
public void updateActorProfile(String actorProfileGUID, boolean isMergeUpdate, ActorProfileProperties properties, ContributionRecord contributionRecord) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the definition of an actor profile.- Parameters:
actorProfileGUID
- unique identifier of actor profileisMergeUpdate
- are unspecified properties unchanged (true) or replaced with null?properties
- properties to changecontributionRecord
- optional properties for the contribution record- Throws:
InvalidParameterException
- guid, qualifiedName or userId is null; qualifiedName is not unique; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
deleteActorProfile
public void deleteActorProfile(String actorProfileGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the definition of an actor profile.- Parameters:
actorProfileGUID
- unique identifier of actor profile- Throws:
InvalidParameterException
- guid or userId is null; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
addContactMethod
public String addContactMethod(String actorProfileGUID, ContactMethodProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Add a new contact method to the profile.- Parameters:
actorProfileGUID
- identifier of the profile to update.properties
- properties of contact method.- Returns:
- unique identifier (guid) for the new contact method.
- Throws:
InvalidParameterException
- the userId is null or invalid. Another property 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.
-
deleteContactMethod
public void deleteContactMethod(String contactMethodGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Remove an obsolete contact method from the profile.- Parameters:
contactMethodGUID
- unique identifier (guid) for the obsolete contact method.- Throws:
InvalidParameterException
- the userId is null or invalid. Another property 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.
-
linkTeamsInHierarchy
public void linkTeamsInHierarchy(String superTeamProfileGUID, String subTeamProfileGUID, boolean delegationEscalationAuthority, Date effectiveFrom, Date effectiveTo) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link two related team/organization actor profiles together as part of a hierarchy. A team/organization actor profile can only have one parent but many child actor profiles.- Parameters:
superTeamProfileGUID
- unique identifier of the parent team profilesubTeamProfileGUID
- unique identifier of the child team profiledelegationEscalationAuthority
- can workflows delegate/escalate through this link?effectiveFrom
- start date for the team relationshipeffectiveTo
- end date for the team relationship- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
unlinkTeamsInHierarchy
public void unlinkTeamsInHierarchy(String superTeamProfileGUID, String subTeamProfileGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between two actor profiles in the actor profile hierarchy.- Parameters:
superTeamProfileGUID
- unique identifier of the parent actor profilesubTeamProfileGUID
- unique identifier of the child actor profile- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getActorProfileByGUID
public ActorProfileElement getActorProfileByGUID(String actorProfileGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific actor profile.- Parameters:
actorProfileGUID
- unique identifier for the actor profile- Returns:
- properties of the actor profile
- Throws:
InvalidParameterException
- actorProfileGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getActorProfileByUserId
public ActorProfileElement getActorProfileByUserId(String actorProfileUserId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific actor profile.- Parameters:
actorProfileUserId
- unique identifier for the actor profile- Returns:
- properties of the actor profile
- Throws:
InvalidParameterException
- actorProfileUserId or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getActorProfilesByName
public List<ActorProfileElement> getActorProfilesByName(String name, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about matching named actor profiles.- Parameters:
name
- unique name for the actor profilestartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getActorProfilesByLocation
public List<ActorProfileElement> getActorProfilesByLocation(String locationGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about actor profiles associated with a location.- Parameters:
locationGUID
- unique identifier or the locationstartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles
- Throws:
InvalidParameterException
- locationGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getActorProfiles
public List<ActorProfileElement> getActorProfiles(int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about all actor profiles.- Parameters:
startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles (hopefully only one)
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
findActorProfiles
public List<ActorProfileElement> findActorProfiles(String searchString, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of matching profiles for the search string.- Parameters:
searchString
- RegEx string to search forstartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
createPersonRole
public String createPersonRole(PersonRoleProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a definition of a person role.- Parameters:
properties
- properties for a person role- Returns:
- unique identifier of person role
- Throws:
InvalidParameterException
- qualifiedName or userId is null; qualifiedName is not uniquePropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updatePersonRole
public void updatePersonRole(String personRoleGUID, boolean isMergeUpdate, PersonRoleProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the definition of a person role.- Parameters:
personRoleGUID
- unique identifier of person roleisMergeUpdate
- are unspecified properties unchanged (true) or replaced with null?properties
- properties to change- Throws:
InvalidParameterException
- guid, qualifiedName or userId is null; qualifiedName is not unique; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
deletePersonRole
public void deletePersonRole(String personRoleGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the definition of a person role.- Parameters:
personRoleGUID
- unique identifier of person role- Throws:
InvalidParameterException
- guid or userId is null; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
linkPersonRoleToProfile
public void linkPersonRoleToProfile(String personRoleGUID, String personProfileGUID, AppointmentProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a person role to a person profile to show that that person is performing the role.- Parameters:
personRoleGUID
- unique identifier of the person rolepersonProfileGUID
- unique identifier of the person profileproperties
- optional properties for the appointment- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getAppointees
public List<Appointee> getAppointees(String personRoleGUID, Date effectiveTime, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of people appointed to a particular role.- Parameters:
personRoleGUID
- unique identifier of the person roleeffectiveTime
- time for appointments, null for full appointment historystartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return- Returns:
- list of appointees
- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateAppointment
public void updateAppointment(String appointmentGUID, boolean isMergeUpdate, AppointmentProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the properties for the appointment of a person to a role.- Parameters:
appointmentGUID
- unique identifier of the appointment relationshipisMergeUpdate
- are unspecified properties unchanged (true) or replaced with null?properties
- properties to change- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
unlinkPersonRoleFromProfile
public void unlinkPersonRoleFromProfile(String appointmentGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between a person role and a person profile.- Parameters:
appointmentGUID
- unique identifier of the appointment relationship- Throws:
InvalidParameterException
- one of the guids is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
linkTeamPlayer
public void linkTeamPlayer(String teamRoleGUID, String teamProfileGUID, String position, boolean leadershipPosition) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a team leader person role or team member person role to a team profile.- Parameters:
teamRoleGUID
- unique identifier of the person roleteamProfileGUID
- unique identifier of the team profileposition
- position name of the role in the teamleadershipPosition
- is this a leadership position- Throws:
InvalidParameterException
- one of the guids is null or not known; the person role is not a team member or team leaderPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
unlinkTeamPlayer
public void unlinkTeamPlayer(String teamRoleGUID, String teamProfileGUID, boolean leadershipPosition) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between a person role and a team profile.- Parameters:
teamRoleGUID
- unique identifier of the person roleteamProfileGUID
- unique identifier of the team profileleadershipPosition
- is this a leadership position- Throws:
InvalidParameterException
- one of the guids is null or not known; the person role is not a team member or team leaderPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getPersonRoleByGUID
public PersonRoleElement getPersonRoleByGUID(String personRoleGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific person role.- Parameters:
personRoleGUID
- unique identifier for the person role- Returns:
- properties of the person role
- Throws:
InvalidParameterException
- personRoleGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getPersonRolesByName
public List<PersonRoleElement> getPersonRolesByName(String name, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a named person role.- Parameters:
name
- unique name for the actor profilestartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles (hopefully only one)
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getLeadershipRolesForTeam
public List<PersonRoleElement> getLeadershipRolesForTeam(String teamGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about the leadership person roles linked to a team.- Parameters:
teamGUID
- unique identifier for the Team actor profilestartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles (hopefully only one)
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getMembershipRolesForTeam
public List<PersonRoleElement> getMembershipRolesForTeam(String teamGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about the membership person roles linked to a team.- Parameters:
teamGUID
- unique identifier for the Team actor profilestartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles (hopefully only one)
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
findPersonRoles
public List<PersonRoleElement> findPersonRoles(String searchString, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of matching roles for the search string.- Parameters:
searchString
- RegEx string to search forstartFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- list of matching actor profiles
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
createSecurityGroup
public String createSecurityGroup(SecurityGroupProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a new security group. The type of the definition is located in the properties.- Parameters:
properties
- properties of the definition- Returns:
- unique identifier of the definition
- Throws:
InvalidParameterException
- typeName, documentIdentifier or userId is null; documentIdentifier is not unique; typeName is not validPropertyServerException
- problem accessing the metadata serviceUserNotAuthorizedException
- security access problem
-
updateSecurityGroup
public void updateSecurityGroup(String securityGroupGUID, boolean isMergeUpdate, SecurityGroupProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update an existing security group.- Parameters:
securityGroupGUID
- unique identifier of the definition to updateisMergeUpdate
- are unspecified properties unchanged (true) or removed?properties
- properties to update- Throws:
InvalidParameterException
- guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
deleteSecurityGroup
public void deleteSecurityGroup(String securityGroupGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Delete a specific security group.- Parameters:
securityGroupGUID
- unique identifier of the definition to remove- Throws:
InvalidParameterException
- guid is null or not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSecurityGroupsForDistinguishedName
public List<SecurityGroupElement> getSecurityGroupsForDistinguishedName(String distinguishedName, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of security groups associated with a unique distinguishedName. In an ideal world, the should be only one.- Parameters:
distinguishedName
- unique name of the security groupstartFrom
- where to start from in the list of definitionspageSize
- max number of results to return in one call- Returns:
- list of security groups
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the caller is not authorized to issue the requestPropertyServerException
- the metadata service has problems
-
getElementsGovernedBySecurityGroup
public List<ElementStub> getElementsGovernedBySecurityGroup(String securityGroupGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the elements that are governed by the supplied security group.- Parameters:
securityGroupGUID
- unique name of the security groupstartFrom
- where to start from in the list of definitionspageSize
- max number of results to return in one call- Returns:
- list of headers for the associated elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the caller is not authorized to issue the requestPropertyServerException
- the metadata service has problems
-
findSecurityGroups
public List<SecurityGroupElement> findSecurityGroups(String searchString, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of security groups that match the search string - this can be a regular expression.- Parameters:
searchString
- value to search forstartFrom
- where to start from in the list of definition resultspageSize
- max number of results to return in one call- Returns:
- list of security groups
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the caller is not authorized to issue the requestPropertyServerException
- the metadata service has problems
-
createUserIdentity
public String createUserIdentity(UserIdentityProperties newIdentity) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a UserIdentity. This is not connected to a profile.- Parameters:
newIdentity
- properties for the new userIdentity.- Returns:
- unique identifier of the UserIdentity
- 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.
-
createUserIdentityForProfile
public String createUserIdentityForProfile(String profileGUID, UserIdentityProperties newIdentity) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a UserIdentity that is for the sole use of a specific actor profile.- Parameters:
profileGUID
- unique identifier of the profilenewIdentity
- properties for the new userIdentity- Returns:
- unique identifier of the UserIdentity
- 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.
-
updateUserIdentity
public void updateUserIdentity(String userIdentityGUID, boolean isMergeUpdate, UserIdentityProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update a UserIdentity.- Parameters:
userIdentityGUID
- unique identifier of the UserIdentityisMergeUpdate
- should the supplied properties be overlaid on the existing properties (true) or replace them (falseproperties
- updated properties for the new userIdentity- 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.
-
deleteUserIdentity
public void deleteUserIdentity(String userIdentityGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Remove a user identity object. This will fail if the profile would be left without an associated user identity.- Parameters:
userIdentityGUID
- unique identifier of the UserIdentity- 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.
-
addIdentityToProfile
public void addIdentityToProfile(String userIdentityGUID, String profileGUID, ProfileIdentityProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Link a user identity to a profile. This will fail if the user identity is already connected to a profile.- Parameters:
profileGUID
- the profile to add the identity to.userIdentityGUID
- additional userId for the profile.properties
- the properties that describe how the owner of the profile uses the user identity- 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.
-
updateProfileIdentity
public void updateProfileIdentity(String userIdentityGUID, String profileGUID, boolean isMergeUpdate, ProfileIdentityProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of the relationship between a user identity and profile.- Parameters:
userIdentityGUID
- additional userId for the profileprofileGUID
- the profile to add the identity toisMergeUpdate
- should the supplied properties be overlaid on the existing properties (true) or replace them (falseproperties
- the properties that describe how the owner of the profile uses the user identity- 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.
-
removeIdentityFromProfile
public void removeIdentityFromProfile(String userIdentityGUID, String profileGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Unlink a user identity from a profile.- Parameters:
userIdentityGUID
- unique identifier of the UserIdentityprofileGUID
- profile to remove it from.- 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.
-
findUserIdentities
public List<UserIdentityElement> findUserIdentities(String searchString, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of user identity metadata elements that contain the search string. The search string is treated as a regular expression.- Parameters:
searchString
- string to find in the propertiesstartFrom
- paging start pointpageSize
- maximum results that can be returned- 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)
-
getUserIdentitiesByName
public List<UserIdentityElement> getUserIdentitiesByName(String name, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of user identity metadata elements with a matching qualified name. There are no wildcards supported on this request.- Parameters:
name
- name to search forstartFrom
- paging start pointpageSize
- maximum results that can be returned- 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)
-
getUserIdentityByGUID
public UserIdentityElement getUserIdentityByGUID(String userIdentityGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the userIdentity metadata element with the supplied unique identifier.- Parameters:
userIdentityGUID
- unique identifier of the requested metadata element- Returns:
- matching 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)
-