Module: Graphiti::ActiveGraph::Scoping::Internal::SortingAliases

Included in:
Graphiti::ActiveGraph::Scoping::Include
Defined in:
lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb

Overview

Carrying forward valriables from neo4j procedure call to sort with include

Instance Method Summary collapse

Instance Method Details

#add_extra_vars_to_query?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb', line 11

def add_extra_vars_to_query?
  resource.extra_attributes.present? && (query.sorts.present? || query.deep_sort.present?)
end

#deep_sort_keysObject



15
16
17
# File 'lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb', line 15

def deep_sort_keys
  (query.deep_sort || []).collect { |sort| sort.keys.first.first }
end

#queryObject



23
24
25
# File 'lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb', line 23

def query
  @opts[:query_obj]
end

#sort_keysObject



19
20
21
# File 'lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb', line 19

def sort_keys
  query.sorts.collect(&:keys).flatten
end

#with_vars_for_sortObject



6
7
8
9
# File 'lib/graphiti/active_graph/scoping/internal/sorting_aliases.rb', line 6

def with_vars_for_sort
  [] unless add_extra_vars_to_query?
  (deep_sort_keys + sort_keys) & resource.extra_attributes.keys - graphiti_query_vars.map(&:to_sym)
end