class GraphQL::Relay::MongoRelationConnection

A connection implementation to expose MongoDB collection objects. It works for:

Private Instance Methods

limit_nodes(sliced_nodes, limit) click to toggle source
# File lib/graphql/relay/mongo_relation_connection.rb, line 22
def limit_nodes(sliced_nodes, limit)
  if limit == 0
    if sliced_nodes.respond_to?(:none) # added in Mongoid 4.0
      sliced_nodes.without_options.none
    else
      sliced_nodes.where(id: nil) # trying to simulate #none for 3.1.7
    end
  else
    sliced_nodes.limit(limit)
  end
end
relation_count(relation) click to toggle source
# File lib/graphql/relay/mongo_relation_connection.rb, line 17
def relation_count(relation)
  # Must perform query (hence #to_a) to count results https://jira.mongodb.org/browse/MONGOID-2325
  relation.to_a.count
end
relation_limit(relation) click to toggle source
# File lib/graphql/relay/mongo_relation_connection.rb, line 13
def relation_limit(relation)
  relation.options.limit
end
relation_offset(relation) click to toggle source
# File lib/graphql/relay/mongo_relation_connection.rb, line 9
def relation_offset(relation)
  relation.options.skip
end