java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.model.search.XTDBQuery
Direct Known Subclasses:
XTDBGraphQuery

public class XTDBQuery extends Object
Captures the structure of a query against XTDB.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final clojure.lang.Symbol
     
    static final clojure.lang.Symbol
     
    static final clojure.lang.Keyword
     
    static final clojure.lang.Keyword
     
    static final clojure.lang.Symbol
     
    static final clojure.lang.Symbol
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Default constructor for a new query.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addClassificationConditions(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchClassifications searchClassifications, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector, boolean luceneEnabled, boolean luceneRegexes)
    Retrieve the set of conditions appropriate to XTDB for the provided Egeria conditions.
    void
    addConditions(List<clojure.lang.IPersistentCollection> xtdbConditions)
    Add the provided list of conditions to those to be included in the query.
    void
    addPropertyConditions(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchProperties searchProperties, String namespace, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector, boolean luceneEnabled, boolean luceneRegexes)
    Retrieve the set of conditions appropriate to XTDB for the provided Egeria conditions.
    void
    Add a condition to match either endpoint of a relationship to the provided reference (primary key).
    void
    addSequencing(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.SequencingOrder sequencingOrder, String sequencingProperty, String namespace, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector)
    Add the sequencing information onto the query.
    void
    addStatusLimiters(List<org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus> limitResultsByStatus, clojure.lang.Symbol toLimit)
    Add the provided statuses as limiters on which results should be retrieved from the query.
    void
    addTypeCondition(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefCategory category, String typeGuid, List<String> subtypeLimits)
    Add a condition to limit the type of the results by their TypeDef GUID.
    clojure.lang.IPersistentMap
    Retrieve the query object, as ready-to-be-submitted to XTDB API's query method.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DOC_ID

      public static final clojure.lang.Symbol DOC_ID
    • CREATE_TIME

      public static final clojure.lang.Symbol CREATE_TIME
    • UPDATE_TIME

      public static final clojure.lang.Symbol UPDATE_TIME
    • SORT_PROPERTY

      public static final clojure.lang.Symbol SORT_PROPERTY
    • SORT_ASCENDING

      public static final clojure.lang.Keyword SORT_ASCENDING
    • SORT_DESCENDING

      public static final clojure.lang.Keyword SORT_DESCENDING
  • Constructor Details

    • XTDBQuery

      public XTDBQuery()
      Default constructor for a new query.
  • Method Details

    • addRelationshipEndpointConditions

      public void addRelationshipEndpointConditions(String reference)
      Add a condition to match either endpoint of a relationship to the provided reference (primary key).
      Parameters:
      reference - the primary key value of an entity, used to match either end of a relationship
    • addTypeCondition

      public void addTypeCondition(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefCategory category, String typeGuid, List<String> subtypeLimits)
      Add a condition to limit the type of the results by their TypeDef GUID.
      Parameters:
      category - by which to limit results
      typeGuid - by which to limit the results (if null, will be ignored)
      subtypeLimits - limit the results to only these subtypes (if provided: ignored if typeGuid is null)
    • addConditions

      public void addConditions(List<clojure.lang.IPersistentCollection> xtdbConditions)
      Add the provided list of conditions to those to be included in the query.
      Parameters:
      xtdbConditions - list of conditions to add
    • addPropertyConditions

      public void addPropertyConditions(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchProperties searchProperties, String namespace, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector, boolean luceneEnabled, boolean luceneRegexes)
      Retrieve the set of conditions appropriate to XTDB for the provided Egeria conditions.
      Parameters:
      searchProperties - to translate
      namespace - by which to qualify properties
      typeNames - of all of the types we are including in the search
      xtdbConnector - connectivity to the repository
      luceneEnabled - indicates whether Lucene search index is configured (true) or not (false)
      luceneRegexes - indicates whether unquoted regexes should be treated as Lucene compatible (true) or not (false)
    • addClassificationConditions

      public void addClassificationConditions(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchClassifications searchClassifications, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector, boolean luceneEnabled, boolean luceneRegexes)
      Retrieve the set of conditions appropriate to XTDB for the provided Egeria conditions.
      Parameters:
      searchClassifications - to translate
      typeNames - of all of the types we are including in the search
      xtdbConnector - connectivity to the repository
      luceneEnabled - indicates whether Lucene search index is configured (true) or not (false)
      luceneRegexes - indicates whether unquoted regexes should be treated as Lucene compatible (true) or not (false)
    • addStatusLimiters

      public void addStatusLimiters(List<org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus> limitResultsByStatus, clojure.lang.Symbol toLimit)
      Add the provided statuses as limiters on which results should be retrieved from the query.
      Parameters:
      limitResultsByStatus - list of statuses by which to limit results
      toLimit - variable by which to limit by status (e.g. entity or relationship)
    • addSequencing

      public void addSequencing(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.SequencingOrder sequencingOrder, String sequencingProperty, String namespace, Set<String> typeNames, XTDBOMRSRepositoryConnector xtdbConnector)
      Add the sequencing information onto the query.
      Parameters:
      sequencingOrder - by which to sequence the results
      sequencingProperty - by which to sequence the results (required if sorting by property, otherwise ignored)
      namespace - by which to qualify the sorting property (required if sorting by property, otherwise ignored)
      typeNames - of all of the types we are including in the search (required if sorting by property, otherwise ignored)
      xtdbConnector - connectivity to the repository
    • getQuery

      public clojure.lang.IPersistentMap getQuery()
      Retrieve the query object, as ready-to-be-submitted to XTDB API's query method.
      Returns:
      IPersistentMap containing the query