class Libis::Ingester::MetadataSearchCollector
Protected Instance Methods
get_metadata(item, term)
click to toggle source
# File lib/libis/ingester/tasks/metadata_search_collector.rb, line 46 def get_metadata(item, term) @metadata_cache ||= {} @metadata_cache[term] ||= search(term) debug 'Metadata for item \'%s\' not found.', item.namepath unless @metadata_cache[term] @metadata_cache[term] end
get_record(item)
click to toggle source
# File lib/libis/ingester/tasks/metadata_search_collector.rb, line 35 def get_record(item) term = get_search_term(item) debug "search term: '#{term}'" return nil if term.blank? item.properties['metadata_search_term'] = term item.save! get_metadata(item, term) end
get_search_term(item)
click to toggle source
# File lib/libis/ingester/tasks/metadata_search_collector.rb, line 55 def get_search_term(item) if parameter(:match_regex) debug "match_regex '#{parameter :match_regex}' found. Evaluating '#{parameter :match_term}'" match_term = Kernel::eval parameter(:match_term) debug "Match term is now '#{match_term}'" return nil unless match_term =~ Regexp.new(parameter(:match_regex)) debug "Match term matches match regex" end parameter(:term).blank? ? item.name : Kernel::eval(parameter(:term)) end
search(_)
click to toggle source
# File lib/libis/ingester/tasks/metadata_search_collector.rb, line 66 def search(_) nil end