Guest User

Untitled

a guest
Feb 20th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.68 KB | None | 0 0
  1. if @params[:highlighting]
  2. hash[:hl] = true
  3. hash["hl.fl"] = @params[:highlighting][:field_list].join(',') if @params[:highlighting][:field_list]
  4.  
  5. snippets = @params[:highlighting][:max_snippets]
  6. if snippets
  7. if snippets.kind_of? Hash
  8. if snippets[:default]
  9. hash["hl.snippets"] = snippets[:default]
  10. end
  11. if snippets[:fields]
  12. snippets[:fields].each do |k,v|
  13. hash["f.#{k}.hl.snippets"] = v
  14. end
  15. end
  16. else
  17. hash["hl.snippets"] = snippets
  18. end
  19. end
  20.  
  21. fragsize = @params[:highlighting][:fragment_size]
  22. if fragsize
  23. if fragsize.kind_of? Hash
  24. if fragsize[:default]
  25. hash["hl.fragsize"] = fragsize[:default]
  26. end
  27. if fragsize[:fields]
  28. fragsize[:fields].each do |k,v|
  29. hash["f.#{k}.hl.fragsize"] = v
  30. end
  31. end
  32. else
  33. hash["hl.fragsize"] = fragsize
  34. end
  35. end
  36.  
  37. rfm = @params[:highlighting][:require_field_match]
  38. if nil != rfm
  39. if rfm.kind_of? Hash
  40. if nil != rfm[:default]
  41. hash["hl.requireFieldMatch"] = rfm[:default]
  42. end
  43. if rfm[:fields]
  44. rfm[:fields].each do |k,v|
  45. hash["f.#{k}.hl.requireFieldMatch"] = v
  46. end
  47. end
  48. else
  49. hash["hl.requireFieldMatch"] = rfm
  50. end
  51. end
  52.  
  53. mac = @params[:highlighting][:max_analyzed_chars]
  54. if mac
  55. if mac.kind_of? Hash
  56. if mac[:default]
  57. hash["hl.maxAnalyzedChars"] = mac[:default]
  58. end
  59. if mac[:fields]
  60. mac[:fields].each do |k,v|
  61. hash["f.#{k}.hl.maxAnalyzedChars"] = v
  62. end
  63. end
  64. else
  65. hash["hl.maxAnalyzedChars"] = mac
  66. end
  67. end
  68.  
  69. prefix = @params[:highlighting][:prefix]
  70. if prefix
  71. if prefix.kind_of? Hash
  72. if prefix[:default]
  73. hash["hl.simple.pre"] = prefix[:default]
  74. end
  75. if prefix[:fields]
  76. prefix[:fields].each do |k,v|
  77. hash["f.#{k}.hl.simple.pre"] = v
  78. end
  79. end
  80. else
  81. hash["hl.simple.pre"] = prefix
  82. end
  83. end
  84.  
  85. suffix = @params[:highlighting][:suffix]
  86. if suffix
  87. if suffix.kind_of? Hash
  88. if suffix[:default]
  89. hash["hl.simple.post"] = suffix[:default]
  90. end
  91. if suffix[:fields]
  92. suffix[:fields].each do |k,v|
  93. hash["f.#{k}.hl.simple.post"] = v
  94. end
  95. end
  96. else
  97. hash["hl.simple.post"] = suffix
  98. end
  99. end
  100.  
  101. formatter = @params[:highlighting][:formatter]
  102. if formatter
  103. if formatter.kind_of? Hash
  104. if formatter[:default]
  105. hash["hl.formatter"] = formatter[:default]
  106. end
  107. if formatter[:fields]
  108. formatter[:fields].each do |k,v|
  109. hash["f.#{k}.hl.formatter"] = v
  110. end
  111. end
  112. else
  113. hash["hl.formatter"] = formatter
  114. end
  115. end
  116.  
  117. fragmenter = @params[:highlighting][:fragmenter]
  118. if fragmenter
  119. if fragmenter.kind_of? Hash
  120. if fragmenter[:default]
  121. hash["hl.fragmenter"] = fragmenter[:default]
  122. end
  123. if fragmenter[:fields]
  124. fragmenter[:fields].each do |k,v|
  125. hash["f.#{k}.hl.fragmenter"] = v
  126. end
  127. end
  128. else
  129. hash["hl.fragmenter"] = fragmenter
  130. end
  131. end
  132.  
  133. merge_contiguous = @params[:highlighting][:merge_contiguous]
  134. if nil != merge_contiguous
  135. if merge_contiguous.kind_of? Hash
  136. if nil != merge_contiguous[:default]
  137. hash["hl.mergeContiguous"] = merge_contiguous[:default]
  138. end
  139. if merge_contiguous[:fields]
  140. merge_contiguous[:fields].each do |k,v|
  141. hash["f.#{k}.hl.mergeContiguous"] = v
  142. end
  143. end
  144. else
  145. hash["hl.mergeContiguous"] = merge_contiguous
  146. end
  147. end
  148.  
  149. increment = @params[:highlighting][:increment]
  150. if increment
  151. if increment.kind_of? Hash
  152. if increment[:default]
  153. hash["hl.increment"] = increment[:default]
  154. end
  155. if increment[:fields]
  156. increment[:fields].each do |k,v|
  157. hash["f.#{k}.hl.increment"] = v
  158. end
  159. end
  160. else
  161. hash["hl.increment"] = increment
  162. end
  163. end
  164.  
  165. # support "old style"
  166. alternate_fields = @params[:highlighting][:alternate_fields]
  167. if alternate_fields
  168. alternate_fields.each do |f,v|
  169. hash["f.#{f}.hl.alternateField"] = v
  170. end
  171. end
  172.  
  173. alternate_field = @params[:highlighting][:alternate_field]
  174. if alternate_field
  175. if alternate_field.kind_of? Hash
  176. if alternate_field[:default]
  177. hash["hl.alternateField"] = alternate_field[:default]
  178. end
  179. if alternate_field[:fields]
  180. alternate_field[:fields].each do |k,v|
  181. hash["f.#{k}.hl.alternateField"] = v
  182. end
  183. end
  184. else
  185. hash["hl.alternateField"] = alternate_field
  186. end
  187. end
  188.  
  189. mafl = @params[:highlighting][:max_alternate_field_length]
  190. if mafl
  191. if mafl.kind_of? Hash
  192. if mafl[:default]
  193. hash["hl.maxAlternateFieldLength"] = mafl[:default]
  194. end
  195. if mafl[:fields]
  196. mafl[:fields].each do |k,v|
  197. hash["f.#{k}.hl.maxAlternateFieldLength"] = v
  198. end
  199. else
  200. # support "old style"
  201. mafl.each do |k,v|
  202. hash["f.#{k}.hl.maxAlternateFieldLength"] = v
  203. end
  204. end
  205. else
  206. hash["hl.maxAlternateFieldLength"] = mafl
  207. end
  208. end
  209.  
  210. hash["hl.usePhraseHighlighter"] = @params[:highlighting][:use_phrase_highlighter]
  211.  
  212. regex = @params[:highlighting][:regex]
  213. if regex
  214. if regex[:slop]
  215. if regex[:slop].kind_of? Hash
  216. if regex[:slop][:default]
  217. hash["hl.regex.slop"] = regex[:slop][:default]
  218. end
  219. if regex[:slop][:fields]
  220. regex[:slop][:fields].each do |k,v|
  221. hash["f.#{k}.hl.regex.slop"] = v
  222. end
  223. end
  224. else
  225. hash["hl.regex.slop"] = regex[:slop]
  226. end
  227. end
  228. if regex[:pattern]
  229. if regex[:pattern].kind_of? Hash
  230. if regex[:pattern][:default]
  231. hash["hl.regex.pattern"] = regex[:pattern][:default]
  232. end
  233. if regex[:pattern][:fields]
  234. regex[:pattern][:fields].each do |k,v|
  235. hash["f.#{k}.hl.regex.pattern"] = v
  236. end
  237. end
  238. else
  239. hash["hl.regex.pattern"] = regex[:pattern]
  240. end
  241. end
  242. if regex[:max_analyzed_chars]
  243. if regex[:max_analyzed_chars].kind_of? Hash
  244. if regex[:max_analyzed_chars][:default]
  245. hash["hl.regex.maxAnalyzedChars"] = regex[:max_analyzed_chars][:default]
  246. end
  247. if regex[:max_analyzed_chars][:fields]
  248. regex[:max_analyzed_chars][:fields].each do |k,v|
  249. hash["f.#{k}.hl.regex.maxAnalyzedChars"] = v
  250. end
  251. end
  252. else
  253. hash["hl.regex.maxAnalyzedChars"] = regex[:max_analyzed_chars]
  254. end
  255. end
  256. end
  257.  
  258. end
Add Comment
Please, Sign In to add comment