Example usage for org.apache.solr.core PluginInfo getChildren

List of usage examples for org.apache.solr.core PluginInfo getChildren

Introduction

In this page you can find the example usage for org.apache.solr.core PluginInfo getChildren.

Prototype

public List<PluginInfo> getChildren(String type) 

Source Link

Document

Filter children by type

Usage

From source file:com.o19s.solr.swan.highlight.SwanHighlighter.java

License:Apache License

public void init(PluginInfo info) {
    formatters.clear();//from  w w w.  ja v a2s  . c  o  m
    encoders.clear();
    fragmenters.clear();
    fragListBuilders.clear();
    fragmentsBuilders.clear();
    boundaryScanners.clear();

    // Load the fragmenters
    SolrFragmenter frag = solrCore.initPlugins(info.getChildren("fragmenter"), fragmenters,
            SolrFragmenter.class, null);
    if (frag == null)
        frag = new GapFragmenter();
    fragmenters.put("", frag);
    fragmenters.put(null, frag);

    // Load the formatters
    SolrFormatter fmt = solrCore.initPlugins(info.getChildren("formatter"), formatters, SolrFormatter.class,
            null);
    if (fmt == null)
        fmt = new HtmlFormatter();
    formatters.put("", fmt);
    formatters.put(null, fmt);

    // Load the encoders
    SolrEncoder enc = solrCore.initPlugins(info.getChildren("encoder"), encoders, SolrEncoder.class, null);
    if (enc == null)
        enc = new DefaultEncoder();
    encoders.put("", enc);
    encoders.put(null, enc);

    // Load the FragListBuilders
    SolrFragListBuilder fragListBuilder = solrCore.initPlugins(info.getChildren("fragListBuilder"),
            fragListBuilders, SolrFragListBuilder.class, null);
    if (fragListBuilder == null)
        fragListBuilder = new SimpleFragListBuilder();
    fragListBuilders.put("", fragListBuilder);
    fragListBuilders.put(null, fragListBuilder);

    // Load the FragmentsBuilders
    SolrFragmentsBuilder fragsBuilder = solrCore.initPlugins(info.getChildren("fragmentsBuilder"),
            fragmentsBuilders, SolrFragmentsBuilder.class, null);
    if (fragsBuilder == null)
        fragsBuilder = new ScoreOrderFragmentsBuilder();
    fragmentsBuilders.put("", fragsBuilder);
    fragmentsBuilders.put(null, fragsBuilder);

    // Load the BoundaryScanners
    SolrBoundaryScanner boundaryScanner = solrCore.initPlugins(info.getChildren("boundaryScanner"),
            boundaryScanners, SolrBoundaryScanner.class, null);
    if (boundaryScanner == null)
        boundaryScanner = new SimpleBoundaryScanner();
    boundaryScanners.put("", boundaryScanner);
    boundaryScanners.put(null, boundaryScanner);
}