Class: GraphQL::Schema::IntrospectionSystem::PerFieldProxyResolve

Inherits:
Object
  • Object
show all
Defined in:
lib/graphql/schema/introspection_system.rb

Instance Method Summary collapse

Constructor Details

#initialize(object_class:, inner_resolve:) ⇒ PerFieldProxyResolve

Returns a new instance of PerFieldProxyResolve.



76
77
78
79
# File 'lib/graphql/schema/introspection_system.rb', line 76

def initialize(object_class:, inner_resolve:)
  @object_class = object_class
  @inner_resolve = inner_resolve
end

Instance Method Details

#call(obj, args, ctx) ⇒ Object



81
82
83
84
85
86
87
88
89
# File 'lib/graphql/schema/introspection_system.rb', line 81

def call(obj, args, ctx)
  query_ctx = ctx.query.context
  # Remove the QueryType wrapper
  if obj.is_a?(GraphQL::Schema::Object)
    obj = obj.object
  end
  wrapped_object = @object_class.authorized_new(obj, query_ctx)
  @inner_resolve.call(wrapped_object, args, ctx)
end