class AbstractDictionary

Public Instance Methods

__basetype() click to toggle source
# File lib/mdbe/database_views/abstract_dictionary.rb, line 7
def __basetype
  :dictionary
end
to_database_view(depth, ranges = {}, params = {}) click to toggle source
Calls superclass method Object#to_database_view
# File lib/mdbe/database_views/abstract_dictionary.rb, line 11
def to_database_view(depth, ranges = {}, params = {})
  obj = super

  if depth > 0
    index = 1

    obj[:elements] = {}
    obj[:elementsSize] = self.size

    range_from = ranges[:elements] ? Integer(ranges[:elements][0]) : 1
    range_to = ranges[:elements] ? Integer(ranges[:elements][1]) : 10

    if (params[:allElements])
      range_from = 1
      range_to = self.size
    end

    self.__each_key_and_value do |k, v|
      if (index >= range_from)
        if (index > range_to)
          break
        else
          obj[:elements][index] = [k.to_database_view(depth - 1, {}, params), v.to_database_view(depth - 1, {}, params)]
        end
      end

      index = index + 1
    end
  end

  return obj
end