Class RightsManager
- java.lang.Object
-
- org.odpi.openmetadata.accessservices.governanceprogram.client.RightsManager
-
- All Implemented Interfaces:
RightsManagementInterface
public class RightsManager extends Object implements RightsManagementInterface
RightsManager is the java client for managing license types and the licensing of elements.
-
-
Constructor Summary
Constructors Constructor Description RightsManager(String serverName, String serverPlatformURLRoot)Create a new client with no authentication embedded in the HTTP request.RightsManager(String serverName, String serverPlatformURLRoot, int maxPageSize, AuditLog auditLog)Create a new client with no authentication embedded in the HTTP request.RightsManager(String serverName, String serverPlatformURLRoot, String userId, String password)Create a new client that passes userId and password in each HTTP request.RightsManager(String serverName, String serverPlatformURLRoot, String userId, String password, int maxPageSize, AuditLog auditLog)Create a new client that passes userId and password in each HTTP request.RightsManager(String serverName, String serverPlatformURLRoot, GovernanceProgramRESTClient restClient, int maxPageSize)Create a new client that uses the supplied rest client.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringcreateLicenseType(String userId, LicenseTypeProperties properties)Create a description of the license type.voiddeleteLicenseType(String userId, String licenseTypeGUID)Delete the properties of the license type.LicenseTypeElementgetLicenseTypeByDocId(String userId, String documentIdentifier)Retrieve the license type by its assigned unique document identifier.List<LicenseTypeElement>getLicenseTypeByDomainId(String userId, int domainIdentifier, int startFrom, int pageSize)Retrieve all of the license type definitions for a specific governance domain.LicenseTypeElementgetLicenseTypeByGUID(String userId, String licenseTypeGUID)Retrieve the license type by the unique identifier assigned by this service when it was created.List<LicenseTypeElement>getLicenseTypesByTitle(String userId, String title, int startFrom, int pageSize)Retrieve all of the license types for a particular title.voidlicenseElement(String userId, String elementGUID, String licenseTypeGUID, LicenseProperties properties)Link an element to a license type and include details of the license in the relationship properties.voidunlicenseElement(String userId, String elementGUID, String licenseTypeGUID, String certificateId)Remove the license for an element.voidupdateLicense(String userId, String elementGUID, String licenseTypeGUID, boolean isMergeUpdate, LicenseProperties properties)Update the properties of a license.voidupdateLicenseType(String userId, String licenseTypeGUID, boolean isMergeUpdate, LicenseTypeProperties properties)Update the properties of the license type.
-
-
-
Constructor Detail
-
RightsManager
public RightsManager(String serverName, String serverPlatformURLRoot) throws InvalidParameterException
Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName- name of the server to connect toserverPlatformURLRoot- the network address of the server running the OMAS REST servers- Throws:
InvalidParameterException- bad input parameters
-
RightsManager
public RightsManager(String serverName, String serverPlatformURLRoot, String userId, String password) 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 serversuserId- caller's userId embedded in all HTTP requestspassword- caller's userId embedded in all HTTP requests- Throws:
InvalidParameterException- bad input parameters
-
RightsManager
public RightsManager(String serverName, String serverPlatformURLRoot, int maxPageSize, AuditLog auditLog) throws InvalidParameterException
Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName- name of the server to connect toserverPlatformURLRoot- the network address of the server running the OMAS REST serversmaxPageSize- pre-initialized parameter limitauditLog- logging destination- Throws:
InvalidParameterException- bad input parameters
-
RightsManager
public RightsManager(String serverName, String serverPlatformURLRoot, String userId, String password, int maxPageSize, AuditLog auditLog) 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 serversuserId- caller's userId embedded in all HTTP requestspassword- caller's userId embedded in all HTTP requestsmaxPageSize- pre-initialized parameter limitauditLog- logging destination- Throws:
InvalidParameterException- bad input parameters
-
RightsManager
public RightsManager(String serverName, String serverPlatformURLRoot, GovernanceProgramRESTClient restClient, int maxPageSize) throws InvalidParameterException
Create a new client that uses the supplied rest client. This is typically used when called fro manother OMAG Server.- Parameters:
serverName- name of the server to connect toserverPlatformURLRoot- the network address of the server running the OMAS REST serversrestClient- internal client for rest callsmaxPageSize- pre-initialized parameter limit- Throws:
InvalidParameterException- bad input parameters
-
-
Method Detail
-
createLicenseType
public String createLicenseType(String userId, LicenseTypeProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a description of the license type.- Specified by:
createLicenseTypein interfaceRightsManagementInterface- Parameters:
userId- calling userproperties- license properties- Returns:
- unique identifier of new definition
- Throws:
InvalidParameterException- documentIdentifier or userId is null; documentIdentifier is not uniquePropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
updateLicenseType
public void updateLicenseType(String userId, String licenseTypeGUID, boolean isMergeUpdate, LicenseTypeProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties of the license type.- Specified by:
updateLicenseTypein interfaceRightsManagementInterface- Parameters:
userId- calling userlicenseTypeGUID- identifier of the governance definition to changeisMergeUpdate- are unspecified properties unchanged (true) or replaced with null?properties- license properties- Throws:
InvalidParameterException- guid, documentIdentifier or userId is null; documentIdentifier is not uniquePropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
deleteLicenseType
public void deleteLicenseType(String userId, String licenseTypeGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Delete the properties of the license type.- Specified by:
deleteLicenseTypein interfaceRightsManagementInterface- Parameters:
userId- calling userlicenseTypeGUID- identifier of the governance definition to delete- Throws:
InvalidParameterException- guid or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getLicenseTypeByGUID
public LicenseTypeElement getLicenseTypeByGUID(String userId, String licenseTypeGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the license type by the unique identifier assigned by this service when it was created.- Specified by:
getLicenseTypeByGUIDin interfaceRightsManagementInterface- Parameters:
userId- calling userlicenseTypeGUID- identifier of the governance definition to retrieve- Returns:
- properties of the license type
- Throws:
InvalidParameterException- guid or userId is null; guid is not recognizedPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getLicenseTypeByDocId
public LicenseTypeElement getLicenseTypeByDocId(String userId, String documentIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the license type by its assigned unique document identifier.- Specified by:
getLicenseTypeByDocIdin interfaceRightsManagementInterface- Parameters:
userId- calling userdocumentIdentifier- identifier to search for- Returns:
- properties of the matching license type
- Throws:
InvalidParameterException- documentIdentifier or userId is null; documentIdentifier is not recognizedPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getLicenseTypesByTitle
public List<LicenseTypeElement> getLicenseTypesByTitle(String userId, String title, int startFrom, int pageSize) throws UserNotAuthorizedException, InvalidParameterException, PropertyServerException
Retrieve all of the license types for a particular title. The title can include regEx wildcards.- Specified by:
getLicenseTypesByTitlein interfaceRightsManagementInterface- Parameters:
userId- calling usertitle- short description of the rolestartFrom- where to start from in the list of definitionspageSize- max number of results to return in one call- Returns:
- list of matching roles (null if no matching elements)
- Throws:
InvalidParameterException- title or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getLicenseTypeByDomainId
public List<LicenseTypeElement> getLicenseTypeByDomainId(String userId, int domainIdentifier, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve all of the license type definitions for a specific governance domain.- Specified by:
getLicenseTypeByDomainIdin interfaceRightsManagementInterface- Parameters:
userId- calling userdomainIdentifier- identifier to search forstartFrom- where to start from in the list of definitionspageSize- max number of results to return in one call- Returns:
- properties of the matching license type definitions
- Throws:
InvalidParameterException- domainIdentifier or userId is null; domainIdentifier is not recognizedPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
licenseElement
public void licenseElement(String userId, String elementGUID, String licenseTypeGUID, LicenseProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Link an element to a license type and include details of the license in the relationship properties.- Specified by:
licenseElementin interfaceRightsManagementInterface- Parameters:
userId- calling userelementGUID- unique identifier of the element being certifiedlicenseTypeGUID- unique identifier for the license typeproperties- the properties of the license- Throws:
InvalidParameterException- one of the properties is invalidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
updateLicense
public void updateLicense(String userId, String elementGUID, String licenseTypeGUID, boolean isMergeUpdate, LicenseProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties of a license. Remember to include the licenseId in the properties if the element has multiple licenses for the same license type.- Specified by:
updateLicensein interfaceRightsManagementInterface- Parameters:
userId- calling userelementGUID- unique identifier of the element being certifiedlicenseTypeGUID- unique identifier for the license typeisMergeUpdate- should the supplied properties overlay the existing properties or replace themproperties- the properties of the license- Throws:
InvalidParameterException- one of the properties is invalidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
unlicenseElement
public void unlicenseElement(String userId, String elementGUID, String licenseTypeGUID, String certificateId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the license for an element.- Specified by:
unlicenseElementin interfaceRightsManagementInterface- Parameters:
userId- calling userelementGUID- unique identifier of the element being certifiedlicenseTypeGUID- unique identifier for the license typecertificateId- optional unique identifier from the license authority - it is used to disambiguate the licenses for the element.- Throws:
InvalidParameterException- one of the properties is invalidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
-