Module: SearchObject::Plugin::Graphql

Defined in:
lib/search_object/plugin/graphql.rb,
lib/search_object/plugin/graphql/version.rb

Defined Under Namespace

Modules: ClassMethods Classes: MissingTypeDefinitionError, NotIncludedInResolverError

Constant Summary collapse

VERSION =
'1.0.5'

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#contextObject (readonly)

Returns the value of attribute context.



13
14
15
# File 'lib/search_object/plugin/graphql.rb', line 13

def context
  @context
end

#objectObject (readonly)

Returns the value of attribute object.



13
14
15
# File 'lib/search_object/plugin/graphql.rb', line 13

def object
  @object
end

Class Method Details

.included(base) ⇒ Object



6
7
8
9
10
11
# File 'lib/search_object/plugin/graphql.rb', line 6

def self.included(base)
  raise NotIncludedInResolverError, base unless base.ancestors.include? GraphQL::Schema::Resolver

  base.include SearchObject::Plugin::Enum
  base.extend ClassMethods
end

Instance Method Details

#initialize(filters: {}, object: nil, context: {}, scope: nil, field: nil) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/search_object/plugin/graphql.rb', line 15

def initialize(filters: {}, object: nil, context: {}, scope: nil, field: nil)
  @object = object
  @context = context
  @field = field

  @arguments_by_keyword = {}

  super filters: filters, scope: scope, field: field
end

#resolve(args = {}) ⇒ Object



26
27
28
29
# File 'lib/search_object/plugin/graphql.rb', line 26

def resolve(args = {})
  self.params = args.to_h
  results
end