Sha256: 9ca21506f47d55e0409cdbb71afe4312d2b770a9ab6b03d559d17503d388c34b
Contents?: true
Size: 1.01 KB
Versions: 5
Compression:
Stored size: 1.01 KB
Contents
module Cadet module BatchInserter module CadetIndex class Index def initialize(lucene_index, name) @name = name.to_sym @property_index = {} @lucene_index = lucene_index end def add(node, property, value) @property_index[property.to_sym] ||= {} @property_index[property.to_sym][value] ||= [] @property_index[property.to_sym][value] << node end def get(property, value) @property_index[property.to_sym] ||= {} @property_index[property.to_sym][value] || [] end def flush lucene_node_index = @lucene_index.nodeIndex(@name, {"type" => "exact"}) @property_index.each do |property, propval_to_node_mappings| propval_to_node_mappings.each do |value, nodes| nodes.each do |node| lucene_node_index.add(node, {property.to_java_string => value}) end end end end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems