graphql-rb 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d9e85ee1f949bceb0fe95f2dada16f74ffc19e0d
4
- data.tar.gz: 252501b803d6731e69043cda2ad89c1954b781db
3
+ metadata.gz: 937f24e359a15a25d629f4b31ce3bece3339e88f
4
+ data.tar.gz: 15030d0283c03ba88bad726e1592e688eafe92c2
5
5
  SHA512:
6
- metadata.gz: 9c94dccf0f87b8f7445ed82f96dd92314e172c6b08eec7e46825f09b01c3616790dcdd519e739cf02b39bd561d29fa3bc7d0ef2c28f6d40e5f2274cd74837425
7
- data.tar.gz: ed564c11be1c16c1638ddc58ac2ed569dab46bac35337919e6daaf054831b228123a8013c279ad0684c1550a5a738ea15ae4d4646d4b692c988bf8d13388ae53
6
+ metadata.gz: 37c9f986ef04796ae4a4385d8c051064c1184803b92d30a3ee91b973e67b31d8ae18de18f53defab7ec0ea391e19a110f9a5fe3434adeba72015ac4846d90152
7
+ data.tar.gz: 7f5136940b38fab58a8f9db8c4d64d26edfd2861f0f6b0eadda57c67237a004b5de58e32fde49d9ff7ecd78decf2e7878c7e7bad27d72a817f66f71704c48a7f
@@ -21,8 +21,8 @@ module GraphQL
21
21
  end
22
22
 
23
23
  def self._pool
24
- Celluloid::Actor[pool_id] || Worker.supervise(as: pool_id)
25
- Celluloid::Actor[pool_id]
24
+ Celluloid::Actor[pool_id] ||= Worker.pool#(as: pool_id)
25
+ # Celluloid::Actor[pool_id]
26
26
  end
27
27
 
28
28
  def self.pool_id
@@ -23,7 +23,7 @@ module GraphQL
23
23
  arguments = [
24
24
  object,
25
25
  materialize_arguments(object_type, context[:variables]),
26
- context
26
+ context.merge(parent_type: object_type)
27
27
  ]
28
28
 
29
29
  resolve = schema_field(object_type).resolve
@@ -41,6 +41,7 @@ module GraphQL
41
41
  end
42
42
  end
43
43
 
44
+
44
45
  def schema_field(object_type)
45
46
  case
46
47
  when GraphQL::Introspection.meta_field?(name)
@@ -14,30 +14,34 @@ module GraphQL
14
14
  #
15
15
  #
16
16
  def evaluate(context, object_type, object)
17
- Execution::Pool.future do
17
+ collect_fields(context, object_type).reduce({}) do |memo, (key, fields)|
18
+ field = fields.first
19
+ field_definition = case
20
+
21
+ when GraphQL::Introspection.meta_field?(field.name)
22
+ GraphQL::Introspection.meta_field(field.name)
23
+ else
24
+ object_type.field(field.name)
25
+ end
26
+
18
27
 
19
- collect_fields(context, object_type).reduce({}) do |memo, (key, fields)|
20
- field = fields.first
21
- field_definition = case
28
+ memo[key.to_sym] = begin
29
+ resolved_object = field.resolve(context, object_type, object)
22
30
 
23
- when GraphQL::Introspection.meta_field?(field.name)
24
- GraphQL::Introspection.meta_field(field.name)
31
+ if resolved_object.is_a?(Celluloid::Future)
32
+ Execution::Pool.future do
33
+ complete_value(context, field_definition.type, resolved_object.value, merge_selection_sets(fields))
34
+ end
25
35
  else
26
- object_type.field(field.name)
36
+ complete_value(context, field_definition.type, resolved_object, merge_selection_sets(fields))
27
37
  end
28
38
 
39
+ rescue Celluloid::TaskTerminated => e
40
+ context[:errors] << "Field '#{field.name}' of '#{object_type}' error: #{e}"
41
+ nil
42
+ end unless field_definition.nil?
29
43
 
30
- memo[key.to_sym] = begin
31
- resolution_context = context.merge({ parent_type: object_type })
32
- resolved_object = field.resolve(resolution_context, object_type, object)
33
- complete_value(context, field_definition.type, resolved_object, merge_selection_sets(fields))
34
- rescue Celluloid::TaskTerminated => e
35
- context[:errors] << "Field '#{field.name}' of '#{object_type}' error: #{e}"
36
- nil
37
- end unless field_definition.nil?
38
-
39
- memo
40
- end
44
+ memo
41
45
  end
42
46
  end
43
47
 
@@ -105,8 +109,6 @@ module GraphQL
105
109
  def complete_value(context, field_type, resolved_object, selection_set)
106
110
  return nil if resolved_object.nil?
107
111
 
108
- resolved_object = resolved_object.value if resolved_object.is_a?(Celluloid::Future)
109
-
110
112
  case field_type
111
113
  when GraphQLNonNull
112
114
  completed_object = complete_value(context, field_type.of_type, resolved_object, selection_set)
@@ -1,3 +1,3 @@
1
1
  module GraphQL
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphql-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eugene Kovalev