Class: GraphQL::PersistedQueries::StoreAdapters::BaseStoreAdapter

Inherits:
Object
  • Object
show all
Includes:
Tracing::Traceable
Defined in:
lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb

Overview

Base class for all store adapters

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(_options) ⇒ BaseStoreAdapter

Returns a new instance of BaseStoreAdapter.



11
12
13
# File 'lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb', line 11

def initialize(_options)
  @name = :base
end

Instance Attribute Details

#tracers=(value) ⇒ Object (writeonly)

Sets the attribute tracers

Parameters:

  • value

    the value to set the attribute tracers to.



9
10
11
# File 'lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb', line 9

def tracers=(value)
  @tracers = value
end

Instance Method Details

#fetch_query(hash) ⇒ Object



15
16
17
18
19
20
# File 'lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb', line 15

def fetch_query(hash)
  fetch(hash).tap do |result|
    event = result ? "cache_hit" : "cache_miss"
    trace("fetch_query.#{event}", adapter: @name)
  end
end

#save_query(hash, query) ⇒ Object



22
23
24
# File 'lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb', line 22

def save_query(hash, query)
  trace("save_query", adapter: @name) { save(hash, query) }
end