Module: ElasticGraph::QueryInterceptor::GraphQLExtension

Defined in:
lib/elastic_graph/query_interceptor/graphql_extension.rb

Instance Method Summary collapse

Instance Method Details

#datastore_query_adaptersObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/elastic_graph/query_interceptor/graphql_extension.rb', line 16

def datastore_query_adapters
  @datastore_query_adapters ||= begin
     = .graphql_extension_modules.filter_map do |ext_mod|
      Support::HashUtil.stringify_keys(ext_mod.extension_config) if ext_mod.extension_class == GraphQLExtension
    end

    interceptors = Config
      .from_parsed_yaml(config.extension_settings, parsed_runtime_metadata_hashes: )
      .interceptors
      .map { |data| data.klass.new(elasticgraph_graphql: self, config: data.config) }

    super + [DatastoreQueryAdapter.new(interceptors)]
  end
end