use of com.yahoo.vespa.model.container.search.searchchain.FederationSearcher in project vespa by vespa-engine.
the class DomFederationSearcherBuilderTest method ensureCorrectModel.
@Test
public void ensureCorrectModel() {
FederationSearcher searcher = new DomFederationSearcherBuilder().doBuild(root, parse("<federation id='theId'>", " <provides>p2</provides>", " <source-set inherits=\"default\" />", " <source id='source1'>", " <federationoptions optional='true' />", " </source>", " <source id='source2' />", "</federation>"));
FederationSearcherModel model = searcher.model;
assertEquals("theId", model.bundleInstantiationSpec.id.stringValue());
assertEquals(com.yahoo.search.federation.FederationSearcher.class.getName(), model.bundleInstantiationSpec.classId.stringValue());
assertEquals(2, model.targets.size());
assertTrue("source-set option was ignored", model.inheritDefaultSources);
assertThat(targetNames(model.targets), hasItems("source1", "source2"));
}
use of com.yahoo.vespa.model.container.search.searchchain.FederationSearcher in project vespa by vespa-engine.
the class DomFederationSearcherBuilderTest method require_that_target_selector_can_be_configured.
@Test
public void require_that_target_selector_can_be_configured() {
FederationSearcher searcher = new DomFederationSearcherBuilder().doBuild(root, parse("<federation id='federation-id'>", " <target-selector id='my-id' class='my-class' />", "</federation>"));
String targetSelectorId = "my-id@federation-id";
AbstractConfigProducer<?> targetSelector = searcher.getChildren().get(targetSelectorId);
assertNotNull("No target selector child found", targetSelector);
FederationConfig.Builder builder = new FederationConfig.Builder();
searcher.getConfig(builder);
assertThat(new FederationConfig(builder).targetSelector(), is(targetSelectorId));
}
use of com.yahoo.vespa.model.container.search.searchchain.FederationSearcher in project vespa by vespa-engine.
the class DomFederationSearcherBuilder method doBuild.
protected FederationSearcher doBuild(AbstractConfigProducer ancestor, Element searcherElement) {
FederationSearcherModel model = new FederationSearcherModelBuilder(searcherElement).build();
Optional<Component> targetSelector = buildTargetSelector(ancestor, searcherElement, model.getComponentId());
return new FederationSearcher(model, targetSelector);
}
Aggregations