Interface GovernanceExchangeInterface
-
public interface GovernanceExchangeInterfaceThe GovernanceExchangeInterface enables the exchange of governance definitions between an external asset manager and open metadata. It includes the exchanges of governance definitions such as GovernancePolicy and GovernanceRule as well as classifications set up by the governance teams such as SubjectArea classification.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddElementToSubjectArea(String userId, String assetManagerGUID, String assetManagerName, String elementGUID, String elementExternalIdentifier, String subjectAreaName, String methodName)Classify the element to assert that it is part of a subject area definition.voidaddGovernanceDefinitionToElement(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String elementGUID, String methodName)Link a governance definition to an element using the GovernedBy relationship.voidclearGovernanceDelegation(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String delegatedToDefinitionGUID)Remove the link between a governance definition and a governance definition that is delegated to (ie provides an implementation of).StringcreateGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String typeName, String definitionExternalIdentifier, String definitionExternalIdentifierName, String definitionExternalIdentifierUsage, String definitionExternalIdentifierSource, KeyPattern definitionExternalIdentifierKeyPattern, Map<String,String> mappingProperties, GovernanceDefinitionProperties definitionProperties)Create a new definition.voiddeleteGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID)Delete a specific governance definition.GovernanceDefinitionElementgetGovernanceDefinitionByDocId(String userId, String assetManagerGUID, String assetManagerName, String documentIdentifier)Retrieve the governance definition by its assigned unique document identifier.GovernanceDefinitionElementgetGovernanceDefinitionByGUID(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID)Retrieve the governance definition by the unique identifier assigned by this service when it was created.voidlinkDefinitions(String userId, String assetManagerGUID, String assetManagerName, String definitionOneGUID, String definitionTwoGUID, String description)Link two related definitions together.voidremoveElementFromSubjectArea(String userId, String assetManagerGUID, String assetManagerName, String elementGUID, String externalElementIdentifier, String methodName)Remove the subject area designation from the identified element.voidremoveGovernanceDefinitionFromElement(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String elementGUID, String methodName)Remove the GovernedBy relationship between a governance definition and an element.voidsetupGovernanceDelegation(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String delegatedToDefinitionGUID, String rationale)Create a link to show that a governance definition supports the requirements of one of the governance drivers.voidunlinkDefinitions(String userId, String assetManagerGUID, String assetManagerName, String definitionOneGUID, String definitionTwoGUID)Remove the link between two definitions.voidupdateGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, boolean isMergeUpdate, GovernanceDefinitionProperties definitionProperties)Update an existing definition.
-
-
-
Method Detail
-
createGovernanceDefinition
String createGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String typeName, String definitionExternalIdentifier, String definitionExternalIdentifierName, String definitionExternalIdentifierUsage, String definitionExternalIdentifierSource, KeyPattern definitionExternalIdentifierKeyPattern, Map<String,String> mappingProperties, GovernanceDefinitionProperties definitionProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a new definition.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionExternalIdentifier- unique identifier of the definition in the external asset managerdefinitionExternalIdentifierName- name of property for the external identifier in the external asset managerdefinitionExternalIdentifierUsage- optional usage description for the external identifier when calling the external asset managerdefinitionExternalIdentifierSource- component that issuing this request.definitionExternalIdentifierKeyPattern- pattern for the external identifier within the external asset manager (default is LOCAL_KEY)mappingProperties- additional properties to help with the mapping of the elements in the external asset manager and open metadatatypeName- type of definitiondefinitionProperties- 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 property serverUserNotAuthorizedException- security access problem
-
updateGovernanceDefinition
void updateGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, boolean isMergeUpdate, GovernanceDefinitionProperties definitionProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update an existing definition.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- unique identifier of the definition to updateisMergeUpdate- are unspecified properties unchanged (true) or replaced with null?definitionProperties- 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
-
deleteGovernanceDefinition
void deleteGovernanceDefinition(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Delete a specific governance definition.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- unique identifier of the definition to remove- Throws:
InvalidParameterException- guid is null or not knownPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
linkDefinitions
void linkDefinitions(String userId, String assetManagerGUID, String assetManagerName, String definitionOneGUID, String definitionTwoGUID, String description) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Link two related definitions together. If the link already exists the description is updated.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionOneGUID- unique identifier of the first definitiondefinitionTwoGUID- unique identifier of the second definitiondescription- description of their relationship- Throws:
InvalidParameterException- one of the guids is null or not knownPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
unlinkDefinitions
void unlinkDefinitions(String userId, String assetManagerGUID, String assetManagerName, String definitionOneGUID, String definitionTwoGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the link between two definitions.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionOneGUID- unique identifier of the first definitiondefinitionTwoGUID- unique identifier of the second definition- Throws:
InvalidParameterException- one of the guids is null or not knownPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
setupGovernanceDelegation
void setupGovernanceDelegation(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String delegatedToDefinitionGUID, String rationale) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a link to show that a governance definition supports the requirements of one of the governance drivers. If the link already exists the rationale is updated.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- unique identifier of the governance definitiondelegatedToDefinitionGUID- unique identifier of the governance definition that is delegated torationale- description of how the delegation supports the definition- Throws:
InvalidParameterException- one of the guids is null or not knownPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
clearGovernanceDelegation
void clearGovernanceDelegation(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String delegatedToDefinitionGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the link between a governance definition and a governance definition that is delegated to (ie provides an implementation of).- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- unique identifier of the governance definitiondelegatedToDefinitionGUID- unique identifier of the governance definition that is delegated to- Throws:
InvalidParameterException- one of the guids is null or not knownPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getGovernanceDefinitionByGUID
GovernanceDefinitionElement getGovernanceDefinitionByGUID(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the governance definition by the unique identifier assigned by this service when it was created.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- identifier of the governance definition to retrieve- Returns:
- properties of the matching definition
- Throws:
InvalidParameterException- documentIdentifier or userId is null; guid is not recognizedPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getGovernanceDefinitionByDocId
GovernanceDefinitionElement getGovernanceDefinitionByDocId(String userId, String assetManagerGUID, String assetManagerName, String documentIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the governance definition by its assigned unique document identifier.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdocumentIdentifier- identifier to search for- Returns:
- properties of the matching definition
- Throws:
InvalidParameterException- documentIdentifier or userId is null; documentIdentifier is not recognizedPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
addGovernanceDefinitionToElement
void addGovernanceDefinitionToElement(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String elementGUID, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Link a governance definition to an element using the GovernedBy relationship.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- identifier of the governance definition to linkelementGUID- unique identifier of the metadata element to linkmethodName- calling method- 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)
-
removeGovernanceDefinitionFromElement
void removeGovernanceDefinitionFromElement(String userId, String assetManagerGUID, String assetManagerName, String definitionGUID, String elementGUID, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the GovernedBy relationship between a governance definition and an element.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerdefinitionGUID- identifier of the governance definition to linkelementGUID- unique identifier of the metadata element to updatemethodName- calling method- 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)
-
addElementToSubjectArea
void addElementToSubjectArea(String userId, String assetManagerGUID, String assetManagerName, String elementGUID, String elementExternalIdentifier, String subjectAreaName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Classify the element to assert that it is part of a subject area definition.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerelementGUID- unique identifier of the metadata element to updateelementExternalIdentifier- unique identifier of the element in the external asset managersubjectAreaName- qualified name of subject areamethodName- calling method- 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)
-
removeElementFromSubjectArea
void removeElementFromSubjectArea(String userId, String assetManagerGUID, String assetManagerName, String elementGUID, String externalElementIdentifier, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the subject area designation from the identified element.- Parameters:
userId- calling userassetManagerGUID- unique identifier of software server capability representing the callerassetManagerName- unique name of software server capability representing the callerelementGUID- unique identifier of the metadata element to updateexternalElementIdentifier- unique identifier of the equivalent element in the external asset managermethodName- calling method- 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)
-
-