( ctx *search.SearchContext)
| 213 | } |
| 214 | |
| 215 | func (s *streamer) MakeDocumentMatchHandler( |
| 216 | ctx *search.SearchContext) (search.DocumentMatchHandler, bool, error) { |
| 217 | var highlighter highlight.Highlighter |
| 218 | if s.req.Highlight != nil { |
| 219 | var err error |
| 220 | // get the right highlighter |
| 221 | highlighter, err = bleve.Config.Cache.HighlighterNamed( |
| 222 | bleve.Config.DefaultHighlighter) |
| 223 | if err != nil { |
| 224 | return nil, false, err |
| 225 | } |
| 226 | if s.req.Highlight.Style != nil { |
| 227 | highlighter, err = bleve.Config.Cache.HighlighterNamed( |
| 228 | *s.req.Highlight.Style) |
| 229 | if err != nil { |
| 230 | return nil, false, err |
| 231 | } |
| 232 | } |
| 233 | if highlighter == nil { |
| 234 | return nil, false, fmt.Errorf("no highlighter named `%s` registered", |
| 235 | *s.req.Highlight.Style) |
| 236 | } |
| 237 | } |
| 238 | |
| 239 | dmh := docMatchHandler{ |
| 240 | s: s, |
| 241 | ctx: ctx, |
| 242 | bhits: make([]byte, 0, DefaultStreamBatchSize*50), |
| 243 | offsets: make([]uint64, 0, DefaultStreamBatchSize), |
| 244 | highlighter: highlighter, |
| 245 | } |
| 246 | dmh.bhits = append(dmh.bhits, sliceStart...) |
| 247 | |
| 248 | if sdm, multiCollIndex := |
| 249 | metaFieldValCache.getSourceDetailsMap(s.index); multiCollIndex { |
| 250 | dmh.collNameMap = sdm.collUIDNameMap |
| 251 | } |
| 252 | |
| 253 | return dmh.documentMatchHandler, true, nil |
| 254 | } |
nothing calls this directly
no test coverage detected