Class: ElasticGraph::GraphQL::DatastoreQuery::Builder
- Inherits:
-
Object
- Object
- ElasticGraph::GraphQL::DatastoreQuery::Builder
- Defined in:
- lib/elastic_graph/graphql/datastore_query.rb
Overview
Encapsulates dependencies of ‘Query`, giving us something we can expose off of `application` to build queries when desired.
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.with(runtime_metadata:, logger:, **query_defaults) ⇒ Object
348 349 350 |
# File 'lib/elastic_graph/graphql/datastore_query.rb', line 348 def self.with(runtime_metadata:, logger:, **query_defaults) new(runtime_metadata: , logger: logger, query_defaults: query_defaults) end |
Instance Method Details
#index_expression_builder ⇒ Object
356 357 358 |
# File 'lib/elastic_graph/graphql/datastore_query.rb', line 356 def index_expression_builder @index_expression_builder ||= IndexExpressionBuilder.new(schema_names: .schema_element_names) end |
#new_query(**options) ⇒ Object
360 361 362 363 364 365 366 367 368 |
# File 'lib/elastic_graph/graphql/datastore_query.rb', line 360 def new_query(**) DatastoreQuery.new( routing_picker: routing_picker, index_expression_builder: index_expression_builder, logger: logger, schema_element_names: .schema_element_names, **query_defaults.merge() ) end |
#routing_picker ⇒ Object
352 353 354 |
# File 'lib/elastic_graph/graphql/datastore_query.rb', line 352 def routing_picker @routing_picker ||= RoutingPicker.new(schema_names: .schema_element_names) end |