Class ReferenceableHandler<B>

    • Constructor Detail

      • ReferenceableHandler

        public ReferenceableHandler​(OpenMetadataAPIGenericConverter<B> converter,
                                    Class<B> beanClass,
                                    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 handler information needed to interact with the repository services
        Parameters:
        converter - specific converter for this bean class
        beanClass - name of bean class that is represented by the generic class B
        serviceName - name of this service
        serverName - name of the local server
        invalidParameterHandler - handler for managing parameter errors
        repositoryHandler - manages calls to the repository services
        repositoryHelper - provides utilities for manipulating the repository services objects
        localServerUserId - userId for this server
        securityVerifier - open metadata security services verifier
        supportedZones - list of zones that the access service is allowed to serve Asset instances from.
        defaultZones - list of zones that the access service should set in all new Asset instances.
        publishZones - list of zones that the access service sets up in published Asset instances.
        auditLog - destination for audit log events.
    • Method Detail

      • getBeanGUIDByQualifiedName

        public String getBeanGUIDByQualifiedName​(String userId,
                                                 String typeGUID,
                                                 String typeName,
                                                 String name,
                                                 String nameParameterName,
                                                 boolean forLineage,
                                                 boolean forDuplicateProcessing,
                                                 Date effectiveTime,
                                                 String methodName)
                                          throws InvalidParameterException,
                                                 PropertyServerException,
                                                 UserNotAuthorizedException
        Return the unique identifier of the bean with the requested qualified name. The match is exact. It uses the supportedZones supplied with the service.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        matching B bean
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeanGUIDByQualifiedName

        public String getBeanGUIDByQualifiedName​(String userId,
                                                 String typeGUID,
                                                 String typeName,
                                                 String name,
                                                 String nameParameterName,
                                                 boolean forLineage,
                                                 boolean forDuplicateProcessing,
                                                 List<String> serviceSupportedZones,
                                                 Date effectiveTime,
                                                 String methodName)
                                          throws InvalidParameterException,
                                                 PropertyServerException,
                                                 UserNotAuthorizedException
        Return the bean with the requested qualified name. The match is exact.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        serviceSupportedZones - list of supported zones for this service
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        matching B bean
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeanByQualifiedName

        public B getBeanByQualifiedName​(String userId,
                                        String typeGUID,
                                        String typeName,
                                        String name,
                                        String nameParameterName,
                                        String methodName)
                                 throws InvalidParameterException,
                                        PropertyServerException,
                                        UserNotAuthorizedException
        Return the bean with the requested qualified name. The match is exact. It uses the supportedZones supplied with the service.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        methodName - calling method
        Returns:
        matching B bean
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeanByQualifiedName

        public B getBeanByQualifiedName​(String userId,
                                        String typeGUID,
                                        String typeName,
                                        String name,
                                        String nameParameterName,
                                        boolean forLineage,
                                        boolean forDuplicateProcessing,
                                        List<String> serviceSupportedZones,
                                        Date effectiveTime,
                                        String methodName)
                                 throws InvalidParameterException,
                                        PropertyServerException,
                                        UserNotAuthorizedException
        Return the bean with the requested qualified name. The match is exact.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        serviceSupportedZones - list of supported zones for this service
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        matching B bean
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeanGUIDsByQualifiedName

        public List<String> getBeanGUIDsByQualifiedName​(String userId,
                                                        String typeGUID,
                                                        String typeName,
                                                        String name,
                                                        String nameParameterName,
                                                        boolean forLineage,
                                                        boolean forDuplicateProcessing,
                                                        int startFrom,
                                                        int pageSize,
                                                        Date effectiveTime,
                                                        String methodName)
                                                 throws InvalidParameterException,
                                                        PropertyServerException,
                                                        UserNotAuthorizedException
        Return a list of unique identifiers for referenceables with the requested qualified name. The match is exact. It uses the supportedZones supplied with the service.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeanGUIDsByQualifiedName

        public List<String> getBeanGUIDsByQualifiedName​(String userId,
                                                        String typeGUID,
                                                        String typeName,
                                                        String name,
                                                        String nameParameterName,
                                                        boolean forLineage,
                                                        boolean forDuplicateProcessing,
                                                        List<String> serviceSupportedZones,
                                                        int startFrom,
                                                        int pageSize,
                                                        Date effectiveTime,
                                                        String methodName)
                                                 throws InvalidParameterException,
                                                        PropertyServerException,
                                                        UserNotAuthorizedException
        Return a list of unique identifiers for referenceables with the requested qualified name. The match is exact.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        serviceSupportedZones - list of supported zones for this service
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeansByQualifiedName

        public List<B> getBeansByQualifiedName​(String userId,
                                               String typeGUID,
                                               String typeName,
                                               String name,
                                               String nameParameterName,
                                               int startFrom,
                                               int pageSize,
                                               String methodName)
                                        throws InvalidParameterException,
                                               PropertyServerException,
                                               UserNotAuthorizedException
        Return a list of referenceables with the requested qualified name. The match is exact. It uses the supportedZones supplied with the service.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getBeansByQualifiedName

        public List<B> getBeansByQualifiedName​(String userId,
                                               String typeGUID,
                                               String typeName,
                                               String name,
                                               String nameParameterName,
                                               List<String> serviceSupportedZones,
                                               int startFrom,
                                               int pageSize,
                                               Date effectiveTime,
                                               String methodName)
                                        throws InvalidParameterException,
                                               PropertyServerException,
                                               UserNotAuthorizedException
        Return a list of referenceables with the requested qualified name. The match is exact.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        serviceSupportedZones - list of supported zones for this service
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • getEntityByUniqueQualifiedName

        public EntityDetail getEntityByUniqueQualifiedName​(String userId,
                                                           String typeGUID,
                                                           String typeName,
                                                           String name,
                                                           String nameParameterName,
                                                           boolean forLineage,
                                                           boolean forDuplicateProcessing,
                                                           Date effectiveTime,
                                                           String methodName)
                                                    throws InvalidParameterException,
                                                           PropertyServerException,
                                                           UserNotAuthorizedException
        Return the entity for a qualified name that is effective at a specific time - if multiple entities have this name, an exception is thrown.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • findBeanGUIDsByQualifiedName

        public List<String> findBeanGUIDsByQualifiedName​(String userId,
                                                         String typeGUID,
                                                         String typeName,
                                                         String name,
                                                         String nameParameterName,
                                                         boolean forLineage,
                                                         boolean forDuplicateProcessing,
                                                         List<String> serviceSupportedZones,
                                                         int startFrom,
                                                         int pageSize,
                                                         Date effectiveTime,
                                                         String methodName)
                                                  throws InvalidParameterException,
                                                         PropertyServerException,
                                                         UserNotAuthorizedException
        Return a list of unique identifiers for referenceables with the requested qualified name. The match is via a Regular Expression (RegEx).
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for - this is a regular expression (RegEx)
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        serviceSupportedZones - list of supported zones for this service
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • findBeansByQualifiedName

        public List<B> findBeansByQualifiedName​(String userId,
                                                String typeGUID,
                                                String typeName,
                                                String name,
                                                String nameParameterName,
                                                boolean forLineage,
                                                boolean forDuplicateProcessing,
                                                int startFrom,
                                                int pageSize,
                                                Date effectiveTime,
                                                String methodName)
                                         throws InvalidParameterException,
                                                PropertyServerException,
                                                UserNotAuthorizedException
        Return a list of referenceables with the requested qualified name. The match is via a Regular Expression (RegEx). It uses the supportedZones supplied with the service.
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for - this is a regular expression (RegEx)
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • findBeansByQualifiedName

        public List<B> findBeansByQualifiedName​(String userId,
                                                String typeGUID,
                                                String typeName,
                                                String name,
                                                String nameParameterName,
                                                boolean forLineage,
                                                boolean forDuplicateProcessing,
                                                List<String> serviceSupportedZones,
                                                int startFrom,
                                                int pageSize,
                                                Date effectiveTime,
                                                String methodName)
                                         throws InvalidParameterException,
                                                PropertyServerException,
                                                UserNotAuthorizedException
        Return a list of referenceables with the requested qualified name. The match is via a Regular Expression (RegEx).
        Parameters:
        userId - calling user
        typeGUID - unique identifier of the asset type to search for (null for the generic Asset type)
        typeName - unique identifier of the asset type to search for (null for the generic Asset type)
        name - name to search for - this is a regular expression (RegEx)
        nameParameterName - property that provided the name
        forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
        forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
        serviceSupportedZones - list of supported zones for this service
        startFrom - starting element (used in paging through large result sets)
        pageSize - maximum number of results to return
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of B beans
        Throws:
        InvalidParameterException - one of the parameters is null or invalid.
        PropertyServerException - there is a problem retrieving information from the property server(s).
        UserNotAuthorizedException - the requesting user is not authorized to issue this request.
      • setBusinessSignificant

        public void setBusinessSignificant​(String userId,
                                           String beanGUID,
                                           String beanGUIDParameterName,
                                           String beanGUIDTypeName,
                                           String description,
                                           String scope,
                                           String businessCapabilityGUID,
                                           String methodName)
                                    throws InvalidParameterException,
                                           UserNotAuthorizedException,
                                           PropertyServerException
        Classify a referenceable as "BusinessSignificant" (this may effect the way that lineage is displayed).
        Parameters:
        userId - calling user
        beanGUID - unique identifier of entity to update
        beanGUIDParameterName - name of parameter providing beanGUID
        beanGUIDTypeName - type of bean
        description - description of why this is significant
        scope - scope of its business significance
        businessCapabilityGUID - unique identifier of the business capability that rates this as significant
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • getMoreInformation

        public List<B> getMoreInformation​(String userId,
                                          String startingGUID,
                                          String startingGUIDParameterName,
                                          String suppliedStartingTypeName,
                                          String suppliedResultingTypeName,
                                          int startFrom,
                                          int pageSize,
                                          String methodName)
                                   throws InvalidParameterException,
                                          PropertyServerException,
                                          UserNotAuthorizedException
        Returns the list of elements that are linked to provide more information. It uses the supportedZones supplied with the service.
        Parameters:
        userId - String userId of user making request.
        startingGUID - String unique id for element.
        startingGUIDParameterName - name of parameter supplying the GUID
        suppliedStartingTypeName - name of the type of object that the search begins with - null means referenceable
        suppliedResultingTypeName - name of the type of object that the search returns - null mean referenceable
        startFrom - int starting position for fist returned element.
        pageSize - int maximum number of elements to return on the call.
        methodName - String calling method
        Returns:
        a list of assets or
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getMoreInformation

        public List<B> getMoreInformation​(String userId,
                                          String startingGUID,
                                          String startingGUIDParameterName,
                                          String suppliedStartingTypeName,
                                          String suppliedResultingTypeName,
                                          List<String> serviceSupportedZones,
                                          int startFrom,
                                          int pageSize,
                                          Date effectiveTime,
                                          String methodName)
                                   throws InvalidParameterException,
                                          PropertyServerException,
                                          UserNotAuthorizedException
        Returns the list of elements that are linked to provide more information.
        Parameters:
        userId - String userId of user making request.
        startingGUID - String unique id for element.
        startingGUIDParameterName - name of parameter supplying the GUID
        suppliedStartingTypeName - name of the type of object that the search begins with - null means referenceable
        suppliedResultingTypeName - name of the type of object that the search returns - null mean referenceable
        serviceSupportedZones - supported zones for calling service
        startFrom - int starting position for fist returned element.
        pageSize - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - String calling method
        Returns:
        a list of assets or
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • saveSemanticAssignment

        public void saveSemanticAssignment​(String userId,
                                           String externalSourceGUID,
                                           String externalSourceName,
                                           String beanGUID,
                                           String beanGUIDParameter,
                                           String glossaryTermGUID,
                                           String glossaryTermGUIDParameter,
                                           String methodName)
                                    throws InvalidParameterException,
                                           PropertyServerException,
                                           UserNotAuthorizedException
        Create a simple relationship between a glossary term and a referenceable.
        Parameters:
        userId - calling user
        externalSourceGUID - guid of the software server capability entity that represented the external source - null for local
        externalSourceName - name of the software server capability entity that represented the external source - null for local
        beanGUID - unique identifier of the asset that is being described
        beanGUIDParameter - parameter supply the beanGUID
        glossaryTermGUID - unique identifier of the glossary term
        glossaryTermGUIDParameter - parameter supplying the list of GlossaryTermGUID
        methodName - calling method
        Throws:
        InvalidParameterException - the guid properties are invalid
        UserNotAuthorizedException - user not authorized to issue this request
        PropertyServerException - problem accessing the property server
      • saveSemanticAssignment

        public void saveSemanticAssignment​(String userId,
                                           String externalSourceGUID,
                                           String externalSourceName,
                                           String beanGUID,
                                           String beanGUIDParameter,
                                           String glossaryTermGUID,
                                           String glossaryTermGUIDParameter,
                                           String description,
                                           String expression,
                                           int statusOrdinal,
                                           int confidence,
                                           String createdBy,
                                           String steward,
                                           String source,
                                           Date effectiveFrom,
                                           Date effectiveTo,
                                           String methodName)
                                    throws InvalidParameterException,
                                           PropertyServerException,
                                           UserNotAuthorizedException
        Create a simple relationship between a glossary term and a referenceable.
        Parameters:
        userId - calling user
        externalSourceGUID - guid of the software server capability entity that represented the external source - null for local
        externalSourceName - name of the software server capability entity that represented the external source - null for local
        beanGUID - unique identifier of the element that is being described
        beanGUIDParameter - parameter supply the beanGUID
        glossaryTermGUID - unique identifier of the glossary term
        glossaryTermGUIDParameter - parameter supplying the list of GlossaryTermGUID
        description - description of the assignment
        expression - expression used to determine the assignment
        statusOrdinal - the status of the assignment
        confidence - how confident is the assignment - no confidence = 0 to complete confidence = 100
        createdBy - who/what created the assignment
        steward - which steward is responsible for assignment
        source - where was the source of the assignment
        effectiveFrom - starting time for this relationship (null for all time)
        effectiveTo - ending time for this relationship (null for all time)
        methodName - calling method
        Throws:
        InvalidParameterException - the guid properties are invalid
        UserNotAuthorizedException - user not authorized to issue this request
        PropertyServerException - problem accessing the property server
      • removeSemanticAssignment

        public void removeSemanticAssignment​(String userId,
                                             String externalSourceGUID,
                                             String externalSourceName,
                                             String beanGUID,
                                             String beanGUIDParameter,
                                             String glossaryTermGUID,
                                             String glossaryTermGUIDParameter,
                                             Date effectiveTime,
                                             String methodName)
                                      throws InvalidParameterException,
                                             UserNotAuthorizedException,
                                             PropertyServerException
        Remove the relationship between a glossary term and a referenceable (typically a field in the schema).
        Parameters:
        userId - calling user
        externalSourceGUID - guid of the software server capability entity that represented the external source - null for local
        externalSourceName - name of the software server capability entity that represented the external source
        beanGUID - unique identifier of the element that is being described
        beanGUIDParameter - parameter supply the beanGUID
        glossaryTermGUID - unique identifier of the glossary term
        glossaryTermGUIDParameter - parameter supplying the list of GlossaryTermGUID
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is null or invalid
        PropertyServerException - problem accessing property server
        UserNotAuthorizedException - security access problem
      • saveResourceListMember

        public void saveResourceListMember​(String userId,
                                           String externalSourceGUID,
                                           String externalSourceName,
                                           String beanGUID,
                                           String beanGUIDParameter,
                                           String memberGUID,
                                           String memberGUIDParameter,
                                           String resourceUse,
                                           boolean watchResource,
                                           Date effectiveFrom,
                                           Date effectiveTo,
                                           String methodName)
                                    throws InvalidParameterException,
                                           PropertyServerException,
                                           UserNotAuthorizedException
        Create a relationship between a referenceable and a resource it uses.
        Parameters:
        userId - calling user
        externalSourceGUID - guid of the software server capability entity that represented the external source - null for local
        externalSourceName - name of the software server capability entity that represented the external source - null for local
        beanGUID - unique identifier of the starting element
        beanGUIDParameter - parameter supplying the beanGUID
        memberGUID - unique identifier of the element to link
        memberGUIDParameter - parameter supplying the memberGUID
        resourceUse - description of the way that the resource list is used
        watchResource - should changes in the members result in notifications
        effectiveFrom - starting time for this relationship (null for all time)
        effectiveTo - ending time for this relationship (null for all time)
        methodName - calling method
        Throws:
        InvalidParameterException - the guid properties are invalid
        UserNotAuthorizedException - user not authorized to issue this request
        PropertyServerException - problem accessing the property server
      • removeResourceListMember

        public void removeResourceListMember​(String userId,
                                             String externalSourceGUID,
                                             String externalSourceName,
                                             String beanGUID,
                                             String beanGUIDParameter,
                                             String memberGUID,
                                             String memberGUIDParameter,
                                             Date effectiveTime,
                                             String methodName)
                                      throws InvalidParameterException,
                                             UserNotAuthorizedException,
                                             PropertyServerException
        Remove the relationship between a referenceable and a resource it uses.
        Parameters:
        userId - calling user
        externalSourceGUID - guid of the software server capability entity that represented the external source - null for local
        externalSourceName - name of the software server capability entity that represented the external source
        beanGUID - unique identifier of the referenceable
        beanGUIDParameter - parameter supplying beanGUID
        memberGUID - unique identifier of the glossary term
        memberGUIDParameter - parameter supplying memberGUID
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is null or invalid
        PropertyServerException - problem accessing property server
        UserNotAuthorizedException - security access problem
      • getCollectionMembers

        public List<B> getCollectionMembers​(String userId,
                                            String collectionGUID,
                                            String collectionGUIDParameterName,
                                            int startFrom,
                                            int pageSize,
                                            Date effectiveTime,
                                            String methodName)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Return the list of elements associated with a collection.
        Parameters:
        userId - calling user
        collectionGUID - unique identifier of the collection to query
        collectionGUIDParameterName - name of the parameter supplying collectionGUID
        startFrom - paging start point
        pageSize - maximum results that can be returned
        effectiveTime - the time that the retrieved elements must be effective for
        methodName - calling method
        Returns:
        list of metadata elements describing the definitions associated with the requested definition
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • linkElementsAsPeerDuplicates

        public void linkElementsAsPeerDuplicates​(String userId,
                                                 String element1GUID,
                                                 String element1GUIDParameter,
                                                 String element2GUID,
                                                 String element2GUIDParameter,
                                                 boolean setKnownDuplicate,
                                                 int statusIdentifier,
                                                 String steward,
                                                 String stewardTypeName,
                                                 String stewardPropertyName,
                                                 String source,
                                                 String notes,
                                                 String methodName)
                                          throws InvalidParameterException,
                                                 UserNotAuthorizedException,
                                                 PropertyServerException
        Create a simple relationship between two elements in an Asset description (typically the asset itself or attributes in their schema).
        Parameters:
        userId - calling user
        element1GUID - unique identifier of first element
        element1GUIDParameter - name of parameter supplying element1GUID
        element2GUID - unique identifier of second element
        element2GUIDParameter - name of parameter supplying element2GUID
        setKnownDuplicate - should the KnownDuplicate classification be set on the elements?
        statusIdentifier - what is the status of this relationship (negative means untrusted, 0 means unverified and positive means trusted)
        steward - identifier of the steward
        stewardTypeName - type of element used to identify the steward
        stewardPropertyName - property name used to identify steward
        source - source of the duplicate detection processing
        notes - notes for the steward
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is null or invalid
        PropertyServerException - problem accessing property server
        UserNotAuthorizedException - security access problem
      • unlinkElementsAsPeerDuplicates

        public void unlinkElementsAsPeerDuplicates​(String userId,
                                                   String element1GUID,
                                                   String element1GUIDParameter,
                                                   String element2GUID,
                                                   String element2GUIDParameter,
                                                   Date effectiveTime,
                                                   String methodName)
                                            throws InvalidParameterException,
                                                   UserNotAuthorizedException,
                                                   PropertyServerException
        Remove the relationship between two elements that marks them as duplicates.
        Parameters:
        userId - calling user
        element1GUID - unique identifier of first element
        element1GUIDParameter - name of parameter supplying element1GUID
        element2GUID - unique identifier of second element
        element2GUIDParameter - name of parameter supplying element2GUID
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is null or invalid or the elements are not linked as duplicates
        PropertyServerException - problem accessing property server
        UserNotAuthorizedException - security access problem