Class GovernanceConfigurationHandler
- java.lang.Object
-
- org.odpi.openmetadata.accessservices.governanceengine.handlers.GovernanceConfigurationHandler
-
public class GovernanceConfigurationHandler extends Object
GovernanceConfigurationHandler provides the open metadata server side implementation of GovernanceConfigurationServer which is part of the Open Governance Framework (ODF).
-
-
Constructor Summary
Constructors Constructor Description GovernanceConfigurationHandler(String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)Construct the governance engine configuration handler caching the objects needed to operate within a single server instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringcreateGovernanceEngine(String userId, String typeName, String qualifiedName, String displayName, String description)Create a new governance engine definition.StringcreateGovernanceService(String userId, String typeName, String qualifiedName, String displayName, String description, Connection connection)Create a governance service definition.voiddeleteGovernanceEngine(String userId, String guid, String qualifiedName)Remove the properties of the governance engine.voiddeleteGovernanceService(String userId, String guid, String qualifiedName)Remove the properties of the governance service.List<GovernanceEngineElement>getAllGovernanceEngines(String userId, int startingFrom, int maximumResults)Return the list of governance engine definitions that are stored.List<GovernanceServiceElement>getAllGovernanceServices(String userId, int startingFrom, int maximumResults)Return the list of governance services definitions that are stored.GovernanceEngineElementgetGovernanceEngineByGUID(String userId, String guid)Return the properties from a governance engine definition.GovernanceEngineElementgetGovernanceEngineByName(String userId, String name)Return the properties from a governance engine definition.GovernanceServiceElementgetGovernanceServiceByGUID(String userId, String guid)Return the properties from a governance service definition.GovernanceServiceElementgetGovernanceServiceByName(String userId, String name)Return the properties from a governance service definition.List<String>getGovernanceServiceRegistrations(String userId, String governanceServiceGUID)Return the list of governance engines that a specific governance service is registered with.RegisteredGovernanceServiceElementgetRegisteredGovernanceService(String userId, String governanceEngineGUID, String governanceServiceGUID)Retrieve a specific governance service registered with a governance engine.List<String>getRegisteredGovernanceServices(String userId, String governanceEngineGUID, int startingFrom, int maximumResults)Retrieve the identifiers of the governance services registered with a governance engine.voidregisterGovernanceServiceWithEngine(String userId, String governanceEngineGUID, String governanceServiceGUID, String governanceRequestType, Map<String,String> defaultAnalysisParameters)Register a governance service with a specific governance engine.voidunregisterGovernanceServiceFromEngine(String userId, String governanceEngineGUID, String governanceServiceGUID)Unregister all request types for a governance service from the governance engine.voidunregisterGovernanceServiceRequestFromEngine(String userId, String requestType, String governanceEngineGUID, String governanceServiceGUID)Remove a request type for a governance service from the governance engine.voidupdateGovernanceEngine(String userId, String guid, String qualifiedName, String displayName, String description, String typeDescription, String version, String patchLevel, String source, Map<String,String> additionalProperties, Map<String,Object> extendedProperties)Update the properties of an existing governance engine definition.voidupdateGovernanceService(String userId, String guid, String qualifiedName, String displayName, String description, Connection connection, Map<String,String> additionalProperties, Map<String,Object> extendedProperties)Update the properties of an existing governance service definition.
-
-
-
Constructor Detail
-
GovernanceConfigurationHandler
public GovernanceConfigurationHandler(String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)
Construct the governance engine configuration handler caching the objects needed to operate within a single server instance.- Parameters:
serviceName- name of this serviceserverName- name of the local serverinvalidParameterHandler- handler for managing parameter errorsrepositoryHandler- manages calls to the repository servicesrepositoryHelper- provides utilities for manipulating the repository services objectslocalServerUserId- userId for this serversecurityVerifier- open metadata security services verifiersupportedZones- list of zones that the access service is allowed to serve B instances from.defaultZones- list of zones that the access service should set in all new B instances.publishZones- list of zones that the access service sets up in published B instances.auditLog- logging destination
-
-
Method Detail
-
createGovernanceEngine
public String createGovernanceEngine(String userId, String typeName, String qualifiedName, String displayName, String description) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a new governance engine definition.- Parameters:
userId- identifier of calling usertypeName- type of governance engine to createqualifiedName- unique name for the governance engine.displayName- display name for messages and user interfaces.description- description of the types of governance services that will be associated with this governance engine.- Returns:
- unique identifier (guid) of the governance engine definition. This is for use on other requests.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem storing the governance engine definition.
-
getGovernanceEngineByGUID
public GovernanceEngineElement getGovernanceEngineByGUID(String userId, String guid) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the properties from a governance engine definition. The governance engine definition is completely contained in a single entity that can be retrieved from the repository services and converted to a bean.- Parameters:
userId- identifier of calling userguid- unique identifier (guid) of the governance engine definition.- Returns:
- properties from the governance engine definition.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance engine definition.
-
getGovernanceEngineByName
public GovernanceEngineElement getGovernanceEngineByName(String userId, String name) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the properties from a governance engine definition. The governance engine definition is completely contained in a single entity that can be retrieved from the repository services and converted to a bean.- Parameters:
userId- identifier of calling username- qualified name or display name (if unique).- Returns:
- properties from the governance engine definition.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance engine definition.
-
getAllGovernanceEngines
public List<GovernanceEngineElement> getAllGovernanceEngines(String userId, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the list of governance engine definitions that are stored.- Parameters:
userId- identifier of calling userstartingFrom- initial position in the stored list.maximumResults- maximum number of definitions to return on this call.- Returns:
- list of governance engine definitions.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance engine definitions.
-
updateGovernanceEngine
public void updateGovernanceEngine(String userId, String guid, String qualifiedName, String displayName, String description, String typeDescription, String version, String patchLevel, String source, Map<String,String> additionalProperties, Map<String,Object> extendedProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties of an existing governance engine definition. Use the current value to keep a property value the same, or use the new value. Null means remove the property from the definition.- Parameters:
userId- identifier of calling userguid- unique identifier of the governance engine - used to locate the definition.qualifiedName- new value for unique name of governance engine.displayName- new value for the display name.description- new description for the governance engine.typeDescription- new description of the type ofg governance engine.version- new version number for the governance engine implementation.patchLevel- new patch level for the governance engine implementation.source- new source description for the implementation of the governance engine.additionalProperties- additional properties for the governance engine.extendedProperties- properties to populate the subtype of the governance engine.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem storing the governance engine definition.
-
deleteGovernanceEngine
public void deleteGovernanceEngine(String userId, String guid, String qualifiedName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the properties of the governance engine. Both the guid and the qualified name is supplied to validate that the correct governance engine is being deleted.- Parameters:
userId- identifier of calling userguid- unique identifier of the governance engine - used to locate the definition.qualifiedName- unique name for the governance engine.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance engine definition.
-
createGovernanceService
public String createGovernanceService(String userId, String typeName, String qualifiedName, String displayName, String description, Connection connection) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a governance service definition. The same governance service can be associated with multiple governance engines.- Parameters:
userId- identifier of calling usertypeName- type of governance servicequalifiedName- unique name for the governance service.displayName- display name for the governance service.description- description of the analysis provided by the governance service.connection- connection to instantiate the governance service implementation.- Returns:
- unique identifier of the governance service.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem storing the governance service definition.
-
getGovernanceServiceByGUID
public GovernanceServiceElement getGovernanceServiceByGUID(String userId, String guid) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the properties from a governance service definition.- Parameters:
userId- identifier of calling userguid- unique identifier (guid) of the governance service definition.- Returns:
- properties of the governance service.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service definition.
-
getGovernanceServiceByName
public GovernanceServiceElement getGovernanceServiceByName(String userId, String name) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the properties from a governance service definition.- Parameters:
userId- identifier of calling username- qualified name or display name (if unique).- Returns:
- properties from the governance engine definition.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance engine definition.
-
getAllGovernanceServices
public List<GovernanceServiceElement> getAllGovernanceServices(String userId, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the list of governance services definitions that are stored.- Parameters:
userId- identifier of calling userstartingFrom- initial position in the stored list.maximumResults- maximum number of definitions to return on this call.- Returns:
- list of governance service definitions.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service definitions.
-
getGovernanceServiceRegistrations
public List<String> getGovernanceServiceRegistrations(String userId, String governanceServiceGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the list of governance engines that a specific governance service is registered with.- Parameters:
userId- identifier of calling usergovernanceServiceGUID- governance service to search for.- Returns:
- list of governance engine unique identifiers (guids)
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
updateGovernanceService
public void updateGovernanceService(String userId, String guid, String qualifiedName, String displayName, String description, Connection connection, Map<String,String> additionalProperties, Map<String,Object> extendedProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties of an existing governance service definition. Use the current value to keep a property value the same, or use the new value. Null means remove the property from the definition.- Parameters:
userId- identifier of calling userguid- unique identifier of the governance service - used to locate the definition.qualifiedName- new value for unique name of governance service.displayName- new value for the display name.description- new value for the description.connection- connection used to create an instance of this governance service.additionalProperties- additional properties for the governance engine.extendedProperties- properties to populate the subtype of the governance service.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem storing the governance service definition.
-
deleteGovernanceService
public void deleteGovernanceService(String userId, String guid, String qualifiedName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the properties of the governance service. Both the guid and the qualified name is supplied to validate that the correct governance service is being deleted. The governance service is also unregistered from its governance engines.- Parameters:
userId- identifier of calling userguid- unique identifier of the governance service - used to locate the definition.qualifiedName- unique name for the governance service.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service definition.
-
registerGovernanceServiceWithEngine
public void registerGovernanceServiceWithEngine(String userId, String governanceEngineGUID, String governanceServiceGUID, String governanceRequestType, Map<String,String> defaultAnalysisParameters) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Register a governance service with a specific governance engine. Both the governance service and the governance engine already exist so it is just a question of creating a relationship between them.- Parameters:
userId- identifier of calling usergovernanceEngineGUID- unique identifier of the governance engine.governanceServiceGUID- unique identifier of the governance service.governanceRequestType- list of governance request types that this governance service is able to process.defaultAnalysisParameters- list of analysis parameters that are passed the the governance service (via the governance context). These values can be overridden on the actual governance request.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
getRegisteredGovernanceService
public RegisteredGovernanceServiceElement getRegisteredGovernanceService(String userId, String governanceEngineGUID, String governanceServiceGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve a specific governance service registered with a governance engine.- Parameters:
userId- identifier of calling usergovernanceEngineGUID- unique identifier of the governance engine.governanceServiceGUID- unique identifier of the governance service.- Returns:
- details of the governance service and the asset types it is registered for.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
getRegisteredGovernanceServices
public List<String> getRegisteredGovernanceServices(String userId, String governanceEngineGUID, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the identifiers of the governance services registered with a governance engine.- Parameters:
userId- identifier of calling usergovernanceEngineGUID- unique identifier of the governance engine.startingFrom- initial position in the stored list.maximumResults- maximum number of definitions to return on this call.- Returns:
- list of unique identifiers
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
unregisterGovernanceServiceRequestFromEngine
public void unregisterGovernanceServiceRequestFromEngine(String userId, String requestType, String governanceEngineGUID, String governanceServiceGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove a request type for a governance service from the governance engine.- Parameters:
userId- identifier of calling userrequestType- calling requestgovernanceEngineGUID- unique identifier of the governance engine.governanceServiceGUID- unique identifier of the governance service.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
unregisterGovernanceServiceFromEngine
public void unregisterGovernanceServiceFromEngine(String userId, String governanceEngineGUID, String governanceServiceGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Unregister all request types for a governance service from the governance engine.- Parameters:
userId- identifier of calling usergovernanceEngineGUID- unique identifier of the governance engine.governanceServiceGUID- unique identifier of the governance service.- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the governance service and/or governance engine definitions.
-
-