java.lang.Object
org.odpi.openmetadata.accessservices.communityprofile.client.CommunityProfileBaseClient
org.odpi.openmetadata.accessservices.communityprofile.client.CollectionManagement
All Implemented Interfaces:
org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface, org.odpi.openmetadata.accessservices.communityprofile.api.RelatedElementsManagementInterface

public class CollectionManagement extends CommunityProfileBaseClient implements org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
CollectionManagerClient supports the APIs to maintain collections and their related objects. It issues REST API calls to the Open Metadata Server running Collection Profile OMAS that have a URL that begins: serverPlatformURLRoot/servers/{serverName}/open-metadata/access-services/community-profile/users/{userId}/collections.
  • Constructor Details

    • CollectionManagement

      public CollectionManagement(String serverName, String serverPlatformURLRoot, org.odpi.openmetadata.frameworks.auditlog.AuditLog auditLog) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException
      Create a new client with no authentication embedded in the HTTP request.
      Parameters:
      serverName - name of the server to connect to
      serverPlatformURLRoot - the network address of the server running the OMAS REST services
      auditLog - logging destination
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
    • CollectionManagement

      public CollectionManagement(String serverName, String serverPlatformURLRoot) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException
      Create a new client with no authentication embedded in the HTTP request.
      Parameters:
      serverName - name of the server to connect to
      serverPlatformURLRoot - the network address of the server running the OMAS REST services
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
    • CollectionManagement

      public CollectionManagement(String serverName, String serverPlatformURLRoot, String userId, String password) throws org.odpi.openmetadata.frameworks.connectors.ffdc.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 to
      serverPlatformURLRoot - the network address of the server running the OMAS REST services
      userId - caller's userId embedded in all HTTP requests
      password - caller's userId embedded in all HTTP requests
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
    • CollectionManagement

      public CollectionManagement(String serverName, String serverPlatformURLRoot, String userId, String password, org.odpi.openmetadata.frameworks.auditlog.AuditLog auditLog) throws org.odpi.openmetadata.frameworks.connectors.ffdc.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 to
      serverPlatformURLRoot - the network address of the server running the OMAS REST services
      userId - caller's userId embedded in all HTTP requests
      password - caller's userId embedded in all HTTP requests
      auditLog - logging destination
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
    • CollectionManagement

      public CollectionManagement(String serverName, String serverPlatformURLRoot, CommunityProfileRESTClient restClient, int maxPageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException
      Create a new client that is going to be used in an OMAG Server.
      Parameters:
      serverName - name of the server to connect to
      serverPlatformURLRoot - the network address of the server running the OMAS REST services
      restClient - client that issues the REST API calls
      maxPageSize - maximum number of results supported by this server
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
  • Method Details

    • createCollection

      public String createCollection(String userId, String externalSourceGUID, String externalSourceName, org.odpi.openmetadata.accessservices.communityprofile.properties.CollectionProperties collectionProperties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Create a new metadata element to represent a collection.
      Specified by:
      createCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      collectionProperties - properties about the collection to store. The qualifiedName property must be supplied and must be unique.
      Returns:
      unique identifier of the new collection
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • createFolderCollection

      public String createFolderCollection(String userId, String externalSourceGUID, String externalSourceName, org.odpi.openmetadata.accessservices.communityprofile.properties.CollectionFolderProperties properties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException
      Create a collection that acts like a folder with an order.
      Specified by:
      createFolderCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - userId of user making request.
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      properties - description of the collection.
      Returns:
      unique identifier of the newly created Collection
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid.
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem retrieving information from the property server(s).
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the requesting user is not authorized to issue this request.
    • updateCollection

      public void updateCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, boolean isMergeUpdate, org.odpi.openmetadata.accessservices.communityprofile.properties.CollectionProperties collectionProperties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Update the metadata element representing a collection.
      Specified by:
      updateCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      collectionGUID - unique identifier of the metadata element to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      collectionProperties - new properties for the metadata element
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • updateCollectionMembership

      public void updateCollectionMembership(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, org.odpi.openmetadata.accessservices.communityprofile.properties.CollectionMembershipProperties membershipProperties, boolean isMergeUpdate, String elementGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Create a membership relationship between a collection and a person role to show that anyone appointed to the role is a member of the collection.
      Specified by:
      updateCollectionMembership in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      collectionGUID - unique identifier of the collection
      membershipProperties - describes the permissions that the role has in the collection
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      elementGUID - unique identifier of the person role
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • removeFromCollection

      public void removeFromCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String elementGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Remove a membership relationship between a collection and a person role.
      Specified by:
      removeFromCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      collectionGUID - unique identifier of the collection
      elementGUID - unique identifier of the person role
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • removeCollection

      public void removeCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Remove the metadata element representing a collection.
      Specified by:
      removeCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      externalSourceGUID - unique identifier of software capability representing the caller
      externalSourceName - unique name of software capability representing the caller
      collectionGUID - unique identifier of the metadata element to remove
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • findCollections

      public List<org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionElement> findCollections(String userId, String searchString, int startFrom, int pageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Retrieve the list of metadata elements that contain the search string. The search string is treated as a regular expression.
      Specified by:
      findCollections in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      searchString - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • getCollectionsByName

      public List<org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionElement> getCollectionsByName(String userId, String name, int startFrom, int pageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Retrieve the list of metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Specified by:
      getCollectionsByName in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      name - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • getCollections

      public List<org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionElement> getCollections(String userId, String parentGUID, int startFrom, int pageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Retrieve the list of all collections defined in open metadata.
      Specified by:
      getCollections in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      parentGUID - unique identifier of referenceable object (typically a personal profile, project or community) that the collections hang off of.
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)
    • getCollectionMembers

      public List<org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionMember> getCollectionMembers(String userId, String collectionGUID, int startFrom, int pageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Return information about the elements linked to a collection.
      Specified by:
      getCollectionMembers in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      collectionGUID - unique identifier for the collection
      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:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - name or userId is null
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • getCollectionMember

      public org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionMember getCollectionMember(String userId, String collectionGUID, String memberGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException
      Return details of the membership between a collection and a specific member of the collection.
      Specified by:
      getCollectionMember in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - userId of user making request.
      collectionGUID - unique identifier of the collection.
      memberGUID - unique identifier of the element who is a member of the collection.
      Returns:
      list of asset details
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid.
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem retrieving information from the property server(s).
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the requesting user is not authorized to issue this request.
    • getElementsCollections

      public List<org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionElement> getElementsCollections(String userId, String elementGUID, int startFrom, int pageSize) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Return information about the elements linked to a collection.
      Specified by:
      getElementsCollections in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      elementGUID - unique identifier for the collection
      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:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - name or userId is null
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • getCollection

      public org.odpi.openmetadata.accessservices.communityprofile.metadataelements.CollectionElement getCollection(String userId, String collectionGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Retrieve the metadata element with the supplied unique identifier.
      Specified by:
      getCollection in interface org.odpi.openmetadata.accessservices.communityprofile.api.CollectionManagementInterface
      Parameters:
      userId - calling user
      collectionGUID - unique identifier of the requested metadata element
      Returns:
      requested metadata element
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the parameters is invalid
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - the user is not authorized to issue this request
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - there is a problem reported in the open metadata server(s)