module SdbDal class IndexDescription < DomainAttributeDescription include SdbFormatter attr_accessor :columns def self.crypto @@crypto||=Crypto.new @@crypto end def initialize(name,columns,is_encrypted=false) self.name=name self.columns=columns self.value_type =:string self.is_primary_key=false self.is_encrypted=is_encrypted end def format_index_entry(attribute_descriptions,attribute_values) result="" columns.each do |column| if column.respond_to?(:transform) result << column.transform(attribute_values[column.source_column] ) else result << attribute_descriptions[column].format_for_sdb(attribute_values[column]).to_s end result << "&" end result end def format_for_sdb(value) #don't encrypt because the individual elements are encrypted return value end end end