Class GovernanceDefinitionRESTServices
java.lang.Object
org.odpi.openmetadata.accessservices.governanceprogram.server.GovernanceDefinitionRESTServices
GovernanceDefinitionManager is the java client for managing the definitions for the governance drivers, policies and controls
that define the motivation, goals and implementation approach for the governance program.
Governance drivers document of the business strategy and regulations that provide the motivation behind the governance program. They feed
into the governance program's policymaking phase ensuring the governance program is focused on activity that delivers value to the organization.
A governance driver could be a governance strategy statement, a business imperative, a regulation or a regulation's article.
Governance policies define the goals and best practices for the governance program. There are three types of governance policies:
- Governance Principles define the invariants that the organization tries to maintain.
- Governance Obligations define the requirements coming from regulations and policy makers of the organization.
- Governance Approaches describe preferred approaches and methods to follow
-
Technical Controls define the use of technology to implement governance definitions. They consist of either:
- GovernanceRule - a rule that need to be enforced to support a requirement of the governance program.
- GovernanceProcess - a series of automated steps that need to run to support a requirement of the governance program.
-
Organizational controls define roles, teams and manual procedures that implement an aspect of governance. They consist of either:
- GovernanceResponsibility - a set of responsibilities that can be associated with a governance role
- GovernanceProcedure - an manual procedure
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionclearSupportingDefinition
(String serverName, String userId, String definitionGUID, String supportingDefinitionGUID, RelationshipRequestBody requestBody) Remove the supporting link between two governance definitions.createGovernanceDefinition
(String serverName, String userId, GovernanceDefinitionRequestBody requestBody) Create a new governance definition.deleteGovernanceDefinition
(String serverName, String userId, String definitionGUID, ExternalSourceRequestBody requestBody) Delete a specific governance definition.linkPeerDefinitions
(String serverName, String userId, String definitionOneGUID, String definitionTwoGUID, RelationshipRequestBody requestBody) Link two related governance definitions together.setGovernanceDefinitionStatus
(String serverName, String userId, String definitionGUID, GovernanceStatusRequestBody requestBody) Update the status of a governance definitionsetupSupportingDefinition
(String serverName, String userId, String definitionGUID, String supportingDefinitionGUID, RelationshipRequestBody requestBody) Create a link to show that a governance definition supports the requirements of another governance definition.unlinkPeerDefinitions
(String serverName, String userId, String definitionOneGUID, String definitionTwoGUID, RelationshipRequestBody requestBody) Remove the link between two definitions.updateGovernanceDefinition
(String serverName, String userId, String definitionGUID, boolean isMergeUpdate, GovernanceDefinitionRequestBody requestBody) Update an existing governance definition.
-
Constructor Details
-
GovernanceDefinitionRESTServices
public GovernanceDefinitionRESTServices()Default constructor
-
-
Method Details
-
createGovernanceDefinition
public GUIDResponse createGovernanceDefinition(String serverName, String userId, GovernanceDefinitionRequestBody requestBody) Create a new governance definition. The type of the definition is located in the properties.- Parameters:
serverName
- name of the server instance to connect touserId
- calling userrequestBody
- properties of the definition and initial status- Returns:
- unique identifier of the definition or InvalidParameterException typeName, documentIdentifier or userId is null; documentIdentifier is not unique; typeName is not valid PropertyServerException problem accessing the metadata service UserNotAuthorizedException security access problem
-
updateGovernanceDefinition
public VoidResponse updateGovernanceDefinition(String serverName, String userId, String definitionGUID, boolean isMergeUpdate, GovernanceDefinitionRequestBody requestBody) Update an existing governance definition.- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionGUID
- unique identifier of the definition to updateisMergeUpdate
- are unspecified properties unchanged (true) or removed?requestBody
- properties to update- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
setGovernanceDefinitionStatus
public VoidResponse setGovernanceDefinitionStatus(String serverName, String userId, String definitionGUID, GovernanceStatusRequestBody requestBody) Update the status of a governance definition- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionGUID
- unique identifierrequestBody
- new status- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
deleteGovernanceDefinition
public VoidResponse deleteGovernanceDefinition(String serverName, String userId, String definitionGUID, ExternalSourceRequestBody requestBody) Delete a specific governance definition.- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionGUID
- unique identifier of the definition to removerequestBody
- external source request body- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
linkPeerDefinitions
public VoidResponse linkPeerDefinitions(String serverName, String userId, String definitionOneGUID, String definitionTwoGUID, RelationshipRequestBody requestBody) Link two related governance definitions together. The governance definitions are of the same type as follows:- A relationship of type GovernanceDriverLink is between two GovernanceDriver definitions
- A relationship of type GovernancePolicyLink is between two GovernancePolicy definitions
- A relationship of type GovernanceControl is between two GovernanceControl definitions
- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionOneGUID
- unique identifier of the first definitiondefinitionTwoGUID
- unique identifier of the second definitionrequestBody
- description of their relationship- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
unlinkPeerDefinitions
public VoidResponse unlinkPeerDefinitions(String serverName, String userId, String definitionOneGUID, String definitionTwoGUID, RelationshipRequestBody requestBody) Remove the link between two definitions.- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionOneGUID
- unique identifier of the first definitiondefinitionTwoGUID
- unique identifier of the second definitionrequestBody
- the name of the relationship to delete- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
setupSupportingDefinition
public VoidResponse setupSupportingDefinition(String serverName, String userId, String definitionGUID, String supportingDefinitionGUID, RelationshipRequestBody requestBody) Create a link to show that a governance definition supports the requirements of another governance definition. This supporting relationship is between definitions of different types as follows:- A relationship of type GovernanceResponse is between a GovernanceDriver and a GovernancePolicy
- A relationship of type GovernanceImplementation is between a GovernancePolicy and a GovernanceControl
- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionGUID
- unique identifier of the governance definitionsupportingDefinitionGUID
- unique identifier of the supporting governance definitionrequestBody
- description of how the supporting definition provides support- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
clearSupportingDefinition
public VoidResponse clearSupportingDefinition(String serverName, String userId, String definitionGUID, String supportingDefinitionGUID, RelationshipRequestBody requestBody) Remove the supporting link between two governance definitions.- Parameters:
serverName
- name of the server instance to connect touserId
- calling userdefinitionGUID
- unique identifier of the governance definitionsupportingDefinitionGUID
- unique identifier of the supporting governance definitionrequestBody
- the name of the relationship to delete- Returns:
- void or InvalidParameterException guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-