Class: Riddle::Configuration::Index

Inherits:
Section
  • Object
show all
Defined in:
lib/riddle/configuration/index.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, *sources) ⇒ Index

Returns a new instance of Index.



29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/riddle/configuration/index.rb', line 29

def initialize(name, *sources)
  @name                     = name
  @sources                  = sources
  @morphologies             = []
  @stopword_files           = []
  @wordform_files           = []
  @exception_files          = []
  @ignore_characters        = []
  @prefix_field_names       = []
  @infix_field_names        = []
  @ngram_characters         = []
  @phrase_boundaries        = []
  @html_remove_element_tags = []
end

Instance Attribute Details

#blend_charsObject

Returns the value of attribute blend_chars.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def blend_chars
  @blend_chars
end

#blend_modeObject

Returns the value of attribute blend_mode.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def blend_mode
  @blend_mode
end

#charset_dictpathObject

Returns the value of attribute charset_dictpath.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def charset_dictpath
  @charset_dictpath
end

#charset_tableObject

Returns the value of attribute charset_table.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def charset_table
  @charset_table
end

#charset_typeObject

Returns the value of attribute charset_type.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def charset_type
  @charset_type
end

#dictObject

Returns the value of attribute dict.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def dict
  @dict
end

#docinfoObject

Returns the value of attribute docinfo.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def docinfo
  @docinfo
end

#enable_starObject

Returns the value of attribute enable_star.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def enable_star
  @enable_star
end

#exception_filesObject

Returns the value of attribute exception_files.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def exception_files
  @exception_files
end

#expand_keywordsObject

Returns the value of attribute expand_keywords.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def expand_keywords
  @expand_keywords
end

#hitless_wordsObject

Returns the value of attribute hitless_words.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def hitless_words
  @hitless_words
end

#html_index_attrsObject

Returns the value of attribute html_index_attrs.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def html_index_attrs
  @html_index_attrs
end

#html_remove_element_tagsObject

Returns the value of attribute html_remove_element_tags.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def html_remove_element_tags
  @html_remove_element_tags
end

#html_stripObject

Returns the value of attribute html_strip.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def html_strip
  @html_strip
end

#ignore_charactersObject

Returns the value of attribute ignore_characters.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def ignore_characters
  @ignore_characters
end

#index_exact_wordsObject

Returns the value of attribute index_exact_words.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def index_exact_words
  @index_exact_words
end

#index_spObject

Returns the value of attribute index_sp.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def index_sp
  @index_sp
end

#index_zonesObject

Returns the value of attribute index_zones.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def index_zones
  @index_zones
end

#infix_field_namesObject

Returns the value of attribute infix_field_names.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def infix_field_names
  @infix_field_names
end

#inplace_docinfo_gapObject

Returns the value of attribute inplace_docinfo_gap.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def inplace_docinfo_gap
  @inplace_docinfo_gap
end

#inplace_enableObject

Returns the value of attribute inplace_enable.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def inplace_enable
  @inplace_enable
end

#inplace_hit_gapObject

Returns the value of attribute inplace_hit_gap.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def inplace_hit_gap
  @inplace_hit_gap
end

#inplace_reloc_factorObject

Returns the value of attribute inplace_reloc_factor.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def inplace_reloc_factor
  @inplace_reloc_factor
end

#inplace_write_factorObject

Returns the value of attribute inplace_write_factor.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def inplace_write_factor
  @inplace_write_factor
end

#min_infix_lenObject

Returns the value of attribute min_infix_len.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def min_infix_len
  @min_infix_len
end

#min_prefix_lenObject

Returns the value of attribute min_prefix_len.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def min_prefix_len
  @min_prefix_len
end

#min_stemming_lenObject

Returns the value of attribute min_stemming_len.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def min_stemming_len
  @min_stemming_len
end

#min_word_lenObject

Returns the value of attribute min_word_len.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def min_word_len
  @min_word_len
end

#mlockObject

Returns the value of attribute mlock.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def mlock
  @mlock
end

#morphologiesObject

Returns the value of attribute morphologies.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def morphologies
  @morphologies
end

#nameObject

Returns the value of attribute name.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def name
  @name
end

#ngram_charactersObject

Returns the value of attribute ngram_characters.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def ngram_characters
  @ngram_characters
end

#ngram_lenObject

Returns the value of attribute ngram_len.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def ngram_len
  @ngram_len
end

#ondisk_dictObject

Returns the value of attribute ondisk_dict.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def ondisk_dict
  @ondisk_dict
end

#overshort_stepObject

Returns the value of attribute overshort_step.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def overshort_step
  @overshort_step
end

#parentObject

Returns the value of attribute parent.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def parent
  @parent
end

#pathObject

Returns the value of attribute path.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def path
  @path
end

#phrase_boundariesObject

Returns the value of attribute phrase_boundaries.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def phrase_boundaries
  @phrase_boundaries
end

#phrase_boundary_stepObject

Returns the value of attribute phrase_boundary_step.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def phrase_boundary_step
  @phrase_boundary_step
end

#prefix_field_namesObject

Returns the value of attribute prefix_field_names.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def prefix_field_names
  @prefix_field_names
end

#preopenObject

Returns the value of attribute preopen.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def preopen
  @preopen
end

#sourcesObject

Returns the value of attribute sources.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def sources
  @sources
end

#stopword_filesObject

Returns the value of attribute stopword_files.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def stopword_files
  @stopword_files
end

#stopwords_stepObject

Returns the value of attribute stopwords_step.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def stopwords_step
  @stopwords_step
end

#typeObject

Returns the value of attribute type.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def type
  @type
end

#wordform_filesObject

Returns the value of attribute wordform_files.



16
17
18
# File 'lib/riddle/configuration/index.rb', line 16

def wordform_files
  @wordform_files
end

Instance Method Details

#exceptionsObject



72
73
74
# File 'lib/riddle/configuration/index.rb', line 72

def exceptions
  nil_join @exception_files, " "
end

#exceptions=(exceptions) ⇒ Object



76
77
78
# File 'lib/riddle/configuration/index.rb', line 76

def exceptions=(exceptions)
  @exception_files = nil_split exceptions, ' '
end

#html_remove_elementsObject



112
113
114
# File 'lib/riddle/configuration/index.rb', line 112

def html_remove_elements
  nil_join @html_remove_element_tags, ", "
end

#html_remove_elements=(html_remove_elements) ⇒ Object



116
117
118
# File 'lib/riddle/configuration/index.rb', line 116

def html_remove_elements=(html_remove_elements)
  @html_remove_element_tags = nil_split html_remove_elements, /,\s?/
end

#ignore_charsObject



80
81
82
# File 'lib/riddle/configuration/index.rb', line 80

def ignore_chars
  nil_join @ignore_characters, ", "
end

#ignore_chars=(ignore_chars) ⇒ Object



84
85
86
# File 'lib/riddle/configuration/index.rb', line 84

def ignore_chars=(ignore_chars)
  @ignore_characters = nil_split ignore_chars, /,\s?/
end

#infix_fieldsObject



92
93
94
# File 'lib/riddle/configuration/index.rb', line 92

def infix_fields
  nil_join @infix_field_names, ", "
end

#morphologyObject



48
49
50
# File 'lib/riddle/configuration/index.rb', line 48

def morphology
  nil_join @morphologies, ", "
end

#morphology=(morphology) ⇒ Object



52
53
54
# File 'lib/riddle/configuration/index.rb', line 52

def morphology=(morphology)
  @morphologies = nil_split morphology, /,\s?/
end

#ngram_charsObject



96
97
98
# File 'lib/riddle/configuration/index.rb', line 96

def ngram_chars
  nil_join @ngram_characters, ", "
end

#ngram_chars=(ngram_chars) ⇒ Object



100
101
102
# File 'lib/riddle/configuration/index.rb', line 100

def ngram_chars=(ngram_chars)
  @ngram_characters = nil_split ngram_chars, /,\s?/
end

#phrase_boundaryObject



104
105
106
# File 'lib/riddle/configuration/index.rb', line 104

def phrase_boundary
  nil_join @phrase_boundaries, ", "
end

#phrase_boundary=(phrase_boundary) ⇒ Object



108
109
110
# File 'lib/riddle/configuration/index.rb', line 108

def phrase_boundary=(phrase_boundary)
  @phrase_boundaries = nil_split phrase_boundary, /,\s?/
end

#prefix_fieldsObject



88
89
90
# File 'lib/riddle/configuration/index.rb', line 88

def prefix_fields
  nil_join @prefix_field_names, ", "
end

#renderObject

Raises:



120
121
122
123
124
125
126
127
128
129
130
131
# File 'lib/riddle/configuration/index.rb', line 120

def render
  raise ConfigurationError, "#{@name} #{@sources.inspect} #{@path} #{@parent}" unless valid?
  
  inherited_name = "#{name}"
  inherited_name << " : #{parent}" if parent
  (
    @sources.collect { |s| s.render } +
    ["index #{inherited_name}", "{"] +
    settings_body +
    ["}", ""]
  ).join("\n")
end

#sourceObject



44
45
46
# File 'lib/riddle/configuration/index.rb', line 44

def source
  @sources.collect { |s| s.name }
end

#stopwordsObject



56
57
58
# File 'lib/riddle/configuration/index.rb', line 56

def stopwords
  nil_join @stopword_files, " "
end

#stopwords=(stopwords) ⇒ Object



60
61
62
# File 'lib/riddle/configuration/index.rb', line 60

def stopwords=(stopwords)
  @stopword_files = nil_split stopwords, ' '
end

#valid?Boolean

Returns:

  • (Boolean)


133
134
135
# File 'lib/riddle/configuration/index.rb', line 133

def valid?
  (!@name.nil?) && (!( @sources.length == 0 || @path.nil? ) || !@parent.nil?)
end

#wordformsObject



64
65
66
# File 'lib/riddle/configuration/index.rb', line 64

def wordforms
  nil_join @wordform_files, " "
end

#wordforms=(wordforms) ⇒ Object



68
69
70
# File 'lib/riddle/configuration/index.rb', line 68

def wordforms=(wordforms)
  @wordform_files = nil_split wordforms, ' '
end