module Dynamoid::Indexes

Builds all indexes present on the model.

Public Instance Methods

key_for_index(index) click to toggle source
# File lib/dynamoid/indexes.rb, line 46
def key_for_index(index)
  self.class.key_for_index(index, index.collect{|i| self.send(i)})
end
save_indexes() click to toggle source
# File lib/dynamoid/indexes.rb, line 50
def save_indexes
  self.class.indexes.each do |index|
    existing = Dynamoid::Adapter.get_item(self.class.index_table_name(index), self.key_for_index(index))
    ids = existing ? existing[:ids] : Set.new
    Dynamoid::Adapter.put_item(self.class.index_table_name(index), {self.class.index_key_name(index).to_sym => self.key_for_index(index), :ids => ids.merge([self.id])})
  end
end