Interface OpenMetadataStore

  • All Known Implementing Classes:
    OpenMetadataClient

    public interface OpenMetadataStore
    OpenMetadataStore provides access to metadata elements stored in the metadata repositories. It is implemented by the abstract class OpenMetadataClient and used by all of the governance action services to retrieve metadata. The concrete class for OpenMetadataClient is implemented by a metadata repository provider. In Egeria, this class is implemented in the Governance Engine OMAS client.
    • Method Detail

      • getRelatedMetadataElements

        List<RelatedMetadataElement> getRelatedMetadataElements​(String elementGUID,
                                                                int startingAtEnd,
                                                                String relationshipTypeName,
                                                                int startFrom,
                                                                int pageSize)
                                                         throws InvalidParameterException,
                                                                UserNotAuthorizedException,
                                                                PropertyServerException
        Retrieve the metadata elements connected to the supplied element.
        Parameters:
        elementGUID - unique identifier for the starting metadata element
        startingAtEnd - indicates which end to retrieve from (0 is "either end"; 1 is end1; 2 is end 2)
        relationshipTypeName - type name of relationships to follow (or null for all)
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of related elements
        Throws:
        InvalidParameterException - the unique identifier is null or not known; the relationship type is invalid
        UserNotAuthorizedException - the governance action service is not able to access the elements
        PropertyServerException - there is a problem accessing the metadata store
      • findMetadataElements

        List<OpenMetadataElement> findMetadataElements​(String metadataElementTypeName,
                                                       List<String> metadataElementSubtypeName,
                                                       SearchProperties searchProperties,
                                                       List<ElementStatus> limitResultsByStatus,
                                                       SearchClassifications matchClassifications,
                                                       String sequencingProperty,
                                                       SequencingOrder sequencingOrder,
                                                       int startFrom,
                                                       int pageSize)
                                                throws InvalidParameterException,
                                                       UserNotAuthorizedException,
                                                       PropertyServerException
        Return a list of metadata elements that match the supplied criteria. The results can be returned over many pages.
        Parameters:
        metadataElementTypeName - type of interest (null means any element type)
        metadataElementSubtypeName - optional list of the subtypes of the metadataElementTypeName to include in the search results. Null means all subtypes.
        searchProperties - Optional list of entity property conditions to match.
        limitResultsByStatus - By default, entities in all statuses (other than DELETE) are returned. However, it is possible to specify a list of statuses (eg ACTIVE) to restrict the results to. Null means all status values.
        matchClassifications - Optional list of classifications to match.
        sequencingProperty - String name of the property that is to be used to sequence the results. Null means do not sequence on a property name (see SequencingOrder).
        sequencingOrder - Enum defining how the results should be ordered.
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        a list of elements matching the supplied criteria; null means no matching elements in the metadata store.
        Throws:
        InvalidParameterException - one of the search parameters are is invalid
        UserNotAuthorizedException - the governance action service is not able to access the elements
        PropertyServerException - there is a problem accessing the metadata store
      • findRelationshipsBetweenMetadataElements

        List<RelatedMetadataElements> findRelationshipsBetweenMetadataElements​(String relationshipTypeName,
                                                                               SearchProperties searchProperties,
                                                                               String sequencingProperty,
                                                                               SequencingOrder sequencingOrder,
                                                                               int startFrom,
                                                                               int pageSize)
                                                                        throws InvalidParameterException,
                                                                               UserNotAuthorizedException,
                                                                               PropertyServerException
        Return a list of relationships that match the requested conditions. The results can be received as a series of pages.
        Parameters:
        relationshipTypeName - relationship's type. Null means all types (but may be slow so not recommended).
        searchProperties - Optional list of relationship property conditions to match.
        sequencingProperty - String name of the property that is to be used to sequence the results. Null means do not sequence on a property name (see SequencingOrder).
        sequencingOrder - Enum defining how the results should be ordered.
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        a list of relationships. Null means no matching relationships.
        Throws:
        InvalidParameterException - one of the search parameters are is invalid
        UserNotAuthorizedException - the governance action service is not able to access the elements
        PropertyServerException - there is a problem accessing the metadata store