aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2021-10-15 19:00:17 +0200
committerJon Bratseth <bratseth@gmail.com>2021-10-15 19:00:17 +0200
commitcf7c0cb612a2cbc1cd63e7043eae28e5a5ecba06 (patch)
tree38309e09d8ec0f4ebbf702343b3f0a7590dbcaa1 /config-model
parent813c270c2ea80953c7b09aac56dc6a5c254aca1e (diff)
search -> schema
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/deploy/SearchDocumentModel.java9
-rw-r--r--config-model/src/main/java/com/yahoo/documentmodel/NewDocumentType.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/Application.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DefaultRankProfile.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java36
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySchema.java (renamed from config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySearch.java)5
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentReference.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentReferenceResolver.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentsOnlyRankProfile.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/FieldOperationApplierForSearch.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/FieldSets.java2
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/ImportedFieldsEnumerator.java5
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/Index.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/RankProfileRegistry.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/Schema.java (renamed from config-model/src/main/java/com/yahoo/searchdefinition/Search.java)24
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java102
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/UnrankedRankProfile.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/Derived.java26
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java58
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/ImportedFields.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexInfo.java58
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexSchema.java24
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexingScript.java24
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/Juniperrc.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java24
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/SearchOrderer.java52
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/Summaries.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryClass.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java14
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmFields.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmSummary.java24
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/IndexStructureValidator.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validation.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validator.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableImportedSDField.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableSDField.java4
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/document/SDDocumentType.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/document/SDField.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFields.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/AddExtraFieldsToDocument.java36
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFields.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributeProperties.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributesImplicitWord.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/Bolding.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/BoolAttributeValidator.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/BuiltInFieldSets.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/CreatePositionZCurve.java22
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/DictionaryProcessor.java17
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypes.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/DiversitySettingsValidator.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ExactMatch.java28
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/FastAccessValidator.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/FieldSetSettings.java42
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/FilterFieldNames.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java70
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFields.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolver.java22
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexFieldNames.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingInputs.java22
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingOutputs.java36
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValidation.java26
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValues.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/IntegerIndex2Attribute.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/LiteralBoost.java32
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeAliases.java14
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeDefaultSummaryTheSuperSet.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchConsistency.java22
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchPhaseSettingsValidator.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolver.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MultifieldIndexHarmonizer.java28
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/MutableAttributes.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/NGramMatch.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelConfigGenerator.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelTypeResolver.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/OptimizeIlscript.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/PagedAttributeValidator.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/PredicateProcessor.java36
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/Processing.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/Processor.java44
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolver.java11
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ReferenceFieldsProcessor.java14
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedDocumentNames.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedFunctionNames.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocument.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SetRankTypeEmptyOnFilters.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SortingSettings.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/StringSettingsOnNonStringFields.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryConsistency.java34
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDiskAccessValidator.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDynamicStructsArrays.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSource.java14
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryNamesFieldCollisions.java18
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/TagType.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java20
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/TextMatch.java20
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/TypedTransformProvider.java14
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/UriHack.java22
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/UrlFieldValidator.java10
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypes.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesDocumentsOnly.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldWithIndexSettingsCreatesIndex.java13
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/WordMatch.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/IndexCommandResolver.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/MultiFieldResolver.java8
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java16
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankTypeResolver.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/StemmingResolver.java18
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/documentmodel/DocumentSummary.java6
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/ComplexAttributeFieldsValidator.java14
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/NoPrefixForIndexes.java14
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeMessageBuilder.java18
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeValidator.java18
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java11
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/search/NamedSchema.java12
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java9
-rw-r--r--config-model/src/main/javacc/SDParser.jj320
-rw-r--r--config-model/src/test/java/com/yahoo/config/model/ApplicationDeployTest.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java38
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java92
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java38
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java24
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java24
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java48
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java24
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java (renamed from config-model/src/test/java/com/yahoo/searchdefinition/SearchImporterTestCase.java)46
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java30
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java22
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java26
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSchemaTestCase.java (renamed from config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSearchTestCase.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java42
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java (renamed from config-model/src/test/java/com/yahoo/searchdefinition/derived/SearchOrdererTestCase.java)50
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java14
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java26
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java34
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFieldsTestCase.java46
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertIndexingScript.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java28
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java55
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java (renamed from config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSearchFieldsTestCase.java)34
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java14
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java18
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolverTestCase.java60
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java102
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java26
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java18
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java23
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java72
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java36
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java (renamed from config-model/src/test/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocumentTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java5
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java32
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/application/validation/SchemaDataTypeValidatorTestCase.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/application/validation/SearchDataTypeValidatorTestCase.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSchemaClusterChangeValidatorTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidatorTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSchemaClusterChangeValidatorTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidatorTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSchemaTuningBuilderTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilderTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSchemaChainsBuilderTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilderTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/Federation2Test.java2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/FederationTest.java2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest2.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest2.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTestBase.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTestBase.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/xml/SchemaBuilderTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaClusterTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchClusterTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSchemaNodeNamingTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSearchNodeNamingTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/SchemaCoverageTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/SearchCoverageTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSchemaBuilderTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSearchBuilderTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSchemaCoverageBuilderTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSearchCoverageBuilderTest.java)2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaClusterTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchClusterTest.java)16
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaNodeTest.java (renamed from config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java)2
206 files changed, 1888 insertions, 1895 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/SearchDocumentModel.java b/config-model/src/main/java/com/yahoo/config/model/deploy/SearchDocumentModel.java
index d4b7004a1b6..604e2b0a44b 100644
--- a/config-model/src/main/java/com/yahoo/config/model/deploy/SearchDocumentModel.java
+++ b/config-model/src/main/java/com/yahoo/config/model/deploy/SearchDocumentModel.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.config.model.deploy;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.vespa.documentmodel.DocumentModel;
import com.yahoo.vespa.model.search.NamedSchema;
@@ -35,16 +36,16 @@ public class SearchDocumentModel {
public static SearchDocumentModel fromBuilderAndNames(SearchBuilder builder, Map<String, String> names) {
List<NamedSchema> ret = new ArrayList<>();
- for (com.yahoo.searchdefinition.Search search : builder.getSearchList()) {
- ret.add(new NamedSchema(names.get(search.getName()), search));
+ for (Schema schema : builder.getSearchList()) {
+ ret.add(new NamedSchema(names.get(schema.getName()), schema));
}
return new SearchDocumentModel(builder.getModel(), ret);
}
public static SearchDocumentModel fromBuilder(SearchBuilder builder) {
List<NamedSchema> ret = new ArrayList<>();
- for (com.yahoo.searchdefinition.Search search : builder.getSearchList()) {
- ret.add(new NamedSchema(search.getName(), search));
+ for (Schema schema : builder.getSearchList()) {
+ ret.add(new NamedSchema(schema.getName(), schema));
}
return new SearchDocumentModel(builder.getModel(), ret);
}
diff --git a/config-model/src/main/java/com/yahoo/documentmodel/NewDocumentType.java b/config-model/src/main/java/com/yahoo/documentmodel/NewDocumentType.java
index b9e46989fa3..301141d0465 100644
--- a/config-model/src/main/java/com/yahoo/documentmodel/NewDocumentType.java
+++ b/config-model/src/main/java/com/yahoo/documentmodel/NewDocumentType.java
@@ -10,7 +10,7 @@ import com.yahoo.document.annotation.AnnotationType;
import com.yahoo.document.annotation.AnnotationTypeRegistry;
import com.yahoo.document.datatypes.FieldValue;
import com.yahoo.searchdefinition.FieldSets;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.FieldSet;
import com.yahoo.searchdefinition.processing.BuiltInFieldSets;
@@ -337,7 +337,7 @@ public final class NewDocumentType extends StructuredDataType implements DataTyp
return this;
}
- /** The field sets defined for this type and its {@link Search} */
+ /** The field sets defined for this type and its {@link Schema} */
public Set<FieldSet> getFieldSets() {
return Collections.unmodifiableSet(fieldSets);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/Application.java b/config-model/src/main/java/com/yahoo/searchdefinition/Application.java
index 5eb28201239..6b9034f35e0 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/Application.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/Application.java
@@ -19,7 +19,7 @@ import java.util.Map;
public class Application {
private final ApplicationPackage applicationPackage;
- private final Map<String, Search> schemas = new LinkedHashMap<>();
+ private final Map<String, Schema> schemas = new LinkedHashMap<>();
public Application(ApplicationPackage applicationPackage) {
this.applicationPackage = applicationPackage;
@@ -27,17 +27,17 @@ public class Application {
public ApplicationPackage applicationPackage() { return applicationPackage; }
- public void add(Search schema) {
+ public void add(Schema schema) {
if (schemas.containsKey(schema.getName()))
throw new IllegalArgumentException("Duplicate schema '" + schema.getName() + "' in " + this);
schemas.put(schema.getName(), schema);
}
/** Returns an unmodifiable list of the schemas of this application */
- public Map<String, Search> schemas() { return Collections.unmodifiableMap(schemas); }
+ public Map<String, Schema> schemas() { return Collections.unmodifiableMap(schemas); }
/** Used by SearchBuilder, for now */
- void replaceSchemasBy(List<Search> schemas) {
+ void replaceSchemasBy(List<Schema> schemas) {
this.schemas.clear();
for (var schema : schemas)
this.schemas.put(schema.getName(), schema);
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DefaultRankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/DefaultRankProfile.java
index da611513570..56a739ced8b 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DefaultRankProfile.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DefaultRankProfile.java
@@ -19,8 +19,8 @@ public class DefaultRankProfile extends RankProfile {
*
* @param rankProfileRegistry The {@link com.yahoo.searchdefinition.RankProfileRegistry} to use for storing and looking up rank profiles.
*/
- public DefaultRankProfile(Search search, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
- super("default", search, rankProfileRegistry, rankingConstants);
+ public DefaultRankProfile(Schema schema, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
+ super("default", schema, rankProfileRegistry, rankingConstants);
}
/**
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
index e7d0b72d46b..576b23b4dce 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
@@ -57,17 +57,17 @@ public class DocumentModelBuilder {
return scratchInheritsMap.isEmpty();
}
- public void addToModel(Collection<Search> searchList) {
+ public void addToModel(Collection<Schema> schemaList) {
List<SDDocumentType> docList = new LinkedList<>();
- for (Search search : searchList) {
- docList.add(search.getDocument());
+ for (Schema schema : schemaList) {
+ docList.add(schema.getDocument());
}
docList = sortDocumentTypes(docList);
addDocumentTypes(docList);
- for (Collection<Search> toAdd = tryAdd(searchList);
- ! toAdd.isEmpty() && (toAdd.size() < searchList.size());
- toAdd = tryAdd(searchList)) {
- searchList = toAdd;
+ for (Collection<Schema> toAdd = tryAdd(schemaList);
+ ! toAdd.isEmpty() && (toAdd.size() < schemaList.size());
+ toAdd = tryAdd(schemaList)) {
+ schemaList = toAdd;
}
}
@@ -116,26 +116,26 @@ public class DocumentModelBuilder {
return out.toString();
}
- private Collection<Search> tryAdd(Collection<Search> searchList) {
- Collection<Search> left = new ArrayList<>();
- for (Search search : searchList) {
+ private Collection<Schema> tryAdd(Collection<Schema> schemaList) {
+ Collection<Schema> left = new ArrayList<>();
+ for (Schema schema : schemaList) {
try {
- addToModel(search);
+ addToModel(schema);
} catch (RetryLaterException e) {
- left.add(search);
+ left.add(schema);
}
}
return left;
}
- public void addToModel(Search search) {
+ public void addToModel(Schema schema) {
// Then we add the search specific stuff
- SearchDef searchDef = new SearchDef(search.getName());
- addSearchFields(search.extraFieldList(), searchDef);
- for (Field f : search.getDocument().fieldSet()) {
+ SearchDef searchDef = new SearchDef(schema.getName());
+ addSearchFields(schema.extraFieldList(), searchDef);
+ for (Field f : schema.getDocument().fieldSet()) {
addSearchField((SDField) f, searchDef);
}
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
for (Attribute attribute : field.getAttributes().values()) {
if ( ! searchDef.getFields().containsKey(attribute.getName())) {
searchDef.add(new SearchField(new Field(attribute.getName(), field), !field.getIndices().isEmpty(), true));
@@ -143,7 +143,7 @@ public class DocumentModelBuilder {
}
}
- for (Field f : search.getDocument().fieldSet()) {
+ for (Field f : schema.getDocument().fieldSet()) {
addAlias((SDField) f, searchDef);
}
model.getSearchManager().add(searchDef);
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySearch.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySchema.java
index 29d8252f621..c672b662874 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySearch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentOnlySchema.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition;
-import com.yahoo.config.application.api.ApplicationPackage;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.config.application.api.FileRegistry;
import com.yahoo.config.model.api.ModelContext;
@@ -13,9 +12,9 @@ import com.yahoo.searchdefinition.document.SDDocumentType;
*
* @author vegardh
*/
-public class DocumentOnlySearch extends Search {
+public class DocumentOnlySchema extends Schema {
- public DocumentOnlySearch(Application application, FileRegistry fileRegistry, DeployLogger deployLogger, ModelContext.Properties properties) {
+ public DocumentOnlySchema(Application application, FileRegistry fileRegistry, DeployLogger deployLogger, ModelContext.Properties properties) {
super(application, fileRegistry, deployLogger, properties);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReference.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReference.java
index 2b0ade3797a..145effcdc9d 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReference.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReference.java
@@ -11,18 +11,18 @@ import com.yahoo.document.Field;
public class DocumentReference {
private final Field referenceField;
- private final Search targetSearch;
+ private final Schema targetSchema;
- public DocumentReference(Field referenceField, Search targetSearch) {
+ public DocumentReference(Field referenceField, Schema targetSchema) {
this.referenceField = referenceField;
- this.targetSearch = targetSearch;
+ this.targetSchema = targetSchema;
}
public Field referenceField() {
return referenceField;
}
- public Search targetSearch() {
- return targetSearch;
+ public Schema targetSearch() {
+ return targetSchema;
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReferenceResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReferenceResolver.java
index a16433b36dc..26c140e58fe 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReferenceResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentReferenceResolver.java
@@ -23,9 +23,9 @@ import static java.util.stream.Collectors.toMap;
*/
public class DocumentReferenceResolver {
- private final Map<String, Search> searchMapping;
+ private final Map<String, Schema> searchMapping;
- public DocumentReferenceResolver(Collection<Search> schemas) {
+ public DocumentReferenceResolver(Collection<Schema> schemas) {
this.searchMapping = createDocumentNameToSearchMapping(schemas);
}
@@ -63,13 +63,13 @@ public class DocumentReferenceResolver {
}
ReferenceDataType reference = (ReferenceDataType) field.getDataType();
String targetDocumentName = getTargetDocumentName(reference);
- Search search = searchMapping.get(targetDocumentName);
- if (search == null) {
+ Schema schema = searchMapping.get(targetDocumentName);
+ if (schema == null) {
throw new IllegalArgumentException(
String.format("Invalid document reference '%s': " +
"Could not find document type '%s'", field.getName(), targetDocumentName));
}
- return new DocumentReference(field, search);
+ return new DocumentReference(field, schema);
}
private static boolean isAttribute(Field field) {
@@ -77,10 +77,10 @@ public class DocumentReferenceResolver {
return sdField.doesAttributing();
}
- private static Map<String, Search> createDocumentNameToSearchMapping(Collection<Search> searchDefintions) {
- return searchDefintions.stream()
- .filter(search -> search.getDocument() != null)
- .collect(toMap(search -> search.getDocument().getName(), identity()));
+ private static Map<String, Schema> createDocumentNameToSearchMapping(Collection<Schema> schemaDefintions) {
+ return schemaDefintions.stream()
+ .filter(search -> search.getDocument() != null)
+ .collect(toMap(search -> search.getDocument().getName(), identity()));
}
private static Stream<Field> fieldStream(SDDocumentType documentType) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentsOnlyRankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentsOnlyRankProfile.java
index a6694ed7bff..acab2b96772 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentsOnlyRankProfile.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentsOnlyRankProfile.java
@@ -14,9 +14,9 @@ import java.util.List;
*/
public class DocumentsOnlyRankProfile extends RankProfile {
- public DocumentsOnlyRankProfile(String name, Search search, RankProfileRegistry rankProfileRegistry,
+ public DocumentsOnlyRankProfile(String name, Schema schema, RankProfileRegistry rankProfileRegistry,
RankingConstants rankingConstants) {
- super(name, search, rankProfileRegistry, rankingConstants);
+ super(name, schema, rankProfileRegistry, rankingConstants);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/FieldOperationApplierForSearch.java b/config-model/src/main/java/com/yahoo/searchdefinition/FieldOperationApplierForSearch.java
index 6460fdcdbc7..52110e95ac7 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/FieldOperationApplierForSearch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/FieldOperationApplierForSearch.java
@@ -14,8 +14,8 @@ public class FieldOperationApplierForSearch extends FieldOperationApplier {
//Do nothing
}
- public void process(Search search) {
- for (Field field : search.extraFieldList()) {
+ public void process(Schema schema) {
+ for (Field field : schema.extraFieldList()) {
apply(field);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/FieldSets.java b/config-model/src/main/java/com/yahoo/searchdefinition/FieldSets.java
index ba015ebaba6..407d49e65d9 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/FieldSets.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/FieldSets.java
@@ -8,7 +8,7 @@ import java.util.Map;
import com.yahoo.searchdefinition.document.FieldSet;
/**
- * The field sets owned by a {@link Search}
+ * The field sets owned by a {@link Schema}
* Both built in and user defined.
*
* @author vegardh
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java b/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java
index 605176e0c07..1208707fe96 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java
@@ -15,8 +15,8 @@ import java.util.Map;
import java.util.stream.Stream;
/**
- * An interface containing the non-mutating methods of {@link Search}.
- * For description of the methods see {@link Search}.
+ * An interface containing the non-mutating methods of {@link Schema}.
+ * For description of the methods see {@link Schema}.
*
* @author bjorncs
*/
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/ImportedFieldsEnumerator.java b/config-model/src/main/java/com/yahoo/searchdefinition/ImportedFieldsEnumerator.java
index 91fd0aee957..a1248409368 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/ImportedFieldsEnumerator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/ImportedFieldsEnumerator.java
@@ -4,7 +4,6 @@ package com.yahoo.searchdefinition;
import com.yahoo.searchdefinition.document.SDDocumentType;
import java.util.Collection;
-import java.util.List;
/**
* Enumerates and emplaces a set of all imported fields into a SDDocumentType from
@@ -12,9 +11,9 @@ import java.util.List;
*/
public class ImportedFieldsEnumerator {
- private final Collection<Search> schemas;
+ private final Collection<Schema> schemas;
- public ImportedFieldsEnumerator(Collection<Search> schemas) {
+ public ImportedFieldsEnumerator(Collection<Schema> schemas) {
this.schemas = schemas;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/Index.java b/config-model/src/main/java/com/yahoo/searchdefinition/Index.java
index bc1800f7ad7..793fcc59f9d 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/Index.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/Index.java
@@ -88,11 +88,11 @@ public class Index implements Cloneable, Serializable {
* Whether this field should be stemmed in this search definition,
* this is never null
*/
- public Stemming getStemming(Search search) {
+ public Stemming getStemming(Schema schema) {
if (stemming != null)
return stemming;
else
- return search.getStemming();
+ return schema.getStemming();
}
/**
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java
index 68faa462fdd..d48b232cfef 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java
@@ -147,18 +147,18 @@ public class RankProfile implements Cloneable {
* Creates a new rank profile for a particular search definition
*
* @param name the name of the new profile
- * @param search the search definition owning this profile
+ * @param schema the search definition owning this profile
* @param rankProfileRegistry the {@link com.yahoo.searchdefinition.RankProfileRegistry} to use for storing
* and looking up rank profiles.
*/
- public RankProfile(String name, Search search, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
+ public RankProfile(String name, Schema schema, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
this.name = Objects.requireNonNull(name, "name cannot be null");
- this.search = Objects.requireNonNull(search, "search cannot be null");
+ this.search = Objects.requireNonNull(schema, "search cannot be null");
this.onnxModels = null;
this.rankingConstants = rankingConstants;
this.rankProfileRegistry = rankProfileRegistry;
- this.applicationPackage = search.applicationPackage();
- this.deployLogger = search.getDeployLogger();
+ this.applicationPackage = schema.applicationPackage();
+ this.deployLogger = schema.getDeployLogger();
}
/**
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfileRegistry.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfileRegistry.java
index 52b9fba391b..50ba7d07baa 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfileRegistry.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfileRegistry.java
@@ -14,7 +14,7 @@ import java.util.Map;
import java.util.Set;
/**
- * Mapping from name to {@link RankProfile} as well as a reverse mapping of {@link RankProfile} to {@link Search}.
+ * Mapping from name to {@link RankProfile} as well as a reverse mapping of {@link RankProfile} to {@link Schema}.
* Having both of these mappings consolidated here make it easier to remove dependencies on these mappings at
* run time, since it is essentially only used when building rank profile config at deployment time.
*
@@ -30,10 +30,10 @@ public class RankProfileRegistry {
/* These rank profiles can be overridden: 'default' rank profile, as that is documented to work. And 'unranked'. */
static final Set<String> overridableRankProfileNames = new HashSet<>(Arrays.asList("default", "unranked"));
- public static RankProfileRegistry createRankProfileRegistryWithBuiltinRankProfiles(Search search) {
+ public static RankProfileRegistry createRankProfileRegistryWithBuiltinRankProfiles(Schema schema) {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- rankProfileRegistry.add(new DefaultRankProfile(search, rankProfileRegistry, search.rankingConstants()));
- rankProfileRegistry.add(new UnrankedRankProfile(search, rankProfileRegistry, search.rankingConstants()));
+ rankProfileRegistry.add(new DefaultRankProfile(schema, rankProfileRegistry, schema.rankingConstants()));
+ rankProfileRegistry.add(new UnrankedRankProfile(schema, rankProfileRegistry, schema.rankingConstants()));
return rankProfileRegistry;
}
@@ -69,7 +69,7 @@ public class RankProfileRegistry {
/**
* Returns a named rank profile, null if the search definition doesn't have one with the given name
*
- * @param search the {@link Search} that owns the rank profile.
+ * @param search the {@link Schema} that owns the rank profile.
* @param name the name of the rank profile
* @return the RankProfile to return.
*/
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/Search.java b/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java
index 0b7b1687eb9..ea69b829e85 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/Search.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java
@@ -36,16 +36,14 @@ import java.util.logging.Level;
import java.util.stream.Stream;
/**
- * A search definition describes (or uses) some document types, defines how these are turned into a relevancy tuned
- * index through indexing and how data from documents should be served at search time. The identity of this
- * class is its name.
+ * A schema contains a document type, additional fields, rank profiles and document summaries.
*
* @author bratseth
*/
// TODO: Make a class owned by this, for each of these responsibilities:
// Managing indexes, managing attributes, managing summary classes.
// Ensure that after the processing step, all implicit instances of the above types are explicitly represented
-public class Search implements ImmutableSearch {
+public class Schema implements ImmutableSearch {
private static final String SD_DOC_FIELD_NAME = "sddocname";
private static final List<String> RESERVED_NAMES = List.of(
@@ -102,11 +100,11 @@ public class Search implements ImmutableSearch {
private final ModelContext.Properties properties;
/** Testing only */
- public Search(String name) {
+ public Schema(String name) {
this(name, Optional.empty(), null, null, new BaseDeployLogger(), new TestProperties());
}
- public Search(String name,
+ public Schema(String name,
Application application,
FileRegistry fileRegistry,
DeployLogger deployLogger,
@@ -121,7 +119,7 @@ public class Search implements ImmutableSearch {
* @param inherited the schema this inherits, if any
* @param application the application containing this
*/
- public Search(String name,
+ public Schema(String name,
Optional<String> inherited,
Application application,
FileRegistry fileRegistry,
@@ -131,11 +129,11 @@ public class Search implements ImmutableSearch {
this.name = name;
}
- protected Search(Application application, FileRegistry fileRegistry, DeployLogger deployLogger, ModelContext.Properties properties) {
+ protected Schema(Application application, FileRegistry fileRegistry, DeployLogger deployLogger, ModelContext.Properties properties) {
this(Optional.empty(), application, fileRegistry, deployLogger, properties, true);
}
- private Search(Optional<String> inherited,
+ private Schema(Optional<String> inherited,
Application application,
FileRegistry fileRegistry,
DeployLogger deployLogger,
@@ -641,11 +639,11 @@ public class Search implements ImmutableSearch {
@Override
public boolean equals(Object o) {
- if (!(o instanceof Search)) {
+ if (!(o instanceof Schema)) {
return false;
}
- Search other = (Search)o;
+ Schema other = (Schema)o;
return getName().equals(other.getName());
}
@@ -689,12 +687,12 @@ public class Search implements ImmutableSearch {
* @param dt the struct to add
* @return self, for chaining
*/
- public Search addType(SDDocumentType dt) {
+ public Schema addType(SDDocumentType dt) {
docType.addType(dt); // TODO This is a very very dirty thing. It must go
return this;
}
- public Search addAnnotation(SDAnnotationType dt) {
+ public Schema addAnnotation(SDAnnotationType dt) {
docType.addAnnotation(dt);
return this;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java b/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java
index adfed2e8147..91ff9040713 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java
@@ -37,7 +37,7 @@ import java.util.LinkedList;
import java.util.List;
/**
- * Helper class for importing {@link Search} objects in an unambiguous way. The pattern for using this is to 1) Import
+ * Helper class for importing {@link Schema} objects in an unambiguous way. The pattern for using this is to 1) Import
* all available search definitions, using the importXXX() methods, 2) provide the available rank types and rank
* expressions, using the setRankXXX() methods, 3) invoke the {@link #build()} method, and 4) retrieve the built
* search objects using the {@link #getSearch(String)} method.
@@ -56,7 +56,7 @@ public class SearchBuilder {
/** True to build the document aspect only, skipping instantiation of rank profiles */
private final boolean documentsOnly;
- private List<Search> searchList = new LinkedList<>();
+ private List<Schema> schemaList = new LinkedList<>();
private boolean isBuilt = false;
/** For testing only */
@@ -171,7 +171,7 @@ public class SearchBuilder {
SimpleCharStream stream = new SimpleCharStream(str);
try {
return importRawSearch(new SDParser(stream, fileRegistry, deployLogger, properties, application, rankProfileRegistry, documentsOnly)
- .search(docTypeMgr, searchDefDir));
+ .schema(docTypeMgr, searchDefDir));
} catch (TokenMgrException e) {
throw new ParseException("Unknown symbol: " + e.getMessage());
} catch (ParseException pe) {
@@ -181,19 +181,19 @@ public class SearchBuilder {
/**
* Registers the given search object to the internal list of objects to be processed during {@link #build()}. A
- * {@link Search} object is considered to be "raw" if it has not already been processed. This is the case for most
+ * {@link Schema} object is considered to be "raw" if it has not already been processed. This is the case for most
* programmatically constructed search objects used in unit tests.
*
* @param schema the object to import.
* @return the name of the imported object.
* @throws IllegalArgumentException if the given search object has already been processed.
*/
- public String importRawSearch(Search schema) {
+ public String importRawSearch(Schema schema) {
if (schema.getName() == null)
throw new IllegalArgumentException("Schema has no name");
String rawName = schema.getName();
application.add(schema);
- searchList.add(schema);
+ schemaList.add(schema);
return rawName;
}
@@ -221,12 +221,12 @@ public class SearchBuilder {
if (validate)
application.validate(deployLogger);
- List<Search> built = new ArrayList<>();
+ List<Schema> built = new ArrayList<>();
List<SDDocumentType> sdocs = new ArrayList<>();
sdocs.add(SDDocumentType.VESPA_DOCUMENT);
- for (Search search : searchList) {
- if (search.hasDocument()) {
- sdocs.add(search.getDocument());
+ for (Schema schema : schemaList) {
+ if (schema.hasDocument()) {
+ sdocs.add(schema.getDocument());
}
}
@@ -237,46 +237,46 @@ public class SearchBuilder {
new FieldOperationApplier().process(sdoc);
}
- var resolver = new DocumentReferenceResolver(searchList);
+ var resolver = new DocumentReferenceResolver(schemaList);
sdocs.forEach(resolver::resolveReferences);
sdocs.forEach(resolver::resolveInheritedReferences);
- var importedFieldsEnumerator = new ImportedFieldsEnumerator(searchList);
+ var importedFieldsEnumerator = new ImportedFieldsEnumerator(schemaList);
sdocs.forEach(importedFieldsEnumerator::enumerateImportedFields);
if (validate)
new DocumentGraphValidator().validateDocumentGraph(sdocs);
var builder = new DocumentModelBuilder(model);
- for (Search search : new SearchOrderer().order(searchList)) {
- new FieldOperationApplierForSearch().process(search); // TODO: Why is this not in the regular list?
- process(search, new QueryProfiles(queryProfileRegistry, deployLogger), validate);
- built.add(search);
+ for (Schema schema : new SearchOrderer().order(schemaList)) {
+ new FieldOperationApplierForSearch().process(schema); // TODO: Why is this not in the regular list?
+ process(schema, new QueryProfiles(queryProfileRegistry, deployLogger), validate);
+ built.add(schema);
}
- builder.addToModel(searchList);
+ builder.addToModel(schemaList);
if ( validate && ! builder.valid() )
throw new IllegalArgumentException("Impossible to build a correct model");
- searchList = built;
+ schemaList = built;
isBuilt = true;
}
/**
- * Processes and returns the given {@link Search} object. This method has been factored out of the {@link
+ * Processes and returns the given {@link Schema} object. This method has been factored out of the {@link
* #build()} method so that subclasses can choose not to build anything.
*/
- private void process(Search search, QueryProfiles queryProfiles, boolean validate) {
- new Processing().process(search, deployLogger, rankProfileRegistry, queryProfiles, validate, documentsOnly);
+ private void process(Schema schema, QueryProfiles queryProfiles, boolean validate) {
+ new Processing().process(schema, deployLogger, rankProfileRegistry, queryProfiles, validate, documentsOnly);
}
/**
- * Convenience method to call {@link #getSearch(String)} when there is only a single {@link Search} object
+ * Convenience method to call {@link #getSearch(String)} when there is only a single {@link Schema} object
* built. This method will never return null.
*
* @return the built object
* @throws IllegalStateException if there is not exactly one search.
*/
- public Search getSearch() {
+ public Schema getSearch() {
if ( ! isBuilt) throw new IllegalStateException("Searches not built.");
if (application.schemas().size() != 1)
throw new IllegalStateException("This call only works if we have 1 schema. Schemas: " +
@@ -290,7 +290,7 @@ public class SearchBuilder {
}
/**
- * Returns the built {@link Search} object that has the given name. If the name is unknown, this method will simply
+ * Returns the built {@link Schema} object that has the given name. If the name is unknown, this method will simply
* return null.
*
* @param name the name of the search definition to return,
@@ -298,23 +298,23 @@ public class SearchBuilder {
* @return the built object, or null if none with this name
* @throws IllegalStateException if {@link #build()} has not been called.
*/
- public Search getSearch(String name) {
+ public Schema getSearch(String name) {
if ( ! isBuilt) throw new IllegalStateException("Searches not built.");
if (name == null) return getSearch();
return application.schemas().get(name);
}
/**
- * Convenience method to return a list of all built {@link Search} objects.
+ * Convenience method to return a list of all built {@link Schema} objects.
*
* @return the list of built searches
*/
- public List<Search> getSearchList() {
- return new ArrayList<>(searchList);
+ public List<Schema> getSearchList() {
+ return new ArrayList<>(schemaList);
}
/**
- * Convenience factory method to import and build a {@link Search} object from a string.
+ * Convenience factory method to import and build a {@link Schema} object from a string.
*
* @param sd The string to build from.
* @return The built {@link SearchBuilder} object.
@@ -340,7 +340,7 @@ public class SearchBuilder {
}
/**
- * Convenience factory method to import and build a {@link Search} object from a file. Only for testing.
+ * Convenience factory method to import and build a {@link Schema} object from a file. Only for testing.
*
* @param fileName the file to build from
* @return the built {@link SearchBuilder} object
@@ -367,7 +367,7 @@ public class SearchBuilder {
}
/**
- * Convenience factory method to import and build a {@link Search} object from a file.
+ * Convenience factory method to import and build a {@link Schema} object from a file.
*
* @param fileName the file to build from.
* @param deployLogger logger for deploy messages.
@@ -456,27 +456,27 @@ public class SearchBuilder {
// TODO: The build methods below just call the create methods above - remove
/**
- * Convenience factory method to import and build a {@link Search} object from a file. Only for testing.
+ * Convenience factory method to import and build a {@link Schema} object from a file. Only for testing.
*
* @param fileName The file to build from.
- * @return The built {@link Search} object.
+ * @return The built {@link Schema} object.
* @throws IOException Thrown if there was a problem reading the file.
* @throws ParseException Thrown if there was a problem parsing the file content.
*/
- public static Search buildFromFile(String fileName) throws IOException, ParseException {
+ public static Schema buildFromFile(String fileName) throws IOException, ParseException {
return buildFromFile(fileName, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfileRegistry());
}
/**
- * Convenience factory method to import and build a {@link Search} object from a file.
+ * Convenience factory method to import and build a {@link Schema} object from a file.
*
* @param fileName The file to build from.
* @param rankProfileRegistry Registry for rank profiles.
- * @return The built {@link Search} object.
+ * @return The built {@link Schema} object.
* @throws IOException Thrown if there was a problem reading the file.
* @throws ParseException Thrown if there was a problem parsing the file content.
*/
- public static Search buildFromFile(String fileName,
+ public static Schema buildFromFile(String fileName,
RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfileRegistry)
throws IOException, ParseException {
@@ -484,16 +484,16 @@ public class SearchBuilder {
}
/**
- * Convenience factory method to import and build a {@link Search} object from a file.
+ * Convenience factory method to import and build a {@link Schema} object from a file.
*
* @param fileName The file to build from.
* @param deployLogger Logger for deploy messages.
* @param rankProfileRegistry Registry for rank profiles.
- * @return The built {@link Search} object.
+ * @return The built {@link Schema} object.
* @throws IOException Thrown if there was a problem reading the file.
* @throws ParseException Thrown if there was a problem parsing the file content.
*/
- public static Search buildFromFile(String fileName,
+ public static Schema buildFromFile(String fileName,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfileRegistry)
@@ -502,32 +502,32 @@ public class SearchBuilder {
}
/**
- * Convenience factory method to import and build a {@link Search} object from a raw object.
+ * Convenience factory method to import and build a {@link Schema} object from a raw object.
*
- * @param rawSearch the raw object to build from.
+ * @param rawSchema the raw object to build from.
* @return the built {@link SearchBuilder} object.
- * @see #importRawSearch(Search)
+ * @see #importRawSearch(Schema)
*/
- public static SearchBuilder createFromRawSearch(Search rawSearch,
+ public static SearchBuilder createFromRawSearch(Schema rawSchema,
RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfileRegistry) {
SearchBuilder builder = new SearchBuilder(rankProfileRegistry, queryProfileRegistry);
- builder.importRawSearch(rawSearch);
+ builder.importRawSearch(rawSchema);
builder.build();
return builder;
}
/**
- * Convenience factory method to import and build a {@link Search} object from a raw object.
+ * Convenience factory method to import and build a {@link Schema} object from a raw object.
*
- * @param rawSearch The raw object to build from.
- * @return The built {@link Search} object.
- * @see #importRawSearch(Search)
+ * @param rawSchema The raw object to build from.
+ * @return The built {@link Schema} object.
+ * @see #importRawSearch(Schema)
*/
- public static Search buildFromRawSearch(Search rawSearch,
+ public static Schema buildFromRawSearch(Schema rawSchema,
RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfileRegistry) {
- return createFromRawSearch(rawSearch, rankProfileRegistry, queryProfileRegistry).getSearch();
+ return createFromRawSearch(rawSchema, rankProfileRegistry, queryProfileRegistry).getSearch();
}
public RankProfileRegistry getRankProfileRegistry() {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/UnrankedRankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/UnrankedRankProfile.java
index 6bd30538abd..acf034362ca 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/UnrankedRankProfile.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/UnrankedRankProfile.java
@@ -11,8 +11,8 @@ import com.yahoo.searchlib.rankingexpression.parser.ParseException;
*/
public class UnrankedRankProfile extends RankProfile {
- public UnrankedRankProfile(Search search, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
- super("unranked", search, rankProfileRegistry, rankingConstants);
+ public UnrankedRankProfile(Schema schema, RankProfileRegistry rankProfileRegistry, RankingConstants rankingConstants) {
+ super("unranked", schema, rankProfileRegistry, rankingConstants);
try {
RankingExpression exp = new RankingExpression("value(0)");
this.setFirstPhaseRanking(exp);
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
index 24cc15dde21..67ed37800f9 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.subscription.ConfigInstanceUtil;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.Case;
import com.yahoo.searchdefinition.document.Dictionary;
@@ -44,14 +44,14 @@ public class AttributeFields extends Derived implements AttributesConfig.Produce
public static final AttributeFields empty = new AttributeFields(null);
- public AttributeFields(Search search) {
- if (search != null)
- derive(search);
+ public AttributeFields(Schema schema) {
+ if (schema != null)
+ derive(schema);
}
/** Derives everything from a field */
@Override
- protected void derive(ImmutableSDField field, Search search) {
+ protected void derive(ImmutableSDField field, Schema schema) {
if (unsupportedFieldType(field)) {
return; // Ignore complex struct and map fields for indexed search (only supported for streaming search)
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Derived.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Derived.java
index fded9502c49..30cb236984d 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Derived.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Derived.java
@@ -6,7 +6,7 @@ import com.yahoo.config.ConfigInstance.Builder;
import com.yahoo.document.Field;
import com.yahoo.io.IOUtils;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -36,14 +36,14 @@ public abstract class Derived implements Exportable {
* and derive(SDField) for each search definition level field
* AND sets the name of this to the name of the input search definition
*/
- protected void derive(Search search) {
- setName(search.getName());
- derive(search.getDocument(), search);
- for (Index index : search.getExplicitIndices())
- derive(index, search);
- for (SDField field : search.allExtraFields())
- derive(field, search);
- search.allImportedFields().forEach(importedField -> derive(importedField, search));
+ protected void derive(Schema schema) {
+ setName(schema.getName());
+ derive(schema.getDocument(), schema);
+ for (Index index : schema.getExplicitIndices())
+ derive(index, schema);
+ for (SDField field : schema.allExtraFields())
+ derive(field, schema);
+ schema.allImportedFields().forEach(importedField -> derive(importedField, schema));
}
@@ -51,11 +51,11 @@ public abstract class Derived implements Exportable {
* Derives the content of this configuration. This
* default calls derive(SDField) for each document field
*/
- protected void derive(SDDocumentType document, Search search) {
+ protected void derive(SDDocumentType document, Schema schema) {
for (Field field : document.fieldSet()) {
SDField sdField = (SDField) field;
if ( ! sdField.isExtraField()) {
- derive(sdField, search);
+ derive(sdField, schema);
}
}
}
@@ -64,13 +64,13 @@ public abstract class Derived implements Exportable {
* Derives the content of this configuration. This
* default does nothing.
*/
- protected void derive(ImmutableSDField field, Search search) {}
+ protected void derive(ImmutableSDField field, Schema schema) {}
/**
* Derives the content of this configuration. This
* default does nothing.
*/
- protected void derive(Index index, Search search) {
+ protected void derive(Index index, Schema schema) {
}
protected abstract String getDerivedName();
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java
index 65bda6eb576..54e9a4ccb61 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java
@@ -14,7 +14,7 @@ import com.yahoo.io.IOUtils;
import com.yahoo.protect.Validator;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.validation.Validation;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -30,7 +30,7 @@ import java.util.concurrent.ExecutorService;
*/
public class DerivedConfiguration {
- private final Search search;
+ private final Schema schema;
private Summaries summaries;
private SummaryMap summaryMap;
private Juniperrc juniperrc;
@@ -48,23 +48,23 @@ public class DerivedConfiguration {
* Creates a complete derived configuration from a search definition.
* Only used in tests.
*
- * @param search the search to derive a configuration from. Derived objects will be snapshots, but this argument is
+ * @param schema the search to derive a configuration from. Derived objects will be snapshots, but this argument is
* live. Which means that this object will be inconsistent when the given search definition is later
* modified.
* @param rankProfileRegistry a {@link com.yahoo.searchdefinition.RankProfileRegistry}
*/
- public DerivedConfiguration(Search search, RankProfileRegistry rankProfileRegistry) {
- this(search, rankProfileRegistry, new QueryProfileRegistry());
+ public DerivedConfiguration(Schema schema, RankProfileRegistry rankProfileRegistry) {
+ this(schema, rankProfileRegistry, new QueryProfileRegistry());
}
- DerivedConfiguration(Search search, RankProfileRegistry rankProfileRegistry, QueryProfileRegistry queryProfiles) {
- this(search, new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfiles, new ImportedMlModels(), new InThreadExecutorService());
+ DerivedConfiguration(Schema schema, RankProfileRegistry rankProfileRegistry, QueryProfileRegistry queryProfiles) {
+ this(schema, new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfiles, new ImportedMlModels(), new InThreadExecutorService());
}
/**
* Creates a complete derived configuration snapshot from a search definition.
*
- * @param search the search to derive a configuration from. Derived objects will be snapshots, but this
+ * @param schema the search to derive a configuration from. Derived objects will be snapshots, but this
* argument is live. Which means that this object will be inconsistent when the given
* search definition is later modified.
* @param deployLogger a {@link DeployLogger} for logging when doing operations on this
@@ -72,34 +72,34 @@ public class DerivedConfiguration {
* @param rankProfileRegistry a {@link com.yahoo.searchdefinition.RankProfileRegistry}
* @param queryProfiles the query profiles of this application
*/
- public DerivedConfiguration(Search search,
+ public DerivedConfiguration(Schema schema,
DeployLogger deployLogger,
ModelContext.Properties deployProperties,
RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfiles,
ImportedMlModels importedModels,
ExecutorService executor) {
- Validator.ensureNotNull("Search definition", search);
- this.search = search;
+ Validator.ensureNotNull("Search definition", schema);
+ this.schema = schema;
this.queryProfiles = queryProfiles;
- if ( ! search.isDocumentsOnly()) {
- streamingFields = new VsmFields(search);
- streamingSummary = new VsmSummary(search);
+ if ( ! schema.isDocumentsOnly()) {
+ streamingFields = new VsmFields(schema);
+ streamingSummary = new VsmSummary(schema);
}
- if ( ! search.isDocumentsOnly()) {
- attributeFields = new AttributeFields(search);
- summaries = new Summaries(search, deployLogger);
- summaryMap = new SummaryMap(search);
- juniperrc = new Juniperrc(search);
- rankProfileList = new RankProfileList(search, search.rankingConstants(), search.rankExpressionFiles(),
- search.onnxModels(), attributeFields, rankProfileRegistry,
+ if ( ! schema.isDocumentsOnly()) {
+ attributeFields = new AttributeFields(schema);
+ summaries = new Summaries(schema, deployLogger);
+ summaryMap = new SummaryMap(schema);
+ juniperrc = new Juniperrc(schema);
+ rankProfileList = new RankProfileList(schema, schema.rankingConstants(), schema.rankExpressionFiles(),
+ schema.onnxModels(), attributeFields, rankProfileRegistry,
queryProfiles, importedModels, deployProperties, executor);
- indexingScript = new IndexingScript(search);
- indexInfo = new IndexInfo(search);
- indexSchema = new IndexSchema(search);
- importedFields = new ImportedFields(search);
+ indexingScript = new IndexingScript(schema);
+ indexInfo = new IndexInfo(schema);
+ indexSchema = new IndexSchema(schema);
+ importedFields = new ImportedFields(schema);
}
- Validation.validate(this, search);
+ Validation.validate(this, schema);
}
/**
@@ -109,7 +109,7 @@ public class DerivedConfiguration {
* @throws IOException if exporting fails, some files may still be created
*/
public void export(String toDirectory) throws IOException {
- if (!search.isDocumentsOnly()) {
+ if (!schema.isDocumentsOnly()) {
summaries.export(toDirectory);
summaryMap.export(toDirectory);
juniperrc.export(toDirectory);
@@ -171,8 +171,8 @@ public class DerivedConfiguration {
this.indexingScript = script;
}
- public Search getSearch() {
- return search;
+ public Schema getSearch() {
+ return schema;
}
public RankProfileList getRankProfileList() {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/ImportedFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/ImportedFields.java
index 281ab6536bd..a63b88f9445 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/ImportedFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/ImportedFields.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.ImportedComplexField;
@@ -25,13 +25,13 @@ public class ImportedFields extends Derived implements ImportedFieldsConfig.Prod
private Optional<com.yahoo.searchdefinition.document.ImportedFields> importedFields = Optional.empty();
- public ImportedFields(Search search) {
- derive(search);
+ public ImportedFields(Schema schema) {
+ derive(schema);
}
@Override
- protected void derive(Search search) {
- importedFields = search.importedFields();
+ protected void derive(Schema schema) {
+ importedFields = schema.importedFields();
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexInfo.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexInfo.java
index 7950cd758fd..879ad570c26 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexInfo.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexInfo.java
@@ -10,7 +10,7 @@ import com.yahoo.document.PositionDataType;
import com.yahoo.document.PrimitiveDataType;
import com.yahoo.document.StructuredDataType;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.BooleanIndexDefinition;
import com.yahoo.searchdefinition.document.Case;
@@ -55,33 +55,33 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
private final Set<IndexCommand> commands = new java.util.LinkedHashSet<>();
private final Map<String, String> aliases = new java.util.LinkedHashMap<>();
private final Map<String, FieldSet> fieldSets;
- private Search search;
+ private Schema schema;
- public IndexInfo(Search search) {
- this.fieldSets = search.fieldSets().userFieldSets();
+ public IndexInfo(Schema schema) {
+ this.fieldSets = schema.fieldSets().userFieldSets();
addIndexCommand("sddocname", CMD_INDEX);
addIndexCommand("sddocname", CMD_WORD);
- derive(search);
+ derive(schema);
}
@Override
- protected void derive(Search search) {
- super.derive(search); // Derive per field
- this.search = search;
+ protected void derive(Schema schema) {
+ super.derive(schema); // Derive per field
+ this.schema = schema;
// Populate fieldsets with actual field objects, bit late to do that here but
for (FieldSet fs : fieldSets.values()) {
for (String fieldName : fs.getFieldNames()) {
- fs.fields().add(search.getField(fieldName));
+ fs.fields().add(schema.getField(fieldName));
}
}
// Must follow, because index settings overrides field settings
- for (Index index : search.getExplicitIndices()) {
- derive(index, search);
+ for (Index index : schema.getExplicitIndices()) {
+ derive(index, schema);
}
// Commands for summary fields
// TODO: Move to fieldinfo and implement differently. This is not right
- for (SummaryField summaryField : search.getUniqueNamedSummaryFields().values()) {
+ for (SummaryField summaryField : schema.getUniqueNamedSummaryFields().values()) {
if (summaryField.getTransform().isTeaser()) {
addIndexCommand(summaryField.getName(), CMD_DYNTEASER);
}
@@ -100,11 +100,11 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
}
@Override
- protected void derive(ImmutableSDField field, Search search) {
- derive(field, search, false);
+ protected void derive(ImmutableSDField field, Schema schema) {
+ derive(field, schema, false);
}
- protected void derive(ImmutableSDField field, Search search, boolean inPosition) {
+ protected void derive(ImmutableSDField field, Schema schema, boolean inPosition) {
if (field.getDataType().equals(DataType.PREDICATE)) {
addIndexCommand(field, CMD_PREDICATE);
Index index = field.getIndex(field.getName());
@@ -127,7 +127,7 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
boolean isPosition = isPositionField(field);
if (field.usesStructOrMap()) {
for (ImmutableSDField structField : field.getStructFields()) {
- derive(structField, search, isPosition); // Recursion
+ derive(structField, schema, isPosition); // Recursion
}
}
@@ -151,8 +151,8 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
if (attribute != null && attribute.isFastSearch())
addIndexCommand(field.getName(), CMD_FAST_SEARCH);
} else if (field.doesIndexing()) {
- if (stemSomehow(field, search)) {
- addIndexCommand(field, stemCmd(field, search), new StemmingOverrider(this, search));
+ if (stemSomehow(field, schema)) {
+ addIndexCommand(field, stemCmd(field, schema), new StemmingOverrider(this, schema));
}
if (normalizeAccents(field)) {
addIndexCommand(field, CMD_NORMALIZE);
@@ -201,12 +201,12 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
&& field.getMatching().getCase().equals(Case.UNCASED));
}
- static String stemCmd(ImmutableSDField field, Search search) {
- return CMD_STEM + ":" + field.getStemming(search).toStemMode();
+ static String stemCmd(ImmutableSDField field, Schema schema) {
+ return CMD_STEM + ":" + field.getStemming(schema).toStemMode();
}
- private boolean stemSomehow(ImmutableSDField field, Search search) {
- if (field.getStemming(search).equals(Stemming.NONE)) return false;
+ private boolean stemSomehow(ImmutableSDField field, Schema schema) {
+ if (field.getStemming(schema).equals(Stemming.NONE)) return false;
return isTypeOrNested(field, DataType.STRING);
}
@@ -456,7 +456,7 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
}
private Stemming getEffectiveStemming(ImmutableSDField field) {
- Stemming active = field.getStemming(search);
+ Stemming active = field.getStemming(schema);
if (field.getIndex(field.getName()) != null) {
if (field.getIndex(field.getName()).getStemming()!=null) {
active = field.getIndex(field.getName()).getStemming();
@@ -472,7 +472,7 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
if (field.getStemming() != null) {
return !field.getStemming().equals(Stemming.NONE);
}
- if (search.getStemming()==Stemming.NONE) return false;
+ if (schema.getStemming() == Stemming.NONE) return false;
if (field.isImportedField()) return false;
if (field.getIndex(field.getName())==null) return true;
if (field.getIndex(field.getName()).getStemming()==null) return true;
@@ -563,19 +563,19 @@ public class IndexInfo extends Derived implements IndexInfoConfig.Producer {
private static class StemmingOverrider extends IndexOverrider {
- private Search search;
+ private Schema schema;
- public StemmingOverrider(IndexInfo owner, Search search) {
+ public StemmingOverrider(IndexInfo owner, Schema schema) {
super(owner);
- this.search = search;
+ this.schema = schema;
}
public boolean override(String indexName, String command, ImmutableSDField field) {
- if (search == null) {
+ if (schema == null) {
return false;
}
- Index index = search.getIndex(indexName);
+ Index index = schema.getIndex(indexName);
if (index == null) {
return false;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexSchema.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexSchema.java
index 8b5e9d4ca8e..ce5731bcdeb 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexSchema.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexSchema.java
@@ -7,7 +7,7 @@ import com.yahoo.document.Field;
import com.yahoo.document.StructuredDataType;
import com.yahoo.document.TensorDataType;
import com.yahoo.document.WeightedSetDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.BooleanIndexDefinition;
import com.yahoo.searchdefinition.document.FieldSet;
import com.yahoo.searchdefinition.document.ImmutableSDField;
@@ -31,9 +31,9 @@ public class IndexSchema extends Derived implements IndexschemaConfig.Producer {
private final Map<String, FieldCollection> collections = new LinkedHashMap<>();
private final Map<String, FieldSet> fieldSets = new LinkedHashMap<>();
- public IndexSchema(Search search) {
- fieldSets.putAll(search.fieldSets().userFieldSets());
- derive(search);
+ public IndexSchema(Schema schema) {
+ fieldSets.putAll(schema.fieldSets().userFieldSets());
+ derive(schema);
}
public boolean containsField(String fieldName) {
@@ -41,15 +41,15 @@ public class IndexSchema extends Derived implements IndexschemaConfig.Producer {
}
@Override
- protected void derive(Search search) {
- super.derive(search);
+ protected void derive(Schema schema) {
+ super.derive(schema);
}
private boolean isTensorField(ImmutableSDField field) {
return field.getDataType() instanceof TensorDataType;
}
- private void deriveIndexFields(ImmutableSDField field, Search search) {
+ private void deriveIndexFields(ImmutableSDField field, Schema schema) {
// Note: Indexes for tensor fields are NOT part of the index schema for text fields.
if ((!field.doesIndexing() && !field.isIndexStructureField()) ||
isTensorField(field))
@@ -62,7 +62,7 @@ public class IndexSchema extends Derived implements IndexschemaConfig.Producer {
}
String fieldName = field.getName();
for (Field flatField : lst) {
- deriveIndexFields(flatField, search);
+ deriveIndexFields(flatField, schema);
}
if (lst.size() > 1) {
FieldSet fieldSet = new FieldSet(fieldName);
@@ -73,9 +73,9 @@ public class IndexSchema extends Derived implements IndexschemaConfig.Producer {
}
}
- private void deriveIndexFields(Field field, Search search) {
+ private void deriveIndexFields(Field field, Schema schema) {
IndexField toAdd = new IndexField(field.getName(), Index.convertType(field.getDataType()), field.getDataType());
- com.yahoo.searchdefinition.Index definedIndex = search.getIndex(field.getName());
+ com.yahoo.searchdefinition.Index definedIndex = schema.getIndex(field.getName());
if (definedIndex != null) {
toAdd.setIndexSettings(definedIndex);
}
@@ -98,11 +98,11 @@ public class IndexSchema extends Derived implements IndexschemaConfig.Producer {
}
@Override
- protected void derive(ImmutableSDField field, Search search) {
+ protected void derive(ImmutableSDField field, Schema schema) {
if (field.usesStructOrMap()) {
return; // unsupported
}
- deriveIndexFields(field, search);
+ deriveIndexFields(field, schema);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexingScript.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexingScript.java
index 4bf4b21eb75..cabe8d001bd 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexingScript.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/IndexingScript.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.configdefinition.IlscriptsConfig;
import com.yahoo.vespa.configdefinition.IlscriptsConfig.Ilscript.Builder;
@@ -39,20 +39,20 @@ public final class IndexingScript extends Derived implements IlscriptsConfig.Pro
private final List<Expression> expressions = new ArrayList<>();
private List<ImmutableSDField> fieldsSettingLanguage;
- public IndexingScript(Search search) {
- derive(search);
+ public IndexingScript(Schema schema) {
+ derive(schema);
}
@Override
- protected void derive(Search search) {
- fieldsSettingLanguage = fieldsSettingLanguage(search);
+ protected void derive(Schema schema) {
+ fieldsSettingLanguage = fieldsSettingLanguage(schema);
if (fieldsSettingLanguage.size() == 1) // Assume this language should be used for all fields
addExpression(fieldsSettingLanguage.get(0).getIndexingScript());
- super.derive(search);
+ super.derive(schema);
}
@Override
- protected void derive(ImmutableSDField field, Search search) {
+ protected void derive(ImmutableSDField field, Schema schema) {
if (field.isImportedField()) return;
if (field.hasFullIndexingDocprocRights())
@@ -75,11 +75,11 @@ public final class IndexingScript extends Derived implements IlscriptsConfig.Pro
expressions.add(new StatementExpression(new ClearStateExpression(), new GuardExpression(expression)));
}
- private List<ImmutableSDField> fieldsSettingLanguage(Search search) {
- return search.allFieldsList().stream()
- .filter(field -> ! field.isImportedField())
- .filter(field -> field.containsExpression(SetLanguageExpression.class))
- .collect(Collectors.toList());
+ private List<ImmutableSDField> fieldsSettingLanguage(Schema schema) {
+ return schema.allFieldsList().stream()
+ .filter(field -> ! field.isImportedField())
+ .filter(field -> field.containsExpression(SetLanguageExpression.class))
+ .collect(Collectors.toList());
}
public Iterable<Expression> expressions() {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Juniperrc.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Juniperrc.java
index 8dad49f40d1..327d7df4d07 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Juniperrc.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Juniperrc.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
import com.yahoo.vespa.config.search.summary.JuniperrcConfig;
@@ -20,19 +20,19 @@ public class Juniperrc extends Derived implements JuniperrcConfig.Producer {
/**
* Constructs a new juniper rc instance for a given search object. This will derive the configuration automatically,
- * so there is no need to call {@link #derive(com.yahoo.searchdefinition.Search)}.
+ * so there is no need to call {@link #derive(Schema)}.
*
- * @param search The search model to use for deriving.
+ * @param schema The search model to use for deriving.
*/
- public Juniperrc(Search search) {
- derive(search);
+ public Juniperrc(Schema schema) {
+ derive(schema);
}
// Inherit doc from Derived.
@Override
- protected void derive(Search search) {
- super.derive(search);
- for (SummaryField summaryField : search.getUniqueNamedSummaryFields().values()) {
+ protected void derive(Schema schema) {
+ super.derive(schema);
+ for (SummaryField summaryField : schema.getUniqueNamedSummaryFields().values()) {
if (summaryField.getTransform() == SummaryTransform.BOLDED) {
boldingFields.add(summaryField.getName());
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
index dc84e1fdd8a..9f043770eab 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
@@ -12,7 +12,7 @@ import com.yahoo.searchdefinition.RankingConstant;
import com.yahoo.searchdefinition.RankingConstants;
import com.yahoo.vespa.config.search.RankProfilesConfig;
import com.yahoo.searchdefinition.RankProfile;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.config.search.core.OnnxModelsConfig;
import com.yahoo.vespa.config.search.core.RankingConstantsConfig;
import com.yahoo.vespa.config.search.core.RankingExpressionsConfig;
@@ -53,10 +53,10 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
/**
* Creates a rank profile
*
- * @param search the search definition this is a rank profile from
+ * @param schema the search definition this is a rank profile from
* @param attributeFields the attribute fields to create a ranking for
*/
- public RankProfileList(Search search,
+ public RankProfileList(Schema schema,
RankingConstants rankingConstants,
LargeRankExpressions largeRankExpressions,
OnnxModels onnxModels,
@@ -66,11 +66,11 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
ImportedMlModels importedModels,
ModelContext.Properties deployProperties,
ExecutorService executor) {
- setName(search == null ? "default" : search.getName());
+ setName(schema == null ? "default" : schema.getName());
this.rankingConstants = rankingConstants;
this.largeRankExpressions = largeRankExpressions;
this.onnxModels = onnxModels; // as ONNX models come from parsing rank expressions
- deriveRankProfiles(rankProfileRegistry, queryProfiles, importedModels, search, attributeFields, deployProperties, executor);
+ deriveRankProfiles(rankProfileRegistry, queryProfiles, importedModels, schema, attributeFields, deployProperties, executor);
}
private boolean areDependenciesReady(RankProfile rank, RankProfileRegistry registry) {
@@ -82,38 +82,38 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
private void deriveRankProfiles(RankProfileRegistry rankProfileRegistry,
QueryProfileRegistry queryProfiles,
ImportedMlModels importedModels,
- Search search,
+ Schema schema,
AttributeFields attributeFields,
ModelContext.Properties deployProperties,
ExecutorService executor) {
- if (search != null) { // profiles belonging to a search have a default profile
- RawRankProfile rawRank = new RawRankProfile(rankProfileRegistry.get(search, "default"),
+ if (schema != null) { // profiles belonging to a search have a default profile
+ RawRankProfile rawRank = new RawRankProfile(rankProfileRegistry.get(schema, "default"),
largeRankExpressions, queryProfiles, importedModels, attributeFields, deployProperties);
rankProfiles.put(rawRank.getName(), rawRank);
}
Map<String, RankProfile> remaining = new LinkedHashMap<>();
- rankProfileRegistry.rankProfilesOf(search).forEach(rank -> remaining.put(rank.getName(), rank));
+ rankProfileRegistry.rankProfilesOf(schema).forEach(rank -> remaining.put(rank.getName(), rank));
remaining.remove("default");
while (!remaining.isEmpty()) {
List<RankProfile> ready = new ArrayList<>();
remaining.forEach((name, rank) -> {
if (areDependenciesReady(rank, rankProfileRegistry)) ready.add(rank);
});
- processRankProfiles(ready, queryProfiles, importedModels, search, attributeFields, deployProperties, executor);
+ processRankProfiles(ready, queryProfiles, importedModels, schema, attributeFields, deployProperties, executor);
ready.forEach(rank -> remaining.remove(rank.getName()));
}
}
private void processRankProfiles(List<RankProfile> ready,
QueryProfileRegistry queryProfiles,
ImportedMlModels importedModels,
- Search search,
+ Schema schema,
AttributeFields attributeFields,
ModelContext.Properties deployProperties,
ExecutorService executor) {
Map<String, Future<RawRankProfile>> futureRawRankProfiles = new LinkedHashMap<>();
for (RankProfile rank : ready) {
- if (search == null) {
+ if (schema == null) {
onnxModels.add(rank.onnxModels());
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SearchOrderer.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SearchOrderer.java
index b55064cc49d..8703eb11433 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SearchOrderer.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SearchOrderer.java
@@ -4,8 +4,8 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.document.DataTypeName;
import com.yahoo.searchdefinition.DocumentReference;
import com.yahoo.searchdefinition.DocumentReferences;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDDocumentType;
-import com.yahoo.searchdefinition.Search;
import java.util.*;
@@ -23,7 +23,7 @@ import java.util.*;
public class SearchOrderer {
/** A map from DataTypeName to the Search defining them */
- private final Map<DataTypeName, Search> documentNameToSearch = new HashMap<>();
+ private final Map<DataTypeName, Schema> documentNameToSearch = new HashMap<>();
/**
* Reorders the given list of search definitions such that any supertype
@@ -32,21 +32,21 @@ public class SearchOrderer {
*
* @return a new list containing the same search instances in the right order
*/
- public List<Search> order(List<Search> unordered) {
+ public List<Schema> order(List<Schema> unordered) {
// Description above state that the original order should be preserved, except for the dependency constraint.
// Yet we botch that guarantee by sorting the list...
- unordered.sort(Comparator.comparing(Search::getName));
+ unordered.sort(Comparator.comparing(Schema::getName));
// No, this is not a fast algorithm...
indexOnDocumentName(unordered);
- List<Search> ordered = new ArrayList<>(unordered.size());
- List<Search> moveOutwards = new ArrayList<>();
- for (Search search : unordered) {
- if (allDependenciesAlreadyEmitted(ordered, search)) {
- addOrdered(ordered, search, moveOutwards);
+ List<Schema> ordered = new ArrayList<>(unordered.size());
+ List<Schema> moveOutwards = new ArrayList<>();
+ for (Schema schema : unordered) {
+ if (allDependenciesAlreadyEmitted(ordered, schema)) {
+ addOrdered(ordered, schema, moveOutwards);
}
else {
- moveOutwards.add(search);
+ moveOutwards.add(schema);
}
}
@@ -58,9 +58,9 @@ public class SearchOrderer {
return ordered;
}
- private void addOrdered(List<Search> ordered, Search search, List<Search> moveOutwards) {
- ordered.add(search);
- Search eligibleMove;
+ private void addOrdered(List<Schema> ordered, Schema schema, List<Schema> moveOutwards) {
+ ordered.add(schema);
+ Schema eligibleMove;
do {
eligibleMove = removeFirstEntryWithFullyEmittedDependencies(moveOutwards, ordered);
if (eligibleMove != null) {
@@ -70,8 +70,8 @@ public class SearchOrderer {
}
/** Removes and returns the first search from the move list which can now be added, or null if none */
- private Search removeFirstEntryWithFullyEmittedDependencies(List<Search> moveOutwards, List<Search> ordered) {
- for (Search move : moveOutwards) {
+ private Schema removeFirstEntryWithFullyEmittedDependencies(List<Schema> moveOutwards, List<Schema> ordered) {
+ for (Schema move : moveOutwards) {
if (allDependenciesAlreadyEmitted(ordered, move)) {
moveOutwards.remove(move);
return move;
@@ -80,29 +80,29 @@ public class SearchOrderer {
return null;
}
- private boolean allDependenciesAlreadyEmitted(List<Search> alreadyOrdered, Search search) {
- if (search.getDocument() == null) {
+ private boolean allDependenciesAlreadyEmitted(List<Schema> alreadyOrdered, Schema schema) {
+ if (schema.getDocument() == null) {
return true;
}
- SDDocumentType document = search.getDocument();
+ SDDocumentType document = schema.getDocument();
return allInheritedDependenciesEmitted(alreadyOrdered, document) && allReferenceDependenciesEmitted(alreadyOrdered, document);
}
- private boolean allInheritedDependenciesEmitted(List<Search> alreadyOrdered, SDDocumentType document) {
+ private boolean allInheritedDependenciesEmitted(List<Schema> alreadyOrdered, SDDocumentType document) {
for (SDDocumentType sdoc : document.getInheritedTypes() ) {
DataTypeName inheritedName = sdoc.getDocumentName();
if ("document".equals(inheritedName.getName())) {
continue;
}
- Search inheritedSearch = documentNameToSearch.get(inheritedName);
- if (!alreadyOrdered.contains(inheritedSearch)) {
+ Schema inheritedSchema = documentNameToSearch.get(inheritedName);
+ if (!alreadyOrdered.contains(inheritedSchema)) {
return false;
}
}
return true;
}
- private static boolean allReferenceDependenciesEmitted(List<Search> alreadyOrdered, SDDocumentType document) {
+ private static boolean allReferenceDependenciesEmitted(List<Schema> alreadyOrdered, SDDocumentType document) {
DocumentReferences documentReferences = document.getDocumentReferences()
.orElseThrow(() -> new IllegalStateException("Missing document references. Should have been processed by now."));
return documentReferences.stream()
@@ -111,11 +111,11 @@ public class SearchOrderer {
.allMatch(alreadyOrdered::contains);
}
- private void indexOnDocumentName(List<Search> searches) {
+ private void indexOnDocumentName(List<Schema> schemas) {
documentNameToSearch.clear();
- for (Search search : searches) {
- if (search.getDocument() != null) {
- documentNameToSearch.put(search.getDocument().getDocumentName(),search);
+ for (Schema schema : schemas) {
+ if (schema.getDocument() != null) {
+ documentNameToSearch.put(schema.getDocument().getDocumentName(), schema);
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Summaries.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Summaries.java
index a91bbeed9b2..5fdc51e8f5f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/Summaries.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/Summaries.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.config.application.api.DeployLogger;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.config.search.SummaryConfig;
import java.util.List;
@@ -16,12 +16,12 @@ public class Summaries extends Derived implements SummaryConfig.Producer {
private List<SummaryClass> summaries=new java.util.ArrayList<>(1);
- public Summaries(Search search, DeployLogger deployLogger) {
+ public Summaries(Schema schema, DeployLogger deployLogger) {
// Make sure the default is first
- summaries.add(new SummaryClass(search,search.getSummary("default"), deployLogger));
- for (DocumentSummary summary : search.getSummaries().values()) {
+ summaries.add(new SummaryClass(schema, schema.getSummary("default"), deployLogger));
+ for (DocumentSummary summary : schema.getSummaries().values()) {
if (!summary.getName().equals("default"))
- summaries.add(new SummaryClass(search,summary, deployLogger));
+ summaries.add(new SummaryClass(schema, summary, deployLogger));
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryClass.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryClass.java
index 2b40822b23b..5f88ddba5f5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryClass.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryClass.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.prelude.fastsearch.DocsumDefinitionSet;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.config.search.SummaryConfig;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -42,12 +42,12 @@ public class SummaryClass extends Derived {
*
* @param deployLogger a {@link DeployLogger}
*/
- public SummaryClass(Search search, DocumentSummary summary, DeployLogger deployLogger) {
+ public SummaryClass(Schema schema, DocumentSummary summary, DeployLogger deployLogger) {
this.deployLogger = deployLogger;
- this.rawAsBase64 = search.isRawAsBase64();
+ this.rawAsBase64 = schema.isRawAsBase64();
this.omitSummaryFeatures = summary.omitSummaryFeatures();
deriveName(summary);
- deriveFields(search,summary);
+ deriveFields(schema, summary);
deriveImplicitFields(summary);
}
@@ -62,9 +62,9 @@ public class SummaryClass extends Derived {
}
}
- private void deriveFields(Search search, DocumentSummary summary) {
+ private void deriveFields(Schema schema, DocumentSummary summary) {
for (SummaryField summaryField : summary.getSummaryFields()) {
- if (!accessingDiskSummary && search.isAccessingDiskSummary(summaryField)) {
+ if (!accessingDiskSummary && schema.isAccessingDiskSummary(summaryField)) {
accessingDiskSummary = true;
}
addField(summaryField.getName(), summaryField.getDataType(), summaryField.getTransform());
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
index c53dba0bab0..cf182a1afbc 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.config.search.SummarymapConfig;
import com.yahoo.vespa.documentmodel.DocumentSummary;
@@ -23,19 +23,19 @@ public class SummaryMap extends Derived implements SummarymapConfig.Producer {
private Map<String,FieldResultTransform> resultTransforms = new java.util.LinkedHashMap<>();
/** Creates a summary map from a search definition */
- SummaryMap(Search search) {
- derive(search);
+ SummaryMap(Schema schema) {
+ derive(schema);
}
- protected void derive(Search search) {
- for (DocumentSummary documentSummary : search.getSummaries().values()) {
+ protected void derive(Schema schema) {
+ for (DocumentSummary documentSummary : schema.getSummaries().values()) {
derive(documentSummary);
}
- super.derive(search);
+ super.derive(schema);
}
@Override
- protected void derive(ImmutableSDField field, Search search) {
+ protected void derive(ImmutableSDField field, Schema schema) {
}
private void derive(DocumentSummary documentSummary) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmFields.java
index a301f3983a6..2fd90d6c87e 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmFields.java
@@ -12,7 +12,7 @@ import com.yahoo.document.datatypes.Raw;
import com.yahoo.document.datatypes.StringFieldValue;
import com.yahoo.document.datatypes.TensorFieldValue;
import com.yahoo.searchdefinition.FieldSets;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.FieldSet;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -30,20 +30,20 @@ public class VsmFields extends Derived implements VsmfieldsConfig.Producer {
private final Map<String, StreamingField> fields=new LinkedHashMap<>();
private final Map<String, StreamingDocumentType> doctypes=new LinkedHashMap<>();
- public VsmFields(Search search) {
- addSearchdefinition(search);
+ public VsmFields(Schema schema) {
+ addSearchdefinition(schema);
}
- private void addSearchdefinition(Search search) {
- derive(search);
+ private void addSearchdefinition(Schema schema) {
+ derive(schema);
}
@Override
- protected void derive(SDDocumentType document,Search search) {
- super.derive(document, search);
+ protected void derive(SDDocumentType document, Schema schema) {
+ super.derive(document, schema);
StreamingDocumentType docType=getDocumentType(document.getName());
if (docType == null) {
- docType = new StreamingDocumentType(document.getName(), search.fieldSets());
+ docType = new StreamingDocumentType(document.getName(), schema.fieldSets());
doctypes.put(document.getName(), docType);
}
for (Object o : document.fieldSet()) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmSummary.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmSummary.java
index 44ba9df8226..a2c90bc92f5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmSummary.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/VsmSummary.java
@@ -2,9 +2,9 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.document.PositionDataType;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.config.search.vsm.VsmsummaryConfig;
@@ -20,23 +20,23 @@ public class VsmSummary extends Derived implements VsmsummaryConfig.Producer {
private Map<SummaryField, List<String>> summaryMap = new java.util.LinkedHashMap<>(1);
- public VsmSummary(Search search) {
- derive(search);
+ public VsmSummary(Schema schema) {
+ derive(schema);
}
@Override
- protected void derive(Search search) {
+ protected void derive(Schema schema) {
// Use the default class, as it is the superset
- derive(search, search.getSummary("default"));
+ derive(schema, schema.getSummary("default"));
}
- private void derive(Search search, DocumentSummary documentSummary) {
+ private void derive(Schema schema, DocumentSummary documentSummary) {
if (documentSummary==null) return;
for (SummaryField summaryField : documentSummary.getSummaryFields()) {
List<String> from = toStringList(summaryField.sourceIterator());
- if (doMapField(search, summaryField)) {
- SDField sdField = search.getConcreteField(summaryField.getName());
+ if (doMapField(schema, summaryField)) {
+ SDField sdField = schema.getConcreteField(summaryField.getName());
if (sdField != null && PositionDataType.INSTANCE.equals(sdField.getDataType())) {
summaryMap.put(summaryField, Collections.singletonList(summaryField.getName()));
} else {
@@ -52,9 +52,9 @@ public class VsmSummary extends Derived implements VsmsummaryConfig.Producer {
* Don't map if not struct either.
* @param summaryField a {@link SummaryField}
*/
- private boolean doMapField(Search search, SummaryField summaryField) {
- SDField sdField = search.getConcreteField(summaryField.getName());
- SDDocumentType document = search.getDocument();
+ private boolean doMapField(Schema schema, SummaryField summaryField) {
+ SDField sdField = schema.getConcreteField(summaryField.getName());
+ SDDocumentType document = schema.getDocument();
if (sdField==null || ((document != null) && (document.getField(summaryField.getName()) == sdField))) {
return true;
}
@@ -66,7 +66,7 @@ public class VsmSummary extends Derived implements VsmsummaryConfig.Producer {
}
if (summaryField.getSourceCount()==sdField.getStructFields().size()) {
for (SummaryField.Source source : summaryField.getSources()) {
- if (!sdField.getStructFields().contains(new SDField(search.getDocument(), source.getName(), sdField.getDataType()))) { // equals() uses just name
+ if (!sdField.getStructFields().contains(new SDField(schema.getDocument(), source.getName(), sdField.getDataType()))) { // equals() uses just name
return true;
}
if (sdField.getStructField(source.getName())!=null && !sdField.getStructField(source.getName()).doesSummarying()) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/IndexStructureValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/IndexStructureValidator.java
index c41437f2531..76f52bce2a9 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/IndexStructureValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/IndexStructureValidator.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived.validation;
import com.yahoo.searchdefinition.document.SDDocumentType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.searchdefinition.derived.IndexingScript;
import com.yahoo.vespa.indexinglanguage.ExpressionVisitor;
@@ -14,14 +14,14 @@ import com.yahoo.vespa.indexinglanguage.expressions.OutputExpression;
*/
public class IndexStructureValidator extends Validator {
- public IndexStructureValidator(DerivedConfiguration config, Search search) {
- super(config, search);
+ public IndexStructureValidator(DerivedConfiguration config, Schema schema) {
+ super(config, schema);
}
public void validate() {
IndexingScript script = config.getIndexingScript();
for (Expression exp : script.expressions()) {
- new OutputVisitor(search.getDocument(), exp).visit(exp);
+ new OutputVisitor(schema.getDocument(), exp).visit(exp);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validation.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validation.java
index a32fe67312f..fd75fbb2f48 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validation.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validation.java
@@ -1,12 +1,12 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived.validation;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
public class Validation {
- public static void validate(DerivedConfiguration config, Search search) {
- new IndexStructureValidator(config, search).validate();
+ public static void validate(DerivedConfiguration config, Schema schema) {
+ new IndexStructureValidator(config, schema).validate();
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validator.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validator.java
index 170639f5deb..7d3e5b8e9ed 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/validation/Validator.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived.validation;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
/**
@@ -10,11 +10,11 @@ import com.yahoo.searchdefinition.derived.DerivedConfiguration;
public abstract class Validator {
protected DerivedConfiguration config;
- protected Search search;
+ protected Schema schema;
- protected Validator(DerivedConfiguration config, Search search) {
+ protected Validator(DerivedConfiguration config, Schema schema) {
this.config = config;
- this.search = search;
+ this.schema = schema;
}
public abstract void validate();
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableImportedSDField.java b/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableImportedSDField.java
index 925b67014e5..71814c31087 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableImportedSDField.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableImportedSDField.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.document;
import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
import com.yahoo.vespa.indexinglanguage.expressions.ScriptExpression;
@@ -151,7 +151,7 @@ public class ImmutableImportedSDField implements ImmutableSDField {
}
@Override
- public Stemming getStemming(Search search) {
+ public Stemming getStemming(Schema schema) {
throw createUnsupportedException("stemming");
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableSDField.java b/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableSDField.java
index d54f76614c0..6d1dee67641 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableSDField.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/document/ImmutableSDField.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.document;
import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
import com.yahoo.vespa.indexinglanguage.expressions.ScriptExpression;
@@ -69,7 +69,7 @@ public interface ImmutableSDField {
Stemming getStemming();
- Stemming getStemming(Search search);
+ Stemming getStemming(Schema schema);
Ranking getRanking();
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/document/SDDocumentType.java b/config-model/src/main/java/com/yahoo/searchdefinition/document/SDDocumentType.java
index 5d50abec8bb..cef9cf3dede 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/document/SDDocumentType.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/document/SDDocumentType.java
@@ -14,7 +14,7 @@ import com.yahoo.documentmodel.NewDocumentType;
import com.yahoo.documentmodel.VespaDocumentType;
import com.yahoo.searchdefinition.DocumentReferences;
import com.yahoo.searchdefinition.FieldSets;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.io.Serializable;
import java.util.ArrayList;
@@ -149,13 +149,13 @@ public class SDDocumentType implements Cloneable, Serializable {
* The document type id will be generated as a hash from the document type name.
*
* @param name The name of the new document type
- * @param search check for type ID collisions in this search definition
+ * @param schema check for type ID collisions in this search definition
*/
@SuppressWarnings("deprecation")
- public SDDocumentType(String name, Search search) {
+ public SDDocumentType(String name, Schema schema) {
docType = new DocumentType(name);
docType.contentStruct().setCompressionConfig(new CompressionConfig());
- validateId(search);
+ validateId(schema);
inherit(VESPA_DOCUMENT);
}
@@ -196,10 +196,10 @@ public class SDDocumentType implements Cloneable, Serializable {
public Collection<SDDocumentType> getInheritedTypes() { return inheritedTypes.values(); }
- protected void validateId(Search search) {
- if (search == null) return;
- if (search.getDocument(getName()) == null) return;
- SDDocumentType doc = search.getDocument();
+ protected void validateId(Schema schema) {
+ if (schema == null) return;
+ if (schema.getDocument(getName()) == null) return;
+ SDDocumentType doc = schema.getDocument();
throw new IllegalArgumentException("Failed creating document type '" + getName() + "', " +
"document type '" + doc.getName() + "' already uses ID '" + doc.getName() + "'");
}
@@ -312,7 +312,7 @@ public class SDDocumentType implements Cloneable, Serializable {
return docType;
}
- /** The field sets defined for this type and its {@link Search} */
+ /** The field sets defined for this type and its {@link Schema} */
public FieldSets getFieldSets() {
return fieldSets;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/document/SDField.java b/config-model/src/main/java/com/yahoo/searchdefinition/document/SDField.java
index a66820a9bfe..566342403d4 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/document/SDField.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/document/SDField.java
@@ -12,7 +12,7 @@ import com.yahoo.language.Linguistics;
import com.yahoo.language.process.Embedder;
import com.yahoo.language.simple.SimpleLinguistics;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.fieldoperation.FieldOperation;
import com.yahoo.searchdefinition.fieldoperation.FieldOperationContainer;
import com.yahoo.tensor.TensorType;
@@ -672,11 +672,11 @@ public class SDField extends Field implements TypedKey, FieldOperationContainer,
* Whether this field should be stemmed in this search definition
*/
@Override
- public Stemming getStemming(Search search) {
+ public Stemming getStemming(Schema schema) {
if (stemming != null)
return stemming;
else
- return search.getStemming();
+ return schema.getStemming();
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFields.java
index 213928b3edb..ac4d51221ef 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFields.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableImportedComplexSDField;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -20,21 +20,21 @@ import java.util.stream.Stream;
*/
public class AddAttributeTransformToSummaryOfImportedFields extends Processor {
- public AddAttributeTransformToSummaryOfImportedFields(Search search,
+ public AddAttributeTransformToSummaryOfImportedFields(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- search.allImportedFields()
- .forEach(field -> setTransform(field));
+ schema.allImportedFields()
+ .forEach(field -> setTransform(field));
}
private Stream<SummaryField> getSummaryFieldsForImportedField(ImmutableSDField importedField) {
- return search.getSummaryFields(importedField).values().stream();
+ return schema.getSummaryFields(importedField).values().stream();
}
private void setTransform(ImmutableSDField field) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddExtraFieldsToDocument.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddExtraFieldsToDocument.java
index 152399337fd..d7e68dc7dab 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddExtraFieldsToDocument.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AddExtraFieldsToDocument.java
@@ -6,7 +6,7 @@ import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -15,14 +15,14 @@ import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
- * This processor creates a {@link com.yahoo.searchdefinition.document.SDDocumentType} for each {@link Search} object which holds all the data that search
+ * This processor creates a {@link com.yahoo.searchdefinition.document.SDDocumentType} for each {@link Schema} object which holds all the data that search
* associates with a document described in a search definition file. This includes all extra fields, summary fields and
* implicit fields. All non-indexed and non-summary fields are discarded.
*/
public class AddExtraFieldsToDocument extends Processor {
- AddExtraFieldsToDocument(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ AddExtraFieldsToDocument(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
//TODO This is a tempoarry hack to avoid producing illegal code for fields not wanted anyway.
@@ -32,21 +32,21 @@ public class AddExtraFieldsToDocument extends Processor {
@Override
public void process(boolean validate, boolean documentsOnly) {
- SDDocumentType document = search.getDocument();
+ SDDocumentType document = schema.getDocument();
if (document != null) {
- for (Field field : search.extraFieldList()) {
- addSdField(search, document, (SDField)field, validate);
+ for (Field field : schema.extraFieldList()) {
+ addSdField(schema, document, (SDField)field, validate);
}
//TODO Vespa 8 or sooner we should avoid the dirty addition of fields from dirty 'default' summary to document at all
- for (SummaryField field : search.getSummary("default").getSummaryFields()) {
+ for (SummaryField field : schema.getSummary("default").getSummaryFields()) {
if (dirtyLegalFieldNameCheck(field.getName())) {
- addSummaryField(search, document, field, validate);
+ addSummaryField(schema, document, field, validate);
}
}
}
}
- private void addSdField(Search search, SDDocumentType document, SDField field, boolean validate) {
+ private void addSdField(Schema schema, SDDocumentType document, SDField field, boolean validate) {
if (! field.hasIndex() && field.getAttributes().isEmpty()) {
return;
}
@@ -57,19 +57,19 @@ public class AddExtraFieldsToDocument extends Processor {
if (atr.getCollectionType().equals(Attribute.CollectionType.ARRAY)) {
type = DataType.getArray(type);
}
- addField(search, document, new SDField(document, atr.getName(), type), validate);
+ addField(schema, document, new SDField(document, atr.getName(), type), validate);
} else if (!atr.getName().equals(field.getName())) {
- addField(search, document, new SDField(document, atr.getName(), atr.getDataType()), validate);
+ addField(schema, document, new SDField(document, atr.getName(), atr.getDataType()), validate);
}
}
- addField(search, document, field, validate);
+ addField(schema, document, field, validate);
}
@SuppressWarnings("deprecation")
- private void addSummaryField(Search search, SDDocumentType document, SummaryField field, boolean validate) {
+ private void addSummaryField(Schema schema, SDDocumentType document, SummaryField field, boolean validate) {
Field docField = document.getField(field.getName());
if (docField == null) {
- ImmutableSDField existingField = search.getField(field.getName());
+ ImmutableSDField existingField = schema.getField(field.getName());
if (existingField == null) {
SDField newField = new SDField(document, field.getName(), field.getDataType(), true);
newField.setIsExtraField(true);
@@ -79,14 +79,14 @@ public class AddExtraFieldsToDocument extends Processor {
}
} else if (!docField.getDataType().equals(field.getDataType())) {
if (validate)
- throw newProcessException(search, field, "Summary field has conflicting type.");
+ throw newProcessException(schema, field, "Summary field has conflicting type.");
}
}
- private void addField(Search search, SDDocumentType document, Field field, boolean validate) {
+ private void addField(Schema schema, SDDocumentType document, Field field, boolean validate) {
if (document.getField(field.getName()) != null) {
if (validate)
- throw newProcessException(search, field, "Field shadows another.");
+ throw newProcessException(schema, field, "Field shadows another.");
}
document.addField(field);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFields.java
index fd103f3901c..176fcf2130f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFields.java
@@ -6,7 +6,7 @@ import com.yahoo.document.ArrayDataType;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.documentmodel.DocumentSummary;
@@ -21,13 +21,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class AdjustPositionSummaryFields extends Processor {
- public AdjustPositionSummaryFields(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public AdjustPositionSummaryFields(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
scanSummary(summary);
}
}
@@ -37,7 +37,7 @@ public class AdjustPositionSummaryFields extends Processor {
if (isPositionDataType(summaryField.getDataType())) {
String originalSource = summaryField.getSingleSource();
if (originalSource.indexOf('.') == -1) { // Eliminate summary fields with pos.x or pos.y as source
- ImmutableSDField sourceField = search.getField(originalSource);
+ ImmutableSDField sourceField = schema.getField(originalSource);
if (sourceField != null) {
String zCurve = null;
if (sourceField.getDataType().equals(summaryField.getDataType())) {
@@ -77,7 +77,7 @@ public class AdjustPositionSummaryFields extends Processor {
}
private void ensureSummaryField(DocumentSummary summary, String fieldName, DataType dataType, Source source, SummaryTransform transform) {
- SummaryField oldField = search.getSummaryField(fieldName);
+ SummaryField oldField = schema.getSummaryField(fieldName);
if (oldField == null) {
SummaryField newField = new SummaryField(fieldName, dataType, transform);
newField.addSource(source);
@@ -97,9 +97,9 @@ public class AdjustPositionSummaryFields extends Processor {
}
private boolean hasPositionAttribute(String name) {
- Attribute attribute = search.getAttribute(name);
+ Attribute attribute = schema.getAttribute(name);
if (attribute == null) {
- ImmutableSDField field = search.getField(name);
+ ImmutableSDField field = schema.getField(name);
if (field != null && field.isImportedField()) {
attribute = field.getAttribute();
}
@@ -121,7 +121,7 @@ public class AdjustPositionSummaryFields extends Processor {
}
private void fail(SummaryField summaryField, String msg) {
- throw newProcessException(search.getName(), summaryField.getName(), msg);
+ throw newProcessException(schema.getName(), summaryField.getName(), msg);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributeProperties.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributeProperties.java
index e7cc562b42d..42e14a2c1ee 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributeProperties.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributeProperties.java
@@ -3,10 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -16,13 +16,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class AttributeProperties extends Processor {
- public AttributeProperties(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public AttributeProperties(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (ImmutableSDField field : search.allConcreteFields()) {
+ for (ImmutableSDField field : schema.allConcreteFields()) {
String fieldName = field.getName();
// For each attribute, check if the attribute has been created
@@ -33,7 +33,7 @@ public class AttributeProperties extends Processor {
}
// Check other fields or statements that may have created this attribute.
boolean created = false;
- for (SDField f : search.allConcreteFields()) {
+ for (SDField f : schema.allConcreteFields()) {
// Checking against the field we are looking at
if (!f.getName().equals(fieldName)) {
if (attributeCreated(f, attribute.getName())) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributesImplicitWord.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributesImplicitWord.java
index 27e9d5a070f..d3fa3282f4f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributesImplicitWord.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/AttributesImplicitWord.java
@@ -4,10 +4,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.document.NumericDataType;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -18,13 +18,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class AttributesImplicitWord extends Processor {
- public AttributesImplicitWord(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public AttributesImplicitWord(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (ImmutableSDField field : search.allConcreteFields()) {
+ for (ImmutableSDField field : schema.allConcreteFields()) {
processFieldRecursive(field);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Bolding.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Bolding.java
index 8c62cdfaec6..575a037be91 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Bolding.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Bolding.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.document.ImmutableSDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -17,14 +17,14 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class Bolding extends Processor {
- public Bolding(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public Bolding(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (ImmutableSDField field : search.allConcreteFields()) {
+ for (ImmutableSDField field : schema.allConcreteFields()) {
for (SummaryField summary : field.getSummaryFields().values()) {
if (summary.getTransform().isBolded() &&
!((summary.getDataType() == DataType.STRING) || (summary.getDataType() == DataType.URI)))
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/BoolAttributeValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/BoolAttributeValidator.java
index f4bf4432aa0..6676e20c341 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/BoolAttributeValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/BoolAttributeValidator.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -16,20 +16,20 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class BoolAttributeValidator extends Processor {
- public BoolAttributeValidator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public BoolAttributeValidator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (var field : search.allConcreteFields()) {
+ for (var field : schema.allConcreteFields()) {
var attribute = field.getAttribute();
if (attribute == null) {
continue;
}
if (attribute.getType().equals(Attribute.Type.BOOL) &&
!attribute.getCollectionType().equals(Attribute.CollectionType.SINGLE)) {
- fail(search, field, "Only single value bool attribute fields are supported");
+ fail(schema, field, "Only single value bool attribute fields are supported");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/BuiltInFieldSets.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/BuiltInFieldSets.java
index fc23042649b..ce93c1a5c3f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/BuiltInFieldSets.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/BuiltInFieldSets.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DocumentType;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.Field;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -19,8 +19,8 @@ public class BuiltInFieldSets extends Processor {
public static final String SEARCH_FIELDSET_NAME = "[search]"; // Public due to oddities in position handling.
public static final String INTERNAL_FIELDSET_NAME = "[internal]"; // This one populated from misc places
- public BuiltInFieldSets(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public BuiltInFieldSets(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -29,21 +29,21 @@ public class BuiltInFieldSets extends Processor {
addSearchFieldSet();
// "Hook" the field sets on search onto the document types, since we will include them
// on the document configs
- search.getDocument().setFieldSets(search.fieldSets());
+ schema.getDocument().setFieldSets(schema.fieldSets());
}
private void addSearchFieldSet() {
- for (SDField searchField : search.extraFieldList()) {
- search.fieldSets().addBuiltInFieldSetItem(SEARCH_FIELDSET_NAME, searchField.getName());
+ for (SDField searchField : schema.extraFieldList()) {
+ schema.fieldSets().addBuiltInFieldSetItem(SEARCH_FIELDSET_NAME, searchField.getName());
}
}
private void addDocumentFieldSet() {
- for (Field docField : search.getDocument().fieldSet()) {
+ for (Field docField : schema.getDocument().fieldSet()) {
if (docField instanceof SDField && ((SDField) docField).isExtraField()) {
continue; // skip
}
- search.fieldSets().addBuiltInFieldSetItem(DocumentType.DOCUMENT, docField.getName());
+ schema.fieldSets().addBuiltInFieldSetItem(DocumentType.DOCUMENT, docField.getName());
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/CreatePositionZCurve.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/CreatePositionZCurve.java
index 7b0ea68db5a..699abb1e792 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/CreatePositionZCurve.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/CreatePositionZCurve.java
@@ -6,7 +6,7 @@ import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.ArrayDataType;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -33,18 +33,18 @@ import java.util.logging.Level;
*/
public class CreatePositionZCurve extends Processor {
- public CreatePositionZCurve(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public CreatePositionZCurve(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
DataType fieldType = field.getDataType();
if ( ! isSupportedPositionType(fieldType)) continue;
if (validate && field.doesIndexing()) {
- fail(search, field, "Indexing of data type '" + fieldType.getName() + "' is not supported, " +
+ fail(schema, field, "Indexing of data type '" + fieldType.getName() + "' is not supported, " +
"replace 'index' statement with 'attribute'.");
}
@@ -57,8 +57,8 @@ public class CreatePositionZCurve extends Processor {
String zName = PositionDataType.getZCurveFieldName(fieldName);
SDField zCurveField = createZCurveField(field, zName, validate);
- search.addExtraField(zCurveField);
- search.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, zCurveField.getName());
+ schema.addExtraField(zCurveField);
+ schema.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, zCurveField.getName());
// configure summary
Collection<String> summaryTo = removeSummaryTo(field);
@@ -88,8 +88,8 @@ public class CreatePositionZCurve extends Processor {
}
private SDField createZCurveField(SDField inputField, String fieldName, boolean validate) {
- if (validate && search.getConcreteField(fieldName) != null || search.getAttribute(fieldName) != null) {
- throw newProcessException(search, null, "Incompatible position attribute '" + fieldName +
+ if (validate && schema.getConcreteField(fieldName) != null || schema.getAttribute(fieldName) != null) {
+ throw newProcessException(schema, null, "Incompatible position attribute '" + fieldName +
"' already created.");
}
boolean isArray = inputField.getDataType() instanceof ArrayDataType;
@@ -109,7 +109,7 @@ public class CreatePositionZCurve extends Processor {
private void ensureCompatibleSummary(SDField field, String sourceName, String summaryName, DataType summaryType,
SummaryTransform summaryTransform, Collection<String> summaryTo, boolean validate) {
- SummaryField summary = search.getSummaryField(summaryName);
+ SummaryField summary = schema.getSummaryField(summaryName);
if (summary == null) {
summary = new SummaryField(summaryName, summaryType, summaryTransform);
summary.addDestination("default");
@@ -117,7 +117,7 @@ public class CreatePositionZCurve extends Processor {
field.addSummaryField(summary);
} else if (!summary.getDataType().equals(summaryType)) {
if (validate)
- fail(search, field, "Incompatible summary field '" + summaryName + "' type "+summary.getDataType()+" already created.");
+ fail(schema, field, "Incompatible summary field '" + summaryName + "' type " + summary.getDataType() + " already created.");
} else if (summary.getTransform() == SummaryTransform.NONE) {
summary.setTransform(summaryTransform);
summary.addDestination("default");
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DictionaryProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DictionaryProcessor.java
index d8331746968..dc620e38e96 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DictionaryProcessor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DictionaryProcessor.java
@@ -5,11 +5,10 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.NumericDataType;
import com.yahoo.document.PrimitiveDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.Case;
import com.yahoo.searchdefinition.document.Dictionary;
-import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -20,12 +19,12 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
* @author baldersheim
*/
public class DictionaryProcessor extends Processor {
- public DictionaryProcessor(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public DictionaryProcessor(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
Attribute attribute = field.getAttribute();
if (attribute == null) continue;
attribute.setCase(field.getMatching().getCase());
@@ -35,20 +34,20 @@ public class DictionaryProcessor extends Processor {
if (attribute.isFastSearch()) {
attribute.setDictionary(dictionary);
} else {
- fail(search, field, "You must specify 'attribute:fast-search' to allow dictionary control");
+ fail(schema, field, "You must specify 'attribute:fast-search' to allow dictionary control");
}
} else if (attribute.getDataType().getPrimitiveType() == PrimitiveDataType.STRING) {
attribute.setDictionary(dictionary);
if (dictionary.getType() == Dictionary.Type.HASH) {
if (dictionary.getMatch() != Case.CASED) {
- fail(search, field, "hash dictionary require cased match");
+ fail(schema, field, "hash dictionary require cased match");
}
}
if (! dictionary.getMatch().equals(attribute.getCase())) {
- fail(search, field, "Dictionary casing '" + dictionary.getMatch() + "' does not match field match casing '" + attribute.getCase() + "'");
+ fail(schema, field, "Dictionary casing '" + dictionary.getMatch() + "' does not match field match casing '" + attribute.getCase() + "'");
}
} else {
- fail(search, field, "You can only specify 'dictionary:' for numeric or string fields");
+ fail(schema, field, "You can only specify 'dictionary:' for numeric or string fields");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypes.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypes.java
index 74bc476f96b..6ffe00458a8 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypes.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypes.java
@@ -8,9 +8,9 @@ import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
import com.yahoo.document.MapDataType;
import com.yahoo.document.PrimitiveDataType;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.document.WeightedSetDataType;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -20,8 +20,8 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class DisallowComplexMapAndWsetKeyTypes extends Processor {
- public DisallowComplexMapAndWsetKeyTypes(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public DisallowComplexMapAndWsetKeyTypes(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -30,7 +30,7 @@ public class DisallowComplexMapAndWsetKeyTypes extends Processor {
// TODO also traverse struct types to search for bad map or wset types.
// Do this after document manager is fixed, do not start using the static stuff on SDDocumentTypes any more.
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
checkFieldType(field, field.getDataType());
}
}
@@ -42,12 +42,12 @@ public class DisallowComplexMapAndWsetKeyTypes extends Processor {
} else if (dataType instanceof WeightedSetDataType) {
DataType nestedType = ((WeightedSetDataType) dataType).getNestedType();
if ( ! (nestedType instanceof PrimitiveDataType)) {
- fail(search, field, "Weighted set must have a primitive key type.");
+ fail(schema, field, "Weighted set must have a primitive key type.");
}
} else if (dataType instanceof MapDataType) {
DataType keyType = ((MapDataType) dataType).getKeyType();
if ( ! (keyType instanceof PrimitiveDataType)) {
- fail(search, field, "Map key type must be a primitive type.");
+ fail(schema, field, "Map key type must be a primitive type.");
}
checkFieldType(field, ((MapDataType) dataType).getValueType());
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DiversitySettingsValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DiversitySettingsValidator.java
index 282ca6b3645..40de25dbc76 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/DiversitySettingsValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/DiversitySettingsValidator.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -13,8 +13,8 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class DiversitySettingsValidator extends Processor {
- public DiversitySettingsValidator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public DiversitySettingsValidator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -22,7 +22,7 @@ public class DiversitySettingsValidator extends Processor {
if ( ! validate) return;
if (documentsOnly) return;
- for (RankProfile rankProfile : rankProfileRegistry.rankProfilesOf(search.getName())) {
+ for (RankProfile rankProfile : rankProfileRegistry.rankProfilesOf(schema.getName())) {
if (rankProfile.getMatchPhaseSettings() != null && rankProfile.getMatchPhaseSettings().getDiversity() != null) {
validate(rankProfile, rankProfile.getMatchPhaseSettings().getDiversity());
}
@@ -30,8 +30,8 @@ public class DiversitySettingsValidator extends Processor {
}
private void validate(RankProfile rankProfile, RankProfile.DiversitySettings settings) {
String attributeName = settings.getAttribute();
- new AttributeValidator(search.getName(), rankProfile.getName(),
- search.getAttribute(attributeName), attributeName).validate();
+ new AttributeValidator(schema.getName(), rankProfile.getName(),
+ schema.getAttribute(attributeName), attributeName).validate();
}
private static class AttributeValidator extends MatchPhaseSettingsValidator.AttributeValidator {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ExactMatch.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ExactMatch.java
index deb37adfa94..a516667c524 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ExactMatch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ExactMatch.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
@@ -27,30 +27,30 @@ public class ExactMatch extends Processor {
public static final String DEFAULT_EXACT_TERMINATOR = "@@";
- ExactMatch(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ ExactMatch(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
- processField(field, search);
+ for (SDField field : schema.allConcreteFields()) {
+ processField(field, schema);
}
}
- private void processField(SDField field, Search search) {
+ private void processField(SDField field, Schema schema) {
Matching.Type matching = field.getMatching().getType();
if (matching.equals(Matching.Type.EXACT) || matching.equals(Matching.Type.WORD)) {
- implementExactMatch(field, search);
+ implementExactMatch(field, schema);
} else if (field.getMatching().getExactMatchTerminator() != null) {
- warn(search, field, "exact-terminator requires 'exact' matching to have any effect.");
+ warn(schema, field, "exact-terminator requires 'exact' matching to have any effect.");
}
for (var structField : field.getStructFields()) {
- processField(structField, search);
+ processField(structField, schema);
}
}
- private void implementExactMatch(SDField field, Search search) {
+ private void implementExactMatch(SDField field, Schema schema) {
field.setStemming(Stemming.NONE);
field.getNormalizing().inferLowercase();
@@ -62,7 +62,7 @@ public class ExactMatch extends Processor {
&& ! field.getMatching().getExactMatchTerminator().equals("")) {
exactTerminator = field.getMatching().getExactMatchTerminator();
} else {
- info(search, field,
+ info(schema, field,
"With 'exact' matching, an exact-terminator is needed," +
" using default value '" + exactTerminator +"' as terminator");
}
@@ -75,7 +75,7 @@ public class ExactMatch extends Processor {
}
ScriptExpression script = field.getIndexingScript();
if (new ExpressionSearcher<>(IndexExpression.class).containedIn(script)) {
- field.setIndexingScript((ScriptExpression)new MyProvider(search).convert(field.getIndexingScript()));
+ field.setIndexingScript((ScriptExpression)new MyProvider(schema).convert(field.getIndexingScript()));
}
}
@@ -85,8 +85,8 @@ public class ExactMatch extends Processor {
private static class MyProvider extends TypedTransformProvider {
- MyProvider(Search search) {
- super(ExactExpression.class, search);
+ MyProvider(Schema schema) {
+ super(ExactExpression.class, schema);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FastAccessValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FastAccessValidator.java
index a6b61e28bfc..5605f66cd69 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FastAccessValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FastAccessValidator.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -16,25 +16,25 @@ import java.util.stream.Collectors;
*/
public class FastAccessValidator extends Processor {
- public FastAccessValidator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public FastAccessValidator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- String invalidAttributes = search.allFields()
- .flatMap(field -> field.getAttributes().values().stream())
- .filter(FastAccessValidator::isIncompatibleAttribute)
- .map(Attribute::getName)
- .collect(Collectors.joining(", "));
+ String invalidAttributes = schema.allFields()
+ .flatMap(field -> field.getAttributes().values().stream())
+ .filter(FastAccessValidator::isIncompatibleAttribute)
+ .map(Attribute::getName)
+ .collect(Collectors.joining(", "));
if ( ! invalidAttributes.isEmpty()) {
throw new IllegalArgumentException(
String.format(
"For search '%s': The following attributes have a type that is incompatible with fast-access: %s. " +
"Predicate, tensor and reference attributes are incompatible with fast-access.",
- search.getName(),
+ schema.getName(),
invalidAttributes));
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FieldSetSettings.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FieldSetSettings.java
index 291b84fa67b..0598bb70afd 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FieldSetSettings.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FieldSetSettings.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.FieldSet;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.Matching;
@@ -22,42 +22,42 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
// (this requires adding normalizing and stemming settings to FieldSet).
public class FieldSetSettings extends Processor {
- public FieldSetSettings(Search search,
+ public FieldSetSettings(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (FieldSet fieldSet : search.fieldSets().userFieldSets().values()) {
+ for (FieldSet fieldSet : schema.fieldSets().userFieldSets().values()) {
if (validate)
- checkFieldNames(search, fieldSet);
- checkMatching(search, fieldSet);
- checkNormalization(search, fieldSet);
- checkStemming(search, fieldSet);
+ checkFieldNames(schema, fieldSet);
+ checkMatching(schema, fieldSet);
+ checkNormalization(schema, fieldSet);
+ checkStemming(schema, fieldSet);
}
}
- private void checkFieldNames(Search search, FieldSet fieldSet) {
+ private void checkFieldNames(Schema schema, FieldSet fieldSet) {
for (String field : fieldSet.getFieldNames()) {
- if (search.getField(field) == null)
- throw new IllegalArgumentException("For search '" + search.getName() +
- "': Field '"+ field + "' in " + fieldSet + " does not exist.");
+ if (schema.getField(field) == null)
+ throw new IllegalArgumentException("For search '" + schema.getName() +
+ "': Field '" + field + "' in " + fieldSet + " does not exist.");
}
}
- private void checkMatching(Search search, FieldSet fieldSet) {
+ private void checkMatching(Schema schema, FieldSet fieldSet) {
Matching matching = fieldSet.getMatching();
for (String fieldName : fieldSet.getFieldNames()) {
- ImmutableSDField field = search.getField(fieldName);
+ ImmutableSDField field = schema.getField(fieldName);
Matching fieldMatching = field.getMatching();
if (matching == null) {
matching = fieldMatching;
} else {
if ( ! matching.equals(fieldMatching)) {
- warn(search, field.asField(),
+ warn(schema, field.asField(),
"The matching settings for the fields in " + fieldSet + " are inconsistent " +
"(explicitly or because of field type). This may lead to recall and ranking issues.");
return;
@@ -67,16 +67,16 @@ public class FieldSetSettings extends Processor {
fieldSet.setMatching(matching); // Assign the uniquely determined matching to the field set
}
- private void checkNormalization(Search search, FieldSet fieldSet) {
+ private void checkNormalization(Schema schema, FieldSet fieldSet) {
NormalizeLevel.Level normalizing = null;
for (String fieldName : fieldSet.getFieldNames()) {
- ImmutableSDField field = search.getField(fieldName);
+ ImmutableSDField field = schema.getField(fieldName);
NormalizeLevel.Level fieldNorm = field.getNormalizing().getLevel();
if (normalizing == null) {
normalizing = fieldNorm;
} else {
if ( ! normalizing.equals(fieldNorm)) {
- warn(search, field.asField(),
+ warn(schema, field.asField(),
"The normalization settings for the fields in " + fieldSet + " are inconsistent " +
"(explicitly or because of field type). This may lead to recall and ranking issues.");
return;
@@ -85,16 +85,16 @@ public class FieldSetSettings extends Processor {
}
}
- private void checkStemming(Search search, FieldSet fieldSet) {
+ private void checkStemming(Schema schema, FieldSet fieldSet) {
Stemming stemming = null;
for (String fieldName : fieldSet.getFieldNames()) {
- ImmutableSDField field = search.getField(fieldName);
+ ImmutableSDField field = schema.getField(fieldName);
Stemming fieldStemming = field.getStemming();
if (stemming == null) {
stemming = fieldStemming;
} else {
if ( ! stemming.equals(fieldStemming)) {
- warn(search, field.asField(),
+ warn(schema, field.asField(),
"The stemming settings for the fields in the fieldset '"+fieldSet.getName()+
"' are inconsistent (explicitly or because of field type). " +
"This may lead to recall and ranking issues.");
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FilterFieldNames.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FilterFieldNames.java
index 201aaf46470..d89f83c333f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/FilterFieldNames.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/FilterFieldNames.java
@@ -3,10 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.RankType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.RankProfile;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import java.util.Iterator;
@@ -21,23 +21,23 @@ import java.util.logging.Level;
*/
public class FilterFieldNames extends Processor {
- public FilterFieldNames(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public FilterFieldNames(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if (documentsOnly) return;
- for (SDField f : search.allConcreteFields()) {
+ for (SDField f : schema.allConcreteFields()) {
if (f.getRanking().isFilter()) {
filterField(f.getName());
}
}
- for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile profile : rankProfileRegistry.rankProfilesOf(schema)) {
Set<String> filterFields = new LinkedHashSet<>();
- findFilterFields(search, profile, filterFields);
+ findFilterFields(schema, profile, filterFields);
for (Iterator<String> itr = filterFields.iterator(); itr.hasNext(); ) {
String fieldName = itr.next();
profile.filterFields().add(fieldName);
@@ -47,18 +47,18 @@ public class FilterFieldNames extends Processor {
}
private void filterField(String f) {
- for (RankProfile rp : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile rp : rankProfileRegistry.rankProfilesOf(schema)) {
rp.filterFields().add(f);
}
}
- private void findFilterFields(Search search, RankProfile profile, Set<String> filterFields) {
+ private void findFilterFields(Schema schema, RankProfile profile, Set<String> filterFields) {
for (Iterator<RankProfile.RankSetting> itr = profile.declaredRankSettingIterator(); itr.hasNext(); ) {
RankProfile.RankSetting setting = itr.next();
if (setting.getType().equals(RankProfile.RankSetting.Type.PREFERBITVECTOR) && ((Boolean)setting.getValue()))
{
String fieldName = setting.getFieldName();
- if (search.getConcreteField(fieldName) != null) {
+ if (schema.getConcreteField(fieldName) != null) {
if ( ! profile.filterFields().contains(fieldName)) {
filterFields.add(fieldName);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
index edf9f744150..6b09234c469 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
@@ -5,10 +5,10 @@ import java.util.logging.Level;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.document.PositionDataType;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -23,24 +23,24 @@ import static com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils.isC
*/
public class ImplicitSummaries extends Processor {
- public ImplicitSummaries(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ImplicitSummaries(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- DocumentSummary defaultSummary = search.getSummary("default");
+ DocumentSummary defaultSummary = schema.getSummary("default");
if (defaultSummary == null) {
- defaultSummary = new DocumentSummary("default", search);
+ defaultSummary = new DocumentSummary("default", schema);
defaultSummary.setFromDisk(true);
- search.addSummary(defaultSummary);
+ schema.addSummary(defaultSummary);
}
- for (SDField field : search.allConcreteFields()) {
- collectSummaries(field, search, validate);
+ for (SDField field : schema.allConcreteFields()) {
+ collectSummaries(field, schema, validate);
}
- for (DocumentSummary documentSummary : search.getSummaries().values()) {
+ for (DocumentSummary documentSummary : schema.getSummaries().values()) {
documentSummary.purgeImplicits();
}
}
@@ -49,7 +49,7 @@ public class ImplicitSummaries extends Processor {
sdField.addSummaryFieldSources(summaryField);
}
- private void collectSummaries(SDField field ,Search search, boolean validate) {
+ private void collectSummaries(SDField field , Schema schema, boolean validate) {
SummaryField addedSummaryField=null;
// Implicit
@@ -65,7 +65,7 @@ public class ImplicitSummaries extends Processor {
}
if (fieldSummaryField != null) {
for (String dest : fieldSummaryField.getDestinations()) {
- DocumentSummary summary = search.getSummary(dest);
+ DocumentSummary summary = schema.getSummary(dest);
if (summary != null) {
summary.add(fieldSummaryField);
}
@@ -79,7 +79,7 @@ public class ImplicitSummaries extends Processor {
addedSummaryField.setTransform(SummaryTransform.ATTRIBUTE);
}
if (attribute.isPrefetch()) {
- addPrefetchAttribute(attribute, field, search);
+ addPrefetchAttribute(attribute, field, schema);
}
}
}
@@ -92,7 +92,7 @@ public class ImplicitSummaries extends Processor {
if (field.doesSummarying()) {
for (Attribute attribute : field.getAttributes().values()) {
if ( ! attribute.isPosition()) continue;
- DocumentSummary attributePrefetchSummary = getOrCreateAttributePrefetchSummary(search);
+ DocumentSummary attributePrefetchSummary = getOrCreateAttributePrefetchSummary(schema);
attributePrefetchSummary.add(field.getSummaryField(PositionDataType.getDistanceSummaryFieldName(fieldName)));
attributePrefetchSummary.add(field.getSummaryField(PositionDataType.getPositionSummaryFieldName(fieldName)));
}
@@ -106,35 +106,35 @@ public class ImplicitSummaries extends Processor {
summaryField.setTransform(SummaryTransform.ATTRIBUTE);
}
- if (isValid(summaryField, search, validate)) {
- addToDestinations(summaryField, search);
+ if (isValid(summaryField, schema, validate)) {
+ addToDestinations(summaryField, schema);
}
}
}
- private DocumentSummary getOrCreateAttributePrefetchSummary(Search search) {
- DocumentSummary summary = search.getSummary("attributeprefetch");
+ private DocumentSummary getOrCreateAttributePrefetchSummary(Schema schema) {
+ DocumentSummary summary = schema.getSummary("attributeprefetch");
if (summary == null) {
- summary = new DocumentSummary("attributeprefetch", search);
- search.addSummary(summary);
+ summary = new DocumentSummary("attributeprefetch", schema);
+ schema.addSummary(summary);
}
return summary;
}
- private void addPrefetchAttribute(Attribute attribute,SDField field,Search search) {
+ private void addPrefetchAttribute(Attribute attribute, SDField field, Schema schema) {
if (attribute.getPrefetchValue() == null) { // Prefetch by default - unless any summary makes this dynamic
// Check if there is an implicit dynamic definition
SummaryField fieldSummaryField = field.getSummaryField(attribute.getName());
if (fieldSummaryField != null && fieldSummaryField.getTransform().isDynamic()) return;
// Check if an explicit class makes it dynamic (first is enough, as all must be the same, checked later)
- SummaryField explicitSummaryField = search.getExplicitSummaryField(attribute.getName());
+ SummaryField explicitSummaryField = schema.getExplicitSummaryField(attribute.getName());
if (explicitSummaryField != null && explicitSummaryField.getTransform().isDynamic()) return;
}
- DocumentSummary summary = getOrCreateAttributePrefetchSummary(search);
+ DocumentSummary summary = getOrCreateAttributePrefetchSummary(schema);
SummaryField attributeSummaryField = new SummaryField(attribute.getName(), attribute.getDataType());
attributeSummaryField.addSource(attribute.getName());
attributeSummaryField.addDestination("attributeprefetch");
@@ -143,26 +143,26 @@ public class ImplicitSummaries extends Processor {
}
// Returns whether this is valid. Warns if invalid and ignorable. Throws if not ignorable.
- private boolean isValid(SummaryField summaryField, Search search, boolean validate) {
+ private boolean isValid(SummaryField summaryField, Schema schema, boolean validate) {
if (summaryField.getTransform() == SummaryTransform.DISTANCE ||
summaryField.getTransform() == SummaryTransform.POSITIONS) {
int sourceCount = summaryField.getSourceCount();
if (validate && sourceCount != 1) {
- throw newProcessException(search.getName(), summaryField.getName(),
+ throw newProcessException(schema.getName(), summaryField.getName(),
"Expected 1 source field, got " + sourceCount + ".");
}
String sourceName = summaryField.getSingleSource();
- if (validate && search.getAttribute(sourceName) == null) {
- throw newProcessException(search.getName(), summaryField.getName(),
+ if (validate && schema.getAttribute(sourceName) == null) {
+ throw newProcessException(schema.getName(), summaryField.getName(),
"Summary source attribute '" + sourceName + "' not found.");
}
return true;
}
String fieldName = summaryField.getSourceField();
- SDField sourceField = search.getConcreteField(fieldName);
+ SDField sourceField = schema.getConcreteField(fieldName);
if (validate && sourceField == null) {
- throw newProcessException(search, summaryField, "Source field '" + fieldName + "' does not exist.");
+ throw newProcessException(schema, summaryField, "Source field '" + fieldName + "' does not exist.");
}
if (! sourceField.doesSummarying() &&
! summaryField.getTransform().equals(SummaryTransform.ATTRIBUTE) &&
@@ -199,21 +199,21 @@ public class ImplicitSummaries extends Processor {
return true;
}
- private void addToDestinations(SummaryField summaryField,Search search) {
+ private void addToDestinations(SummaryField summaryField, Schema schema) {
if (summaryField.getDestinations().size() == 0) {
- addToDestination("default", summaryField, search);
+ addToDestination("default", summaryField, schema);
}
else {
for (String destinationName : summaryField.getDestinations())
- addToDestination(destinationName, summaryField, search);
+ addToDestination(destinationName, summaryField, schema);
}
}
- private void addToDestination(String destinationName, SummaryField summaryField, Search search) {
- DocumentSummary destination = search.getSummary(destinationName);
+ private void addToDestination(String destinationName, SummaryField summaryField, Schema schema) {
+ DocumentSummary destination = schema.getSummary(destinationName);
if (destination == null) {
- destination = new DocumentSummary(destinationName, search);
- search.addSummary(destination);
+ destination = new DocumentSummary(destinationName, schema);
+ schema.addSummary(destination);
destination.add(summaryField);
}
else {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFields.java
index 0e13f38e207..7875bd6f4d5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFields.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -16,13 +16,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class ImplicitSummaryFields extends Processor {
- public ImplicitSummaryFields(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ImplicitSummaryFields(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (DocumentSummary docsum : search.getSummaries().values()) {
+ for (DocumentSummary docsum : schema.getSummaries().values()) {
if (docsum.getInherited() != null) continue; // Implicit fields are added to inheriting summaries through their parent
addField(docsum, new SummaryField("rankfeatures", DataType.STRING, SummaryTransform.RANKFEATURES), validate);
addField(docsum, new SummaryField("summaryfeatures", DataType.STRING, SummaryTransform.SUMMARYFEATURES), validate);
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolver.java
index c737df5d44f..ed04303a3ba 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolver.java
@@ -7,7 +7,7 @@ import com.yahoo.document.PositionDataType;
import com.yahoo.searchdefinition.DocumentReference;
import com.yahoo.searchdefinition.DocumentReferences;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.ImportedComplexField;
@@ -35,15 +35,15 @@ public class ImportedFieldsResolver extends Processor {
private final Map<String, ImportedField> importedFields = new LinkedHashMap<>();
private final Optional<DocumentReferences> references;
- public ImportedFieldsResolver(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
- references = search.getDocument().getDocumentReferences();
+ public ImportedFieldsResolver(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
+ references = schema.getDocument().getDocumentReferences();
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- search.temporaryImportedFields().get().fields().forEach((name, field) -> resolveImportedField(field, validate));
- search.setImportedFields(new ImportedFields(importedFields));
+ schema.temporaryImportedFields().get().fields().forEach((name, field) -> resolveImportedField(field, validate));
+ schema.setImportedFields(new ImportedFields(importedFields));
}
private void resolveImportedField(TemporaryImportedField importedField, boolean validate) {
@@ -166,8 +166,8 @@ public class ImportedFieldsResolver extends Processor {
private ImmutableSDField getTargetField(TemporaryImportedField importedField,
DocumentReference reference) {
String targetFieldName = importedField.targetFieldName();
- Search targetSearch = reference.targetSearch();
- ImmutableSDField targetField = targetSearch.getField(targetFieldName);
+ Schema targetSchema = reference.targetSearch();
+ ImmutableSDField targetField = targetSchema.getField(targetFieldName);
if (targetField == null) {
fail(importedField, targetFieldAsString(targetFieldName, reference) + ": Not found");
}
@@ -193,14 +193,14 @@ public class ImportedFieldsResolver extends Processor {
}
private void fail(TemporaryImportedField importedField, String msg) {
- throw new IllegalArgumentException("For search '" + search.getName() + "', import field '" + importedField.fieldName() + "': " + msg);
+ throw new IllegalArgumentException("For search '" + schema.getName() + "', import field '" + importedField.fieldName() + "': " + msg);
}
private void fail(TemporaryImportedField importedField, String importedNestedFieldName, String msg) {
if (importedField.fieldName().equals(importedNestedFieldName)) {
fail(importedField, msg);
}
- throw new IllegalArgumentException("For search '" + search.getName() + "', import field '" +
- importedField.fieldName() + "' (nested to '" + importedNestedFieldName + "'): " + msg);
+ throw new IllegalArgumentException("For search '" + schema.getName() + "', import field '" +
+ importedField.fieldName() + "' (nested to '" + importedNestedFieldName + "'): " + msg);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexFieldNames.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexFieldNames.java
index f0f52c49875..76e97ff0f2e 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexFieldNames.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexFieldNames.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -18,17 +18,17 @@ public class IndexFieldNames extends Processor {
private static final String FIELD_NAME_REGEXP = "[a-zA-Z]\\w*";
- public IndexFieldNames(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public IndexFieldNames(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if ( ! field.getName().matches(FIELD_NAME_REGEXP) && ! legalDottedPositionField(field)) {
- fail(search, field, " Not a legal field name. Legal expression: " + FIELD_NAME_REGEXP);
+ fail(schema, field, " Not a legal field name. Legal expression: " + FIELD_NAME_REGEXP);
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingInputs.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingInputs.java
index 6117f3097ab..e589bd8e91a 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingInputs.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingInputs.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.indexinglanguage.ExpressionConverter;
import com.yahoo.vespa.indexinglanguage.ExpressionVisitor;
@@ -21,13 +21,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class IndexingInputs extends Processor {
- public IndexingInputs(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public IndexingInputs(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
ScriptExpression script = field.getIndexingScript();
if (script == null) continue;
@@ -35,7 +35,7 @@ public class IndexingInputs extends Processor {
script = (ScriptExpression)new DefaultToCurrentField(fieldName).convert(script);
script = (ScriptExpression)new EnsureInputExpression(fieldName).convert(script);
if (validate)
- new VerifyInputExpression(search, field).visit(script);
+ new VerifyInputExpression(schema, field).visit(script);
field.setIndexingScript(script);
}
@@ -85,11 +85,11 @@ public class IndexingInputs extends Processor {
private class VerifyInputExpression extends ExpressionVisitor {
- private final Search search;
+ private final Schema schema;
private final SDField field;
- public VerifyInputExpression(Search search, SDField field) {
- this.search = search;
+ public VerifyInputExpression(Schema schema, SDField field) {
+ this.schema = schema;
this.field = field;
}
@@ -97,10 +97,10 @@ public class IndexingInputs extends Processor {
protected void doVisit(Expression exp) {
if ( ! (exp instanceof InputExpression)) return;
String inputField = ((InputExpression)exp).getFieldName();
- if (search.getField(inputField).hasFullIndexingDocprocRights()) return;
+ if (schema.getField(inputField).hasFullIndexingDocprocRights()) return;
- fail(search, field, "Indexing script refers to field '" + inputField + "' which does not exist " +
- "in document type '" + search.getDocument().getName() + "', and is not a mutable attribute.");
+ fail(schema, field, "Indexing script refers to field '" + inputField + "' which does not exist " +
+ "in document type '" + schema.getDocument().getName() + "', and is not a mutable attribute.");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingOutputs.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingOutputs.java
index c1ed856bb11..1479f9d8f5a 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingOutputs.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingOutputs.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.DataType;
import com.yahoo.document.Field;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -24,40 +24,40 @@ import java.util.*;
*/
public class IndexingOutputs extends Processor {
- public IndexingOutputs(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public IndexingOutputs(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
ScriptExpression script = field.getIndexingScript();
if (script == null) continue;
Set<String> summaryFields = new TreeSet<>();
- findSummaryTo(search, field, summaryFields, summaryFields);
- MyConverter converter = new MyConverter(search, field, summaryFields, validate);
+ findSummaryTo(schema, field, summaryFields, summaryFields);
+ MyConverter converter = new MyConverter(schema, field, summaryFields, validate);
field.setIndexingScript((ScriptExpression)converter.convert(script));
}
}
- public void findSummaryTo(Search search, SDField field, Set<String> dynamicSummary, Set<String> staticSummary) {
- Map<String, SummaryField> summaryFields = search.getSummaryFields(field);
+ public void findSummaryTo(Schema schema, SDField field, Set<String> dynamicSummary, Set<String> staticSummary) {
+ Map<String, SummaryField> summaryFields = schema.getSummaryFields(field);
if (summaryFields.isEmpty()) {
fillSummaryToFromField(field, dynamicSummary, staticSummary);
} else {
- fillSummaryToFromSearch(search, field, summaryFields, dynamicSummary, staticSummary);
+ fillSummaryToFromSearch(schema, field, summaryFields, dynamicSummary, staticSummary);
}
}
- private void fillSummaryToFromSearch(Search search, SDField field, Map<String, SummaryField> summaryFields,
- Set<String> dynamicSummary, Set<String> staticSummary) {
+ private void fillSummaryToFromSearch(Schema schema, SDField field, Map<String, SummaryField> summaryFields,
+ Set<String> dynamicSummary, Set<String> staticSummary) {
for (SummaryField summaryField : summaryFields.values()) {
- fillSummaryToFromSummaryField(search, field, summaryField, dynamicSummary, staticSummary);
+ fillSummaryToFromSummaryField(schema, field, summaryField, dynamicSummary, staticSummary);
}
}
- private void fillSummaryToFromSummaryField(Search search, SDField field, SummaryField summaryField,
+ private void fillSummaryToFromSummaryField(Schema schema, SDField field, SummaryField summaryField,
Set<String> dynamicSummary, Set<String> staticSummary) {
SummaryTransform summaryTransform = summaryField.getTransform();
String summaryName = summaryField.getName();
@@ -69,7 +69,7 @@ public class IndexingOutputs extends Processor {
if (summaryTransform.isDynamic()) {
DataType fieldType = field.getDataType();
if (fieldType != DataType.URI && fieldType != DataType.STRING) {
- warn(search, field, "Dynamic summaries are only supported for fields of type " +
+ warn(schema, field, "Dynamic summaries are only supported for fields of type " +
"string, ignoring summary field '" + summaryField.getName() +
"' for sd field '" + field.getName() + "' of type " +
fieldType.getName() + ".");
@@ -94,13 +94,13 @@ public class IndexingOutputs extends Processor {
private class MyConverter extends ExpressionConverter {
- final Search search;
+ final Schema schema;
final Field field;
final Set<String> summaryFields;
final boolean validate;
- MyConverter(Search search, Field field, Set<String> summaryFields, boolean validate) {
- this.search = search;
+ MyConverter(Schema schema, Field field, Set<String> summaryFields, boolean validate) {
+ this.schema = schema;
this.field = field;
this.summaryFields = summaryFields.isEmpty() ? Collections.singleton(field.getName()) : summaryFields;
this.validate = validate;
@@ -116,7 +116,7 @@ public class IndexingOutputs extends Processor {
return true; // inject appropriate field name
}
if ( validate && ! fieldName.equals(field.getName())) {
- fail(search, field, "Indexing expression '" + exp + "' attempts to write to a field other than '" +
+ fail(schema, field, "Indexing expression '" + exp + "' attempts to write to a field other than '" +
field.getName() + "'.");
}
return false;
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValidation.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValidation.java
index 915c2040224..eb9b561da73 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValidation.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValidation.java
@@ -8,7 +8,7 @@ import com.yahoo.document.MapDataType;
import com.yahoo.document.PositionDataType;
import com.yahoo.document.WeightedSetDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -33,16 +33,16 @@ import java.util.Set;
*/
public class IndexingValidation extends Processor {
- IndexingValidation(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ IndexingValidation(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- VerificationContext context = new VerificationContext(new MyAdapter(search));
- for (SDField field : search.allConcreteFields()) {
+ VerificationContext context = new VerificationContext(new MyAdapter(schema));
+ for (SDField field : schema.allConcreteFields()) {
ScriptExpression script = field.getIndexingScript();
try {
script.verify(context);
@@ -51,7 +51,7 @@ public class IndexingValidation extends Processor {
converter.convert(exp); // TODO: stop doing this explicitly when visiting a script does not branch
}
} catch (VerificationException e) {
- fail(search, field, "For expression '" + e.getExpression() + "': " + e.getMessage());
+ fail(schema, field, "For expression '" + e.getExpression() + "': " + e.getMessage());
}
}
}
@@ -94,15 +94,15 @@ public class IndexingValidation extends Processor {
private static class MyAdapter implements FieldTypeAdapter {
- final Search search;
+ final Schema schema;
- MyAdapter(Search search) {
- this.search = search;
+ MyAdapter(Schema schema) {
+ this.schema = schema;
}
@Override
public DataType getInputType(Expression exp, String fieldName) {
- SDField field = search.getDocumentField(fieldName);
+ SDField field = schema.getDocumentField(fieldName);
if (field == null) {
throw new VerificationException(exp, "Input field '" + fieldName + "' not found.");
}
@@ -114,21 +114,21 @@ public class IndexingValidation extends Processor {
String fieldDesc;
DataType fieldType;
if (exp instanceof AttributeExpression) {
- Attribute attribute = search.getAttribute(fieldName);
+ Attribute attribute = schema.getAttribute(fieldName);
if (attribute == null) {
throw new VerificationException(exp, "Attribute '" + fieldName + "' not found.");
}
fieldDesc = "attribute";
fieldType = attribute.getDataType();
} else if (exp instanceof IndexExpression) {
- SDField field = search.getConcreteField(fieldName);
+ SDField field = schema.getConcreteField(fieldName);
if (field == null) {
throw new VerificationException(exp, "Index field '" + fieldName + "' not found.");
}
fieldDesc = "index field";
fieldType = field.getDataType();
} else if (exp instanceof SummaryExpression) {
- SummaryField field = search.getSummaryField(fieldName);
+ SummaryField field = schema.getSummaryField(fieldName);
if (field == null) {
throw new VerificationException(exp, "Summary field '" + fieldName + "' not found.");
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValues.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValues.java
index 36a74147f05..815e5a42df4 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValues.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IndexingValues.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.Field;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.indexinglanguage.ExpressionConverter;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
@@ -17,15 +17,15 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class IndexingValues extends Processor {
- public IndexingValues(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public IndexingValues(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (Field field : search.getDocument().fieldSet()) {
+ for (Field field : schema.getDocument().fieldSet()) {
SDField sdField = (SDField)field;
if ( ! sdField.isExtraField()) {
new RequireThatDocumentFieldsAreImmutable(field).convert(sdField.getIndexingScript());
@@ -50,7 +50,7 @@ public class IndexingValues extends Processor {
@Override
protected boolean shouldConvert(Expression exp) {
if (exp instanceof OutputExpression && mutatedBy != null) {
- throw newProcessException(search, field,
+ throw newProcessException(schema, field,
"Indexing expression '" + mutatedBy + "' attempts to modify the value of the " +
"document field '" + field.getName() + "'. Use a field outside the document " +
"block instead.");
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IntegerIndex2Attribute.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IntegerIndex2Attribute.java
index de108d4b711..ff6224d8d19 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/IntegerIndex2Attribute.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/IntegerIndex2Attribute.java
@@ -6,7 +6,7 @@ import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.NumericDataType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.indexinglanguage.ExpressionConverter;
import com.yahoo.vespa.indexinglanguage.ExpressionVisitor;
import com.yahoo.vespa.indexinglanguage.expressions.AttributeExpression;
@@ -25,13 +25,13 @@ import java.util.Set;
*/
public class IntegerIndex2Attribute extends Processor {
- public IntegerIndex2Attribute(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public IntegerIndex2Attribute(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.doesIndexing() && field.getDataType().getPrimitiveType() instanceof NumericDataType) {
if (field.getIndex(field.getName()) != null
&& ! (field.getIndex(field.getName()).getType().equals(Index.Type.VESPA))) continue;
@@ -39,9 +39,9 @@ public class IntegerIndex2Attribute extends Processor {
Set<String> attributeNames = new HashSet<>();
new MyVisitor(attributeNames).visit(script);
field.setIndexingScript((ScriptExpression)new MyConverter(attributeNames).convert(script));
- warn(search, field, "Changed to attribute because numerical indexes (field has type " +
+ warn(schema, field, "Changed to attribute because numerical indexes (field has type " +
field.getDataType().getName() + ") is not currently supported." +
- " Index-only settings may fail. Ignore this warning for streaming search.");
+ " Index-only settings may fail. Ignore this warning for streaming search.");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/LiteralBoost.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/LiteralBoost.java
index 51ef1c312a8..afe004fd5f3 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/LiteralBoost.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/LiteralBoost.java
@@ -3,9 +3,9 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.RankProfile;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import java.util.Iterator;
@@ -25,21 +25,21 @@ import java.util.Iterator;
*/
public class LiteralBoost extends Processor {
- public LiteralBoost(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public LiteralBoost(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
/** Adds extra search fields and indices to express literal boosts */
@Override
public void process(boolean validate, boolean documentsOnly) {
- checkRankModifierRankType(search);
- addLiteralBoostsToFields(search);
- reduceFieldLiteralBoosts(search);
+ checkRankModifierRankType(schema);
+ addLiteralBoostsToFields(schema);
+ reduceFieldLiteralBoosts(schema);
}
/** Checks if literal boost is given using rank: , and set the actual literal boost accordingly. */
- private void checkRankModifierRankType(Search search) {
- for (SDField field : search.allConcreteFields()) {
+ private void checkRankModifierRankType(Schema schema) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getLiteralBoost() > -1) continue; // Let explicit value take precedence
if (field.getRanking().isLiteral())
field.setLiteralBoost(100);
@@ -51,26 +51,26 @@ public class LiteralBoost extends Processor {
* This is required because boost indices will only be generated by looking
* at field boosts
*/
- private void addLiteralBoostsToFields(Search search) {
- Iterator i = matchingRankSettingsIterator(search, RankProfile.RankSetting.Type.LITERALBOOST);
+ private void addLiteralBoostsToFields(Schema schema) {
+ Iterator i = matchingRankSettingsIterator(schema, RankProfile.RankSetting.Type.LITERALBOOST);
while (i.hasNext()) {
RankProfile.RankSetting setting = (RankProfile.RankSetting)i.next();
- SDField field = search.getConcreteField(setting.getFieldName());
+ SDField field = schema.getConcreteField(setting.getFieldName());
if (field == null) continue;
if (field.getLiteralBoost() < 0)
field.setLiteralBoost(0);
}
}
- private void reduceFieldLiteralBoosts(Search search) {
- for (SDField field : search.allConcreteFields()) {
+ private void reduceFieldLiteralBoosts(Schema schema) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getLiteralBoost() < 0) continue;
- reduceFieldLiteralBoost(field,search);
+ reduceFieldLiteralBoost(field, schema);
}
}
- private void reduceFieldLiteralBoost(SDField field,Search search) {
- SDField literalField = addField(search, field, "literal",
+ private void reduceFieldLiteralBoost(SDField field, Schema schema) {
+ SDField literalField = addField(schema, field, "literal",
"{ input " + field.getName() + " | tokenize | index " + field.getName() + "_literal; }",
"literal-boost");
literalField.setWeight(field.getWeight() + field.getLiteralBoost());
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeAliases.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeAliases.java
index 36371dd9295..48712b3bb35 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeAliases.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeAliases.java
@@ -3,10 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import java.util.ArrayList;
@@ -20,22 +20,22 @@ import java.util.Map;
*/
public class MakeAliases extends Processor {
- public MakeAliases(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public MakeAliases(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
List<String> usedAliases = new ArrayList<>();
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
for (Map.Entry<String, String> e : field.getAliasToName().entrySet()) {
String alias = e.getKey();
String name = e.getValue();
- String errMsg = "For search '" + search.getName() + "': alias '" + alias + "' ";
- if (validate && search.existsIndex(alias)) {
+ String errMsg = "For search '" + schema.getName() + "': alias '" + alias + "' ";
+ if (validate && schema.existsIndex(alias)) {
throw new IllegalArgumentException(errMsg + "is illegal since it is the name of an index.");
}
- if (validate && search.getAttribute(alias) != null) {
+ if (validate && schema.getAttribute(alias) != null) {
throw new IllegalArgumentException(errMsg + "is illegal since it is the name of an attribute.");
}
if (validate && usedAliases.contains(alias)) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeDefaultSummaryTheSuperSet.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeDefaultSummaryTheSuperSet.java
index 3524f5666b3..a82c8d0c6be 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeDefaultSummaryTheSuperSet.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MakeDefaultSummaryTheSuperSet.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -29,14 +29,14 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class MakeDefaultSummaryTheSuperSet extends Processor {
- public MakeDefaultSummaryTheSuperSet(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public MakeDefaultSummaryTheSuperSet(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- DocumentSummary defaultSummary=search.getSummary("default");
- for (SummaryField summaryField : search.getUniqueNamedSummaryFields().values() ) {
+ DocumentSummary defaultSummary= schema.getSummary("default");
+ for (SummaryField summaryField : schema.getUniqueNamedSummaryFields().values() ) {
if (defaultSummary.getSummaryField(summaryField.getName()) != null) continue;
if (summaryField.getTransform() == SummaryTransform.ATTRIBUTE) continue;
if (summaryField.getTransform() == SummaryTransform.ATTRIBUTECOMBINER) continue;
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchConsistency.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchConsistency.java
index d9c62967649..c302ef63cfd 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchConsistency.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchConsistency.java
@@ -3,10 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.Matching.Type;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.indexinglanguage.ExpressionVisitor;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
import com.yahoo.vespa.indexinglanguage.expressions.IndexExpression;
@@ -22,11 +22,11 @@ import java.util.Map;
*/
public class MatchConsistency extends Processor {
- public MatchConsistency(Search search,
+ public MatchConsistency(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -34,17 +34,17 @@ public class MatchConsistency extends Processor {
if ( ! validate) return;
Map<String, Matching.Type> types = new HashMap<>();
- for (SDField field : search.allConcreteFields()) {
- new MyVisitor(search, field, types).visit(field.getIndexingScript());
+ for (SDField field : schema.allConcreteFields()) {
+ new MyVisitor(schema, field, types).visit(field.getIndexingScript());
}
}
- private void checkMatching(Search search, SDField field, Map<String, Type> types, String indexTo) {
+ private void checkMatching(Schema schema, SDField field, Map<String, Type> types, String indexTo) {
Type prevType = types.get(indexTo);
if (prevType == null) {
types.put(indexTo, field.getMatching().getType());
} else if ( ! field.getMatching().getType().equals(prevType)) {
- warn(search, field, "The matching type for index '" + indexTo + "' (got " + field.getMatching().getType() +
+ warn(schema, field, "The matching type for index '" + indexTo + "' (got " + field.getMatching().getType() +
") is inconsistent with that given for the same index in a previous field (had " +
prevType + ").");
}
@@ -52,12 +52,12 @@ public class MatchConsistency extends Processor {
private class MyVisitor extends ExpressionVisitor {
- final Search search;
+ final Schema schema;
final SDField field;
final Map<String, Type> types;
- MyVisitor(Search search, SDField field, Map<String, Type> types) {
- this.search = search;
+ MyVisitor(Schema schema, SDField field, Map<String, Type> types) {
+ this.schema = schema;
this.field = field;
this.types = types;
}
@@ -65,7 +65,7 @@ public class MatchConsistency extends Processor {
@Override
protected void doVisit(Expression exp) {
if (exp instanceof IndexExpression) {
- checkMatching(search, field, types, ((IndexExpression)exp).getFieldName());
+ checkMatching(schema, field, types, ((IndexExpression)exp).getFieldName());
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchPhaseSettingsValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchPhaseSettingsValidator.java
index 8afc85f2e1f..b697c584ece 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchPhaseSettingsValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchPhaseSettingsValidator.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -15,8 +15,8 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class MatchPhaseSettingsValidator extends Processor {
- public MatchPhaseSettingsValidator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public MatchPhaseSettingsValidator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -24,7 +24,7 @@ public class MatchPhaseSettingsValidator extends Processor {
if ( ! validate) return;
if (documentsOnly) return;
- for (RankProfile rankProfile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile rankProfile : rankProfileRegistry.rankProfilesOf(schema)) {
RankProfile.MatchPhaseSettings settings = rankProfile.getMatchPhaseSettings();
if (settings != null) {
validateMatchPhaseSettings(rankProfile, settings);
@@ -34,9 +34,9 @@ public class MatchPhaseSettingsValidator extends Processor {
private void validateMatchPhaseSettings(RankProfile rankProfile, RankProfile.MatchPhaseSettings settings) {
String attributeName = settings.getAttribute();
- new AttributeValidator(search.getName(),
+ new AttributeValidator(schema.getName(),
rankProfile.getName(),
- search.getAttribute(attributeName), attributeName).validate();
+ schema.getAttribute(attributeName), attributeName).validate();
}
public static class AttributeValidator {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolver.java
index 77064038053..7e78b76eb7f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolver.java
@@ -6,7 +6,7 @@ import com.yahoo.document.ArrayDataType;
import com.yahoo.document.DataType;
import com.yahoo.document.WeightedSetDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.documentmodel.DocumentSummary;
@@ -25,13 +25,13 @@ import static com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils.isS
*/
public class MatchedElementsOnlyResolver extends Processor {
- public MatchedElementsOnlyResolver(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public MatchedElementsOnlyResolver(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (var entry : search.getSummaries().entrySet()) {
+ for (var entry : schema.getSummaries().entrySet()) {
var summary = entry.getValue();
for (var field : summary.getSummaryFields()) {
if (field.getTransform().equals(SummaryTransform.MATCHED_ELEMENTS_FILTER)) {
@@ -42,7 +42,7 @@ public class MatchedElementsOnlyResolver extends Processor {
}
private void processSummaryField(DocumentSummary summary, SummaryField field, boolean validate) {
- var sourceField = search.getField(field.getSingleSource());
+ var sourceField = schema.getField(field.getSingleSource());
if (sourceField != null) {
if (isSupportedComplexField(sourceField)) {
if (isComplexFieldWithOnlyStructFieldAttributes(sourceField)) {
@@ -84,12 +84,12 @@ public class MatchedElementsOnlyResolver extends Processor {
}
private void fail(DocumentSummary summary, SummaryField field, String msg) {
- throw new IllegalArgumentException(formatError(search, summary, field, msg));
+ throw new IllegalArgumentException(formatError(schema, summary, field, msg));
}
- private String formatError(Search search, DocumentSummary summary, SummaryField field, String msg) {
- return "For search '" + search.getName() + "', document summary '" + summary.getName()
- + "', summary field '" + field.getName() + "': " + msg;
+ private String formatError(Schema schema, DocumentSummary summary, SummaryField field, String msg) {
+ return "For search '" + schema.getName() + "', document summary '" + summary.getName()
+ + "', summary field '" + field.getName() + "': " + msg;
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MultifieldIndexHarmonizer.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MultifieldIndexHarmonizer.java
index 265715e8eb9..39220b8cf8f 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MultifieldIndexHarmonizer.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MultifieldIndexHarmonizer.java
@@ -3,8 +3,8 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.searchdefinition.processing.multifieldresolver.IndexCommandResolver;
import com.yahoo.searchdefinition.processing.multifieldresolver.RankTypeResolver;
import com.yahoo.searchdefinition.processing.multifieldresolver.StemmingResolver;
@@ -25,18 +25,18 @@ public class MultifieldIndexHarmonizer extends Processor {
/** A map from index names to a List of fields going to that index */
private Map<String,List<SDField>> indexToFields=new java.util.HashMap<>();
- public MultifieldIndexHarmonizer(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public MultifieldIndexHarmonizer(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- populateIndexToFields(search);
- resolveAllConflicts(search);
+ populateIndexToFields(schema);
+ resolveAllConflicts(schema);
}
- private void populateIndexToFields(Search search) {
- for (SDField field : search.allConcreteFields() ) {
+ private void populateIndexToFields(Schema schema) {
+ for (SDField field : schema.allConcreteFields() ) {
if ( ! field.doesIndexing()) continue;
addIndexField(field.getName(), field);
}
@@ -51,12 +51,12 @@ public class MultifieldIndexHarmonizer extends Processor {
fields.add(field);
}
- private void resolveAllConflicts(Search search) {
+ private void resolveAllConflicts(Schema schema) {
for (Map.Entry<String, List<SDField>> entry : indexToFields.entrySet()) {
String indexName = entry.getKey();
List<SDField> fields = entry.getValue();
if (fields.size() == 1) continue; // It takes two to make a conflict
- resolveConflicts(indexName, fields, search);
+ resolveConflicts(indexName, fields, schema);
}
}
@@ -65,12 +65,12 @@ public class MultifieldIndexHarmonizer extends Processor {
*
* @param indexName the name of the index in question
* @param fields all the fields indexed to this index
- * @param search the search definition having this
+ * @param schema the search definition having this
*/
- private void resolveConflicts(String indexName,List<SDField> fields,Search search) {
- new StemmingResolver(indexName, fields, search, deployLogger).resolve();
- new IndexCommandResolver(indexName, fields, search, deployLogger).resolve();
- new RankTypeResolver(indexName, fields, search, deployLogger).resolve();
+ private void resolveConflicts(String indexName, List<SDField> fields, Schema schema) {
+ new StemmingResolver(indexName, fields, schema, deployLogger).resolve();
+ new IndexCommandResolver(indexName, fields, schema, deployLogger).resolve();
+ new RankTypeResolver(indexName, fields, schema, deployLogger).resolve();
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MutableAttributes.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MutableAttributes.java
index 35b17234a1d..198f89caddb 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/MutableAttributes.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/MutableAttributes.java
@@ -3,24 +3,24 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
public class MutableAttributes extends Processor {
- public MutableAttributes(Search search, DeployLogger deployLogger,
+ public MutableAttributes(Schema schema, DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles)
{
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if ( ! field.isExtraField() && field.getAttributes().containsKey(field.getName())) {
if (field.getAttributes().get(field.getName()).isMutable()) {
- throw new IllegalArgumentException("Field '" + field.getName() + "' in '" + search.getDocument().getName() +
+ throw new IllegalArgumentException("Field '" + field.getName() + "' in '" + schema.getDocument().getName() +
"' can not be marked mutable as it is inside the document clause.");
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/NGramMatch.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/NGramMatch.java
index 0995762da6e..b5f573ecf71 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/NGramMatch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/NGramMatch.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
@@ -22,21 +22,21 @@ public class NGramMatch extends Processor {
public static final int DEFAULT_GRAM_SIZE = 2;
- public NGramMatch(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public NGramMatch(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getMatching().getType().equals(Matching.Type.GRAM))
- implementGramMatch(search, field, validate);
+ implementGramMatch(schema, field, validate);
else if (validate && field.getMatching().getGramSize() >= 0)
throw new IllegalArgumentException("gram-size can only be set when the matching mode is 'gram'");
}
}
- private void implementGramMatch(Search search, SDField field, boolean validate) {
+ private void implementGramMatch(Schema schema, SDField field, boolean validate) {
if (validate && field.doesAttributing() && ! field.doesIndexing())
throw new IllegalArgumentException("gram matching is not supported with attributes, use 'index' in indexing");
@@ -48,15 +48,15 @@ public class NGramMatch extends Processor {
field.getNormalizing().inferCodepoint();
field.setStemming(Stemming.NONE); // not compatible with stemming and normalizing
field.addQueryCommand("ngram " + n);
- field.setIndexingScript((ScriptExpression)new MyProvider(search, n).convert(field.getIndexingScript()));
+ field.setIndexingScript((ScriptExpression)new MyProvider(schema, n).convert(field.getIndexingScript()));
}
private static class MyProvider extends TypedTransformProvider {
final int ngram;
- MyProvider(Search search, int ngram) {
- super(NGramExpression.class, search);
+ MyProvider(Schema schema, int ngram) {
+ super(NGramExpression.class, schema);
this.ngram = ngram;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelConfigGenerator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelConfigGenerator.java
index a2eae585a25..c7c1db3b862 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelConfigGenerator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelConfigGenerator.java
@@ -7,7 +7,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.OnnxModel;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.expressiontransforms.OnnxModelTransformer;
import com.yahoo.searchlib.rankingexpression.rule.CompositeNode;
import com.yahoo.searchlib.rankingexpression.rule.ConstantNode;
@@ -36,14 +36,14 @@ import java.util.Map;
*/
public class OnnxModelConfigGenerator extends Processor {
- public OnnxModelConfigGenerator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public OnnxModelConfigGenerator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if (documentsOnly) return;
- for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile profile : rankProfileRegistry.rankProfilesOf(schema)) {
if (profile.getFirstPhaseRanking() != null) {
process(profile.getFirstPhaseRanking().getRoot());
}
@@ -78,17 +78,17 @@ public class OnnxModelConfigGenerator extends Processor {
String modelConfigName = OnnxModelTransformer.asValidIdentifier(path);
// Only add the configuration if the model can actually be found.
- if ( ! OnnxModelInfo.modelExists(path, search.applicationPackage())) {
+ if ( ! OnnxModelInfo.modelExists(path, schema.applicationPackage())) {
path = ApplicationPackage.MODELS_DIR.append(path).toString();
- if ( ! OnnxModelInfo.modelExists(path, search.applicationPackage())) {
+ if ( ! OnnxModelInfo.modelExists(path, schema.applicationPackage())) {
return;
}
}
- OnnxModel onnxModel = search.onnxModels().get(modelConfigName);
+ OnnxModel onnxModel = schema.onnxModels().get(modelConfigName);
if (onnxModel == null) {
onnxModel = new OnnxModel(modelConfigName, path);
- search.onnxModels().add(onnxModel);
+ schema.onnxModels().add(onnxModel);
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelTypeResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelTypeResolver.java
index aa3c5db4e83..4153cca4b5b 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelTypeResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OnnxModelTypeResolver.java
@@ -5,7 +5,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.OnnxModel;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import com.yahoo.vespa.model.ml.OnnxModelInfo;
@@ -21,15 +21,15 @@ import com.yahoo.vespa.model.ml.OnnxModelInfo;
*/
public class OnnxModelTypeResolver extends Processor {
- public OnnxModelTypeResolver(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public OnnxModelTypeResolver(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if (documentsOnly) return;
- for (OnnxModel onnxModel : search.onnxModels().asMap().values()) {
- OnnxModelInfo onnxModelInfo = OnnxModelInfo.load(onnxModel.getFileName(), search.applicationPackage());
+ for (OnnxModel onnxModel : schema.onnxModels().asMap().values()) {
+ OnnxModelInfo onnxModelInfo = OnnxModelInfo.load(onnxModel.getFileName(), schema.applicationPackage());
onnxModel.setModelInfo(onnxModelInfo);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OptimizeIlscript.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OptimizeIlscript.java
index 82bcff265c0..3175862e900 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/OptimizeIlscript.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/OptimizeIlscript.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.indexinglanguage.ExpressionOptimizer;
import com.yahoo.vespa.indexinglanguage.expressions.ScriptExpression;
@@ -14,22 +14,22 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class OptimizeIlscript extends Processor {
- public OptimizeIlscript(Search search,
+ public OptimizeIlscript(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
ScriptExpression script = field.getIndexingScript();
if (script == null) continue;
field.setIndexingScript((ScriptExpression)new ExpressionOptimizer().convert(script));
if ( ! field.getIndexingScript().toString().equals(script.toString())) {
- info(search, field, "Rewrote ilscript from:\n" + script.toString() +
+ info(schema, field, "Rewrote ilscript from:\n" + script.toString() +
"\nto\n" + field.getIndexingScript().toString());
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/PagedAttributeValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/PagedAttributeValidator.java
index 5e344f5a824..d108a620fd9 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/PagedAttributeValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/PagedAttributeValidator.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.Field;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.tensor.TensorType;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -17,11 +17,11 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
public class PagedAttributeValidator extends Processor {
- public PagedAttributeValidator(Search search,
+ public PagedAttributeValidator(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -29,7 +29,7 @@ public class PagedAttributeValidator extends Processor {
if (!validate) {
return;
}
- for (var field : search.allConcreteFields()) {
+ for (var field : schema.allConcreteFields()) {
for (var attribute : field.getAttributes().values()) {
if (attribute.isPaged()) {
validatePagedSetting(field, attribute);
@@ -42,7 +42,7 @@ public class PagedAttributeValidator extends Processor {
var tensorType = attribute.tensorType();
if (!tensorType.isPresent() ||
!isDenseTensorType(tensorType.get())) {
- fail(search, field, "The 'paged' attribute setting is only supported for dense tensor types");
+ fail(schema, field, "The 'paged' attribute setting is only supported for dense tensor types");
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/PredicateProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/PredicateProcessor.java
index df357d6b704..73b75d6e23a 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/PredicateProcessor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/PredicateProcessor.java
@@ -7,7 +7,7 @@ import com.yahoo.document.DataType;
import com.yahoo.document.datatypes.IntegerFieldValue;
import com.yahoo.document.datatypes.LongFieldValue;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.BooleanIndexDefinition;
import com.yahoo.searchdefinition.document.SDField;
@@ -34,30 +34,30 @@ import java.util.List;
*/
public class PredicateProcessor extends Processor {
- public PredicateProcessor(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public PredicateProcessor(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getDataType() == DataType.PREDICATE) {
if (validate && field.doesIndexing()) {
- fail(search, field, "Use 'attribute' instead of 'index'. This will require a refeed if you have upgraded.");
+ fail(schema, field, "Use 'attribute' instead of 'index'. This will require a refeed if you have upgraded.");
}
if (field.doesAttributing()) {
Attribute attribute = field.getAttributes().get(field.getName());
for (Index index : field.getIndices().values()) {
BooleanIndexDefinition booleanDefinition = index.getBooleanIndexDefiniton();
if (validate && (booleanDefinition == null || ! booleanDefinition.hasArity())) {
- fail(search, field, "Missing arity value in predicate field.");
+ fail(schema, field, "Missing arity value in predicate field.");
}
if (validate && (booleanDefinition.getArity() < 2)) {
- fail(search, field, "Invalid arity value in predicate field, must be greater than 1.");
+ fail(schema, field, "Invalid arity value in predicate field, must be greater than 1.");
}
double threshold = booleanDefinition.getDensePostingListThreshold();
if (validate && (threshold <= 0 || threshold > 1)) {
- fail(search, field, "Invalid dense-posting-list-threshold value in predicate field. " +
+ fail(schema, field, "Invalid dense-posting-list-threshold value in predicate field. " +
"Value must be in range (0..1].");
}
@@ -68,29 +68,29 @@ public class PredicateProcessor extends Processor {
attribute.setDensePostingListThreshold(threshold);
addPredicateOptimizationIlScript(field, booleanDefinition);
}
- DocumentSummary summary = search.getSummary("attributeprefetch");
+ DocumentSummary summary = schema.getSummary("attributeprefetch");
if (summary != null) {
summary.remove(attribute.getName());
}
- for (SummaryField summaryField : search.getSummaryFields(field).values()) {
+ for (SummaryField summaryField : schema.getSummaryFields(field).values()) {
summaryField.setTransform(SummaryTransform.NONE);
}
}
} else if (validate && field.getDataType().getPrimitiveType() == DataType.PREDICATE) {
- fail(search, field, "Collections of predicates are not allowed.");
+ fail(schema, field, "Collections of predicates are not allowed.");
} else if (validate && field.getDataType() == DataType.RAW && field.doesIndexing()) {
- fail(search, field, "Indexing of RAW fields is not supported.");
+ fail(schema, field, "Indexing of RAW fields is not supported.");
} else if (validate) {
// if field is not a predicate, disallow predicate-related index parameters
for (Index index : field.getIndices().values()) {
if (index.getBooleanIndexDefiniton() != null) {
BooleanIndexDefinition def = index.getBooleanIndexDefiniton();
if (def.hasArity()) {
- fail(search, field, "Arity parameter is used only for predicate type fields.");
+ fail(schema, field, "Arity parameter is used only for predicate type fields.");
} else if (def.hasLowerBound() || def.hasUpperBound()) {
- fail(search, field, "Parameters lower-bound and upper-bound are used only for predicate type fields.");
+ fail(schema, field, "Parameters lower-bound and upper-bound are used only for predicate type fields.");
} else if (def.hasDensePostingListThreshold()) {
- fail(search, field, "Parameter dense-posting-list-threshold is used only for predicate type fields.");
+ fail(schema, field, "Parameter dense-posting-list-threshold is used only for predicate type fields.");
}
}
}
@@ -104,7 +104,7 @@ public class PredicateProcessor extends Processor {
script = new StatementExpression(makeSetPredicateVariablesScript(booleanIndexDefiniton), script);
- ExpressionConverter converter = new PredicateOutputTransformer(search);
+ ExpressionConverter converter = new PredicateOutputTransformer(schema);
field.setIndexingScript(new ScriptExpression((StatementExpression)converter.convert(script)));
}
@@ -125,8 +125,8 @@ public class PredicateProcessor extends Processor {
private static class PredicateOutputTransformer extends TypedTransformProvider {
- PredicateOutputTransformer(Search search) {
- super(OptimizePredicateExpression.class, search);
+ PredicateOutputTransformer(Schema schema) {
+ super(OptimizePredicateExpression.class, schema);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processing.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processing.java
index ddb158a3d84..fb60dfd283d 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processing.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processing.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.processing.multifieldresolver.RankProfileTypeSettingsProcessor;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -94,19 +94,19 @@ public class Processing {
}
/**
- * Runs all search processors on the given {@link Search} object. These will modify the search object, <b>possibly
+ * Runs all search processors on the given {@link Schema} object. These will modify the search object, <b>possibly
* exchanging it with another</b>, as well as its document types.
*
- * @param search The search to process.
+ * @param schema The search to process.
* @param deployLogger The log to log messages and warnings for application deployment to
* @param rankProfileRegistry a {@link com.yahoo.searchdefinition.RankProfileRegistry}
* @param queryProfiles The query profiles contained in the application this search is part of.
*/
- public void process(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry,
+ public void process(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles, boolean validate, boolean documentsOnly) {
Collection<ProcessorFactory> factories = processors();
factories.stream()
- .map(factory -> factory.create(search, deployLogger, rankProfileRegistry, queryProfiles))
+ .map(factory -> factory.create(schema, deployLogger, rankProfileRegistry, queryProfiles))
.forEach(processor -> processor.process(validate, documentsOnly));
}
@@ -127,7 +127,7 @@ public class Processing {
@FunctionalInterface
public interface ProcessorFactory {
- Processor create(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles);
+ Processor create(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processor.java
index c4f15367831..2b18ee27f73 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/Processor.java
@@ -7,7 +7,7 @@ import com.yahoo.document.Field;
import com.yahoo.searchdefinition.Index;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.RankType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
@@ -24,7 +24,7 @@ import java.util.logging.Level;
*/
public abstract class Processor {
- protected final Search search;
+ protected final Schema schema;
protected final DeployLogger deployLogger;
protected final RankProfileRegistry rankProfileRegistry;
protected final QueryProfiles queryProfiles;
@@ -32,16 +32,16 @@ public abstract class Processor {
/**
* Base constructor
*
- * @param search the search to process
+ * @param schema the search to process
* @param deployLogger Logger du use when logging deploy output.
* @param rankProfileRegistry Registry with all rank profiles, used for lookup and insertion.
* @param queryProfiles The query profiles contained in the application this search is part of.
*/
- public Processor(Search search,
+ public Processor(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- this.search = search;
+ this.schema = schema;
this.deployLogger = deployLogger;
this.rankProfileRegistry = rankProfileRegistry;
this.queryProfiles = queryProfiles;
@@ -62,19 +62,19 @@ public abstract class Processor {
/**
* Convenience method for adding a no-strings-attached implementation field for a regular field
*
- * @param search the search definition in question
+ * @param schema the search definition in question
* @param field the field to add an implementation field for
* @param suffix the suffix of the added implementation field (without the underscore)
* @param indexing the indexing statement of the field
* @param queryCommand the query command of the original field, or null if none
* @return the implementation field which is added to the search
*/
- protected SDField addField(Search search, SDField field, String suffix, String indexing, String queryCommand) {
- SDField implementationField = search.getConcreteField(field.getName() + "_" + suffix);
+ protected SDField addField(Schema schema, SDField field, String suffix, String indexing, String queryCommand) {
+ SDField implementationField = schema.getConcreteField(field.getName() + "_" + suffix);
if (implementationField != null) {
deployLogger.logApplicationPackage(Level.WARNING, "Implementation field " + implementationField + " added twice");
} else {
- implementationField = new SDField(search.getDocument(), field.getName() + "_" + suffix, DataType.STRING);
+ implementationField = new SDField(schema.getDocument(), field.getName() + "_" + suffix, DataType.STRING);
}
implementationField.setRankType(RankType.EMPTY);
implementationField.setStemming(Stemming.NONE);
@@ -83,12 +83,12 @@ public abstract class Processor {
String indexName = field.getName();
String implementationIndexName = indexName + "_" + suffix;
Index implementationIndex = new Index(implementationIndexName);
- search.addIndex(implementationIndex);
+ schema.addIndex(implementationIndex);
if (queryCommand != null) {
field.addQueryCommand(queryCommand);
}
- search.addExtraField(implementationField);
- search.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, implementationField.getName());
+ schema.addExtraField(implementationField);
+ schema.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, implementationField.getName());
return implementationField;
}
@@ -97,11 +97,11 @@ public abstract class Processor {
* definition.
*/
protected Iterator<RankProfile.RankSetting> matchingRankSettingsIterator(
- Search search, RankProfile.RankSetting.Type type)
+ Schema schema, RankProfile.RankSetting.Type type)
{
List<RankProfile.RankSetting> someRankSettings = new java.util.ArrayList<>();
- for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile profile : rankProfileRegistry.rankProfilesOf(schema)) {
for (Iterator j = profile.declaredRankSettingIterator(); j.hasNext(); ) {
RankProfile.RankSetting setting = (RankProfile.RankSetting)j.next();
if (setting.getType().equals(type)) {
@@ -120,12 +120,12 @@ public abstract class Processor {
return new IllegalArgumentException(formatError(searchName, fieldName, msg));
}
- protected RuntimeException newProcessException(Search search, Field field, String msg) {
- return newProcessException(search.getName(), field.getName(), msg);
+ protected RuntimeException newProcessException(Schema schema, Field field, String msg) {
+ return newProcessException(schema.getName(), field.getName(), msg);
}
- public void fail(Search search, Field field, String msg) {
- throw newProcessException(search, field, msg);
+ public void fail(Schema schema, Field field, String msg) {
+ throw newProcessException(schema, field, msg);
}
protected void warn(String searchName, String fieldName, String message) {
@@ -133,8 +133,8 @@ public abstract class Processor {
deployLogger.logApplicationPackage(Level.WARNING, fullMsg);
}
- protected void warn(Search search, Field field, String message) {
- warn(search.getName(), field.getName(), message);
+ protected void warn(Schema schema, Field field, String message) {
+ warn(schema.getName(), field.getName(), message);
}
protected void info(String searchName, String fieldName, String message) {
@@ -142,8 +142,8 @@ public abstract class Processor {
deployLogger.logApplicationPackage(Level.INFO, fullMsg);
}
- protected void info(Search search, Field field, String message) {
- info(search.getName(), field.getName(), message);
+ protected void info(Schema schema, Field field, String message) {
+ info(schema.getName(), field.getName(), message);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolver.java
index e6b58cb6c12..f5c3fa35e34 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolver.java
@@ -6,7 +6,7 @@ import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.MapEvaluationTypeContext;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchlib.rankingexpression.ExpressionFunction;
import com.yahoo.searchlib.rankingexpression.RankingExpression;
import com.yahoo.searchlib.rankingexpression.Reference;
@@ -15,7 +15,6 @@ import com.yahoo.tensor.TensorType;
import com.yahoo.tensor.evaluation.TypeContext;
import com.yahoo.vespa.model.container.search.QueryProfiles;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
@@ -36,11 +35,11 @@ public class RankingExpressionTypeResolver extends Processor {
private final QueryProfileRegistry queryProfiles;
- public RankingExpressionTypeResolver(Search search,
+ public RankingExpressionTypeResolver(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
this.queryProfiles = queryProfiles.getRegistry();
}
@@ -49,12 +48,12 @@ public class RankingExpressionTypeResolver extends Processor {
if (documentsOnly) return;
Set<Reference> warnedAbout = new HashSet<>();
- for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile profile : rankProfileRegistry.rankProfilesOf(schema)) {
try {
resolveTypesIn(profile, validate, warnedAbout);
}
catch (IllegalArgumentException e) {
- throw new IllegalArgumentException("In " + (search != null ? search + ", " : "") + profile, e);
+ throw new IllegalArgumentException("In " + (schema != null ? schema + ", " : "") + profile, e);
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReferenceFieldsProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReferenceFieldsProcessor.java
index 698e654f1cb..ed23b1ca606 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReferenceFieldsProcessor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReferenceFieldsProcessor.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -20,11 +20,11 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class ReferenceFieldsProcessor extends Processor {
- public ReferenceFieldsProcessor(Search search,
+ public ReferenceFieldsProcessor(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -34,7 +34,7 @@ public class ReferenceFieldsProcessor extends Processor {
}
private void clearSummaryAttributeAspectForExplicitSummaryFields() {
- for (DocumentSummary docSum : search.getSummaries().values()) {
+ for (DocumentSummary docSum : schema.getSummaries().values()) {
docSum.getSummaryFields().stream()
.filter(summaryField -> summaryField.getDataType() instanceof ReferenceDataType)
.forEach(summaryField -> summaryField.setTransform(SummaryTransform.NONE));
@@ -42,7 +42,7 @@ public class ReferenceFieldsProcessor extends Processor {
}
private void clearSummaryAttributeAspectForConcreteFields() {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getDataType() instanceof ReferenceDataType) {
removeFromAttributePrefetchSummaryClass(field);
clearSummaryTransformOnSummaryFields(field);
@@ -51,14 +51,14 @@ public class ReferenceFieldsProcessor extends Processor {
}
private void removeFromAttributePrefetchSummaryClass(SDField field) {
- DocumentSummary summary = search.getSummary("attributeprefetch");
+ DocumentSummary summary = schema.getSummary("attributeprefetch");
if (summary != null) {
summary.remove(field.getName());
}
}
private void clearSummaryTransformOnSummaryFields(SDField field) {
- search.getSummaryFields(field).values().forEach(summaryField -> summaryField.setTransform(SummaryTransform.NONE));
+ schema.getSummaryFields(field).values().forEach(summaryField -> summaryField.setTransform(SummaryTransform.NONE));
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedDocumentNames.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedDocumentNames.java
index e017726370f..549f53d6d8d 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedDocumentNames.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedDocumentNames.java
@@ -3,8 +3,8 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDDocumentType;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import java.util.HashSet;
@@ -23,17 +23,17 @@ public class ReservedDocumentNames extends Processor {
}
}
- public ReservedDocumentNames(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ReservedDocumentNames(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- String docName = search.getDocument().getName();
+ String docName = schema.getDocument().getName();
if (RESERVED_NAMES.contains(docName)) {
- throw new IllegalArgumentException("For search '" + search.getName() + "': Document name '" + docName +
+ throw new IllegalArgumentException("For search '" + schema.getName() + "': Document name '" + docName +
"' is reserved.");
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedFunctionNames.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedFunctionNames.java
index d997422c8f0..8194b9f9e06 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedFunctionNames.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ReservedFunctionNames.java
@@ -5,7 +5,7 @@ import com.google.common.collect.ImmutableSet;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchlib.rankingexpression.parser.RankingExpressionParserConstants;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -22,8 +22,8 @@ public class ReservedFunctionNames extends Processor {
private static Set<String> reservedNames = getReservedNames();
- public ReservedFunctionNames(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ReservedFunctionNames(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocument.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocument.java
index b9ecc2e234d..a48c410fe11 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocument.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocument.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -14,16 +14,16 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SearchMustHaveDocument extends Processor {
- public SearchMustHaveDocument(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SearchMustHaveDocument(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- if (search.getDocument() == null)
- throw new IllegalArgumentException("For search '" + search.getName() +
+ if (schema.getDocument() == null)
+ throw new IllegalArgumentException("For search '" + schema.getName() +
"': A search specification must have an equally named document inside of it.");
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SetRankTypeEmptyOnFilters.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SetRankTypeEmptyOnFilters.java
index eaab175a46e..6631258813a 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SetRankTypeEmptyOnFilters.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SetRankTypeEmptyOnFilters.java
@@ -3,9 +3,9 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.RankType;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -15,13 +15,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SetRankTypeEmptyOnFilters extends Processor {
- public SetRankTypeEmptyOnFilters(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SetRankTypeEmptyOnFilters(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getRanking().isFilter()) {
field.setRankType(RankType.EMPTY);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SortingSettings.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SortingSettings.java
index f81ff184417..33e9634323b 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SortingSettings.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SortingSettings.java
@@ -3,10 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Sorting;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -16,23 +16,23 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SortingSettings extends Processor {
- public SortingSettings(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SortingSettings(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
for (Attribute attribute : field.getAttributes().values()) {
Sorting sorting = attribute.getSorting();
if (sorting.getFunction() != Sorting.Function.UCA) {
if (sorting.getStrength()!=null && sorting.getStrength() != Sorting.Strength.PRIMARY) {
- warn(search, field, "Sort strength only works for sort function 'uca'.");
+ warn(schema, field, "Sort strength only works for sort function 'uca'.");
}
if (sorting.getLocale() != null && ! "".equals(sorting.getLocale())) {
- warn(search, field, "Sort locale only works for sort function 'uca'.");
+ warn(schema, field, "Sort locale only works for sort function 'uca'.");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/StringSettingsOnNonStringFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/StringSettingsOnNonStringFields.java
index ea034665ae1..8c6b07515aa 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/StringSettingsOnNonStringFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/StringSettingsOnNonStringFields.java
@@ -5,28 +5,28 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.NumericDataType;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.vespa.model.container.search.QueryProfiles;
public class StringSettingsOnNonStringFields extends Processor {
- public StringSettingsOnNonStringFields(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public StringSettingsOnNonStringFields(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if ( ! doCheck(field)) continue;
if (field.getMatching().isTypeUserSet()) {
- warn(search, field, "Matching type " + field.getMatching().getType() +
+ warn(schema, field, "Matching type " + field.getMatching().getType() +
" is only allowed for string fields.");
}
if (field.getRanking().isLiteral()) {
- warn(search, field, "Rank type literal only applies to string fields");
+ warn(schema, field, "Rank type literal only applies to string fields");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryConsistency.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryConsistency.java
index 613674c5c6f..80f9a15f1e5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryConsistency.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryConsistency.java
@@ -5,9 +5,9 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.document.TensorDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.document.WeightedSetDataType;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -24,26 +24,26 @@ import static com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils.isC
*/
public class SummaryConsistency extends Processor {
- public SummaryConsistency(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SummaryConsistency(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
if (summary.getName().equals("default")) continue;
for (SummaryField summaryField : summary.getSummaryFields() ) {
- assertConsistency(summaryField, search, validate);
- makeAttributeTransformIfAppropriate(summaryField, search);
- makeAttributeCombinerTransformIfAppropriate(summaryField, search);
+ assertConsistency(summaryField, schema, validate);
+ makeAttributeTransformIfAppropriate(summaryField, schema);
+ makeAttributeCombinerTransformIfAppropriate(summaryField, schema);
}
}
}
- private void assertConsistency(SummaryField summaryField, Search search, boolean validate) {
+ private void assertConsistency(SummaryField summaryField, Schema schema, boolean validate) {
// Compare to default:
- SummaryField existingDefault = search.getSummary("default").getSummaryField(summaryField.getName());
+ SummaryField existingDefault = schema.getSummary("default").getSummaryField(summaryField.getName());
if (existingDefault != null) {
if (validate)
assertConsistentTypes(existingDefault, summaryField);
@@ -51,27 +51,27 @@ public class SummaryConsistency extends Processor {
}
else {
// If no default, compare to whichever definition of the field
- SummaryField existing = search.getExplicitSummaryField(summaryField.getName());
+ SummaryField existing = schema.getExplicitSummaryField(summaryField.getName());
if (existing == null) return;
if (validate)
assertConsistentTypes(existing, summaryField);
- makeConsistentOrThrow(existing, summaryField, search);
+ makeConsistentOrThrow(existing, summaryField, schema);
}
}
/** If the source is an attribute, make this use the attribute transform */
- private void makeAttributeTransformIfAppropriate(SummaryField summaryField,Search search) {
+ private void makeAttributeTransformIfAppropriate(SummaryField summaryField, Schema schema) {
if (summaryField.getTransform() != SummaryTransform.NONE) return;
- Attribute attribute = search.getAttribute(summaryField.getSingleSource());
+ Attribute attribute = schema.getAttribute(summaryField.getSingleSource());
if (attribute == null) return;
summaryField.setTransform(SummaryTransform.ATTRIBUTE);
}
/** If the source is a complex field with only struct field attributes then make this use the attribute combiner transform */
- private void makeAttributeCombinerTransformIfAppropriate(SummaryField summaryField,Search search) {
+ private void makeAttributeCombinerTransformIfAppropriate(SummaryField summaryField, Schema schema) {
if (summaryField.getTransform() == SummaryTransform.NONE) {
String source_field_name = summaryField.getSingleSource();
- ImmutableSDField source = search.getField(source_field_name);
+ ImmutableSDField source = schema.getField(source_field_name);
if (source != null && isComplexFieldWithOnlyStructFieldAttributes(source)) {
summaryField.setTransform(SummaryTransform.ATTRIBUTECOMBINER);
}
@@ -94,9 +94,9 @@ public class SummaryConsistency extends Processor {
return summaryType.equals(existingType);
}
- private void makeConsistentOrThrow(SummaryField field1, SummaryField field2, Search search) {
+ private void makeConsistentOrThrow(SummaryField field1, SummaryField field2, Schema schema) {
if (field2.getTransform() == SummaryTransform.ATTRIBUTE && field1.getTransform() == SummaryTransform.NONE) {
- Attribute attribute = search.getAttribute(field1.getName());
+ Attribute attribute = schema.getAttribute(field1.getName());
if (attribute != null) {
field1.setTransform(SummaryTransform.ATTRIBUTE);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDiskAccessValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDiskAccessValidator.java
index 4ae624d2c35..4bc553b1669 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDiskAccessValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDiskAccessValidator.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.SummaryClass;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.documentmodel.DocumentSummary;
@@ -23,11 +23,11 @@ import static com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils.isC
*/
public class SummaryDiskAccessValidator extends Processor {
- public SummaryDiskAccessValidator(Search search,
+ public SummaryDiskAccessValidator(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@@ -36,12 +36,12 @@ public class SummaryDiskAccessValidator extends Processor {
if ( ! validate) return;
if (documentsOnly) return;
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
for (SummaryField summaryField : summary.getSummaryFields()) {
for (SummaryField.Source source : summaryField.getSources()) {
- ImmutableSDField field = search.getField(source.getName());
+ ImmutableSDField field = schema.getField(source.getName());
if (field == null)
- field = findFieldProducingSummaryField(source.getName(), search).orElse(null);
+ field = findFieldProducingSummaryField(source.getName(), schema).orElse(null);
if (field == null && ! source.getName().equals(SummaryClass.DOCUMENT_ID_FIELD))
throw new IllegalArgumentException(summaryField + " in " + summary + " references " +
source + ", but this field does not exist");
@@ -66,8 +66,8 @@ public class SummaryDiskAccessValidator extends Processor {
return field.doesAttributing();
}
- private Optional<ImmutableSDField> findFieldProducingSummaryField(String name, Search search) {
- return search.allFields().filter(field -> field.getSummaryFields().get(name) != null).findAny();
+ private Optional<ImmutableSDField> findFieldProducingSummaryField(String name, Schema schema) {
+ return schema.allFields().filter(field -> field.getSummaryFields().get(name) != null).findAny();
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDynamicStructsArrays.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDynamicStructsArrays.java
index a9bd57705f8..c350c6800ed 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDynamicStructsArrays.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryDynamicStructsArrays.java
@@ -5,7 +5,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.*;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -21,15 +21,15 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SummaryDynamicStructsArrays extends Processor {
- public SummaryDynamicStructsArrays(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SummaryDynamicStructsArrays(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
DataType type = field.getDataType();
if (type instanceof ArrayDataType || type instanceof WeightedSetDataType || type instanceof StructDataType) {
for (SummaryField sField : field.getSummaryFields().values()) {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSource.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSource.java
index 3ebfa629895..6d55a52f959 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSource.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSource.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.SummaryClass;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -17,15 +17,15 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SummaryFieldsMustHaveValidSource extends Processor {
- SummaryFieldsMustHaveValidSource(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ SummaryFieldsMustHaveValidSource(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
for (SummaryField summaryField : summary.getSummaryFields()) {
if (summaryField.getSources().isEmpty()) {
if ((summaryField.getTransform() != SummaryTransform.RANKFEATURES) &&
@@ -56,7 +56,7 @@ public class SummaryFieldsMustHaveValidSource extends Processor {
private void verifySource(String source, SummaryField summaryField, DocumentSummary summary) {
if ( ! isValid(source, summaryField, summary) ) {
- throw new IllegalArgumentException("For search '" + search.getName() + "', summary class '" +
+ throw new IllegalArgumentException("For search '" + schema.getName() + "', summary class '" +
summary.getName() + "'," + " summary field '" + summaryField.getName() +
"': there is no valid source '" + source + "'.");
}
@@ -71,11 +71,11 @@ public class SummaryFieldsMustHaveValidSource extends Processor {
}
private boolean isDocumentField(String name) {
- return search.getField(name) != null;
+ return schema.getField(name) != null;
}
private boolean isSummaryField(String name) {
- return search.getSummaryField(name) != null;
+ return schema.getSummaryField(name) != null;
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryNamesFieldCollisions.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryNamesFieldCollisions.java
index b7febdd73b1..6a51cd649b6 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryNamesFieldCollisions.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/SummaryNamesFieldCollisions.java
@@ -7,7 +7,7 @@ import java.util.Map;
import com.yahoo.collections.Pair;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryField.Source;
@@ -21,8 +21,8 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class SummaryNamesFieldCollisions extends Processor {
- public SummaryNamesFieldCollisions(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public SummaryNamesFieldCollisions(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -30,7 +30,7 @@ public class SummaryNamesFieldCollisions extends Processor {
if ( ! validate) return;
Map<String, Pair<String, String>> fieldToClassAndSource = new HashMap<>();
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
if ("default".equals(summary.getName())) continue;
for (SummaryField summaryField : summary.getSummaryFields() ) {
if (summaryField.isImplicit()) continue;
@@ -41,12 +41,12 @@ public class SummaryNamesFieldCollisions extends Processor {
String prevSource = prevClassAndSource.getSecond();
if ( ! prevClass.equals(summary.getName())) {
if ( ! prevSource.equals(source.getName())) {
- throw new IllegalArgumentException("For search '"+ search.getName() +
- "', summary class '" + summary.getName()+"'," +
- " summary field '" + summaryField.getName() + "':" +
- " Can not use source '" + source.getName() +
+ throw new IllegalArgumentException("For search '" + schema.getName() +
+ "', summary class '" + summary.getName() + "'," +
+ " summary field '" + summaryField.getName() + "':" +
+ " Can not use source '" + source.getName() +
"' for this summary field, an equally named field in summary class '" +
- prevClass + "' uses a different source: '"+prevSource+"'.");
+ prevClass + "' uses a different source: '" + prevSource + "'.");
}
}
} else {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TagType.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TagType.java
index 57deb82854a..8cebfc89458 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TagType.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TagType.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.*;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.RankType;
import com.yahoo.searchdefinition.document.SDField;
@@ -17,16 +17,16 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class TagType extends Processor {
- public TagType(Search search,
+ public TagType(Schema schema,
DeployLogger deployLogger,
RankProfileRegistry rankProfileRegistry,
QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getDataType() instanceof WeightedSetDataType && ((WeightedSetDataType)field.getDataType()).isTag())
implementTagType(field);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java
index 32fefc6d489..a253076f320 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.TensorDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.HnswIndexParams;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.SDField;
@@ -18,13 +18,13 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class TensorFieldProcessor extends Processor {
- public TensorFieldProcessor(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public TensorFieldProcessor(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (var field : search.allConcreteFields()) {
+ for (var field : schema.allConcreteFields()) {
if ( field.getDataType() instanceof TensorDataType ) {
if (validate) {
validateIndexingScripsForTensorField(field);
@@ -43,8 +43,8 @@ public class TensorFieldProcessor extends Processor {
private void validateIndexingScripsForTensorField(SDField field) {
if (field.doesIndexing() && !isTensorTypeThatSupportsHnswIndex(field)) {
- fail(search, field, "A tensor of type '" + tensorTypeToString(field) + "' does not support having an 'index'. " +
- "Currently, only tensors with 1 indexed dimension supports that.");
+ fail(schema, field, "A tensor of type '" + tensorTypeToString(field) + "' does not support having an 'index'. " +
+ "Currently, only tensors with 1 indexed dimension supports that.");
}
}
@@ -79,7 +79,7 @@ public class TensorFieldProcessor extends Processor {
var attribute = field.getAttributes().get(field.getName());
if (attribute != null && attribute.isFastSearch()) {
if (! isTensorTypeThatSupportsDirectStore(field)) {
- fail(search, field, "An attribute of type 'tensor' cannot be 'fast-search'.");
+ fail(schema, field, "An attribute of type 'tensor' cannot be 'fast-search'.");
}
}
}
@@ -88,7 +88,7 @@ public class TensorFieldProcessor extends Processor {
private void validateHnswIndexParametersRequiresIndexing(SDField field) {
var index = field.getIndex(field.getName());
if (index != null && index.getHnswIndexParams().isPresent() && !field.doesIndexing()) {
- fail(search, field, "A tensor that specifies hnsw index parameters must also specify 'index' in 'indexing'");
+ fail(schema, field, "A tensor that specifies hnsw index parameters must also specify 'index' in 'indexing'");
}
}
@@ -98,7 +98,7 @@ public class TensorFieldProcessor extends Processor {
}
if (isTensorTypeThatSupportsHnswIndex(field)) {
if (validate && !field.doesAttributing()) {
- fail(search, field, "A tensor that has an index must also be an attribute.");
+ fail(schema, field, "A tensor that has an index must also be an attribute.");
}
var index = field.getIndex(field.getName());
// TODO: Calculate default params based on tensor dimension size
@@ -112,7 +112,7 @@ public class TensorFieldProcessor extends Processor {
private void validateDataTypeForCollectionField(SDField field) {
if (((CollectionDataType)field.getDataType()).getNestedType() instanceof TensorDataType)
- fail(search, field, "A field with collection type of tensor is not supported. Use simple type 'tensor' instead.");
+ fail(schema, field, "A field with collection type of tensor is not supported. Use simple type 'tensor' instead.");
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TextMatch.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TextMatch.java
index c1c18a552ab..a8065ec4bb5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TextMatch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TextMatch.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.DataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
@@ -29,13 +29,13 @@ import java.util.TreeSet;
*/
public class TextMatch extends Processor {
- public TextMatch(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public TextMatch(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.getMatching().getType() != Matching.Type.TEXT) continue;
ScriptExpression script = field.getIndexingScript();
@@ -49,7 +49,7 @@ public class TextMatch extends Processor {
Set<String> dynamicSummary = new TreeSet<>();
Set<String> staticSummary = new TreeSet<>();
- new IndexingOutputs(search, deployLogger, rankProfileRegistry, queryProfiles).findSummaryTo(search,
+ new IndexingOutputs(schema, deployLogger, rankProfileRegistry, queryProfiles).findSummaryTo(schema,
field,
dynamicSummary,
staticSummary);
@@ -57,16 +57,16 @@ public class TextMatch extends Processor {
visitor.visit(script);
if ( ! visitor.requiresTokenize) continue;
- ExpressionConverter converter = new MyStringTokenizer(search, findAnnotatorConfig(search, field));
+ ExpressionConverter converter = new MyStringTokenizer(schema, findAnnotatorConfig(schema, field));
field.setIndexingScript((ScriptExpression)converter.convert(script));
}
}
- private AnnotatorConfig findAnnotatorConfig(Search search, SDField field) {
+ private AnnotatorConfig findAnnotatorConfig(Schema schema, SDField field) {
AnnotatorConfig ret = new AnnotatorConfig();
Stemming activeStemming = field.getStemming();
if (activeStemming == null) {
- activeStemming = search.getStemming();
+ activeStemming = schema.getStemming();
}
ret.setStemMode(activeStemming.toStemMode());
ret.setRemoveAccents(field.getNormalizing().doRemoveAccents());
@@ -103,8 +103,8 @@ public class TextMatch extends Processor {
final AnnotatorConfig annotatorCfg;
- MyStringTokenizer(Search search, AnnotatorConfig annotatorCfg) {
- super(TokenizeExpression.class, search);
+ MyStringTokenizer(Schema schema, AnnotatorConfig annotatorCfg) {
+ super(TokenizeExpression.class, schema);
this.annotatorCfg = annotatorCfg;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TypedTransformProvider.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TypedTransformProvider.java
index e309a459a67..d6fdb901ab7 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TypedTransformProvider.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TypedTransformProvider.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.document.DataType;
import com.yahoo.document.Field;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.indexinglanguage.ValueTransformProvider;
import com.yahoo.vespa.indexinglanguage.expressions.*;
@@ -13,12 +13,12 @@ import com.yahoo.vespa.indexinglanguage.expressions.*;
*/
public abstract class TypedTransformProvider extends ValueTransformProvider {
- private final Search search;
+ private final Schema schema;
private DataType fieldType;
- TypedTransformProvider(Class<? extends Expression> transformClass, Search search) {
+ TypedTransformProvider(Class<? extends Expression> transformClass, Schema schema) {
super(transformClass);
- this.search = search;
+ this.schema = schema;
}
@Override
@@ -26,19 +26,19 @@ public abstract class TypedTransformProvider extends ValueTransformProvider {
if (exp instanceof OutputExpression) {
String fieldName = ((OutputExpression)exp).getFieldName();
if (exp instanceof AttributeExpression) {
- Attribute attribute = search.getAttribute(fieldName);
+ Attribute attribute = schema.getAttribute(fieldName);
if (attribute == null)
throw new IllegalArgumentException("Attribute '" + fieldName + "' not found.");
fieldType = attribute.getDataType();
}
else if (exp instanceof IndexExpression) {
- Field field = search.getConcreteField(fieldName);
+ Field field = schema.getConcreteField(fieldName);
if (field == null)
throw new IllegalArgumentException("Index field '" + fieldName + "' not found.");
fieldType = field.getDataType();
}
else if (exp instanceof SummaryExpression) {
- Field field = search.getSummaryField(fieldName);
+ Field field = schema.getSummaryField(fieldName);
if (field == null)
throw new IllegalArgumentException("Summary field '" + fieldName + "' not found.");
fieldType = field.getDataType();
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/UriHack.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/UriHack.java
index 224d7593631..84dc6d369fc 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/UriHack.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/UriHack.java
@@ -7,7 +7,7 @@ import com.yahoo.document.CollectionDataType;
import com.yahoo.document.DataType;
import com.yahoo.document.WeightedSetDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -23,29 +23,29 @@ public class UriHack extends Processor {
private static final List<String> URL_SUFFIX =
Arrays.asList("scheme", "host", "port", "path", "query", "fragment", "hostname");
- UriHack(Search search,
- DeployLogger deployLogger,
- RankProfileRegistry rankProfileRegistry,
- QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ UriHack(Schema schema,
+ DeployLogger deployLogger,
+ RankProfileRegistry rankProfileRegistry,
+ QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.doesIndexing()) {
DataType fieldType = field.getDataType();
if (fieldType instanceof CollectionDataType) {
fieldType = ((CollectionDataType)fieldType).getNestedType();
}
if (fieldType == DataType.URI) {
- processField(search, field);
+ processField(schema, field);
}
}
}
}
- private void processField(Search search, SDField uriField) {
+ private void processField(Schema schema, SDField uriField) {
String uriName = uriField.getName();
uriField.setStemming(Stemming.NONE);
DataType generatedType = DataType.STRING;
@@ -69,8 +69,8 @@ public class UriHack extends Processor {
if (uriField.getIndex(suffix) != null) {
partField.addIndex(uriField.getIndex(suffix));
}
- search.addExtraField(partField);
- search.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, partField.getName());
+ schema.addExtraField(partField);
+ schema.fieldSets().addBuiltInFieldSetItem(BuiltInFieldSets.INTERNAL_FIELDSET_NAME, partField.getName());
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/UrlFieldValidator.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/UrlFieldValidator.java
index f059785057b..72f903f8365 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/UrlFieldValidator.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/UrlFieldValidator.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -13,19 +13,19 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class UrlFieldValidator extends Processor {
- public UrlFieldValidator(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public UrlFieldValidator(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- for (ImmutableSDField field : search.allConcreteFields()) {
+ for (ImmutableSDField field : schema.allConcreteFields()) {
if ( ! field.getDataType().equals(DataType.URI)) continue;
if (field.doesAttributing())
- throw new IllegalArgumentException("Error in " + field + " in " + search + ": " +
+ throw new IllegalArgumentException("Error in " + field + " in " + schema + ": " +
"uri type fields cannot be attributes");
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypes.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypes.java
index 923726b7696..0d4bfd09677 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypes.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypes.java
@@ -5,7 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.document.TensorDataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -23,22 +23,22 @@ import java.util.Map;
*/
public class ValidateFieldTypes extends Processor {
- public ValidateFieldTypes(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ValidateFieldTypes(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if (!validate) return;
- String searchName = search.getName();
+ String searchName = schema.getName();
Map<String, DataType> seenFields = new HashMap<>();
verifySearchAndDocFields(searchName, seenFields);
verifySummaryFields(searchName, seenFields);
}
final protected void verifySearchAndDocFields(String searchName, Map<String, DataType> seenFields) {
- search.allFields().forEach(field -> {
+ schema.allFields().forEach(field -> {
checkFieldType(searchName, "index field", field.getName(), field.getDataType(), seenFields);
for (Map.Entry<String, Attribute> entry : field.getAttributes().entrySet()) {
checkFieldType(searchName, "attribute", entry.getKey(), entry.getValue().getDataType(), seenFields);
@@ -47,7 +47,7 @@ public class ValidateFieldTypes extends Processor {
}
final protected void verifySummaryFields(String searchName, Map<String, DataType> seenFields) {
- for (DocumentSummary summary : search.getSummaries().values()) {
+ for (DocumentSummary summary : schema.getSummaries().values()) {
for (SummaryField field : summary.getSummaryFields()) {
checkFieldType(searchName, "summary field", field.getName(), field.getDataType(), seenFields);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesDocumentsOnly.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesDocumentsOnly.java
index 334e2f8c340..e8b218a80ad 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesDocumentsOnly.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesDocumentsOnly.java
@@ -4,22 +4,22 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
import java.util.HashMap;
import java.util.Map;
public class ValidateFieldTypesDocumentsOnly extends ValidateFieldTypes {
- public ValidateFieldTypesDocumentsOnly(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ValidateFieldTypesDocumentsOnly(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
public void process(boolean validate, boolean documentsOnly) {
if ( ! validate) return;
- String searchName = search.getName();
+ String searchName = schema.getName();
Map<String, DataType> seenFields = new HashMap<>();
verifySearchAndDocFields(searchName, seenFields);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldWithIndexSettingsCreatesIndex.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldWithIndexSettingsCreatesIndex.java
index 2a14616e5e7..268a9f27b3c 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldWithIndexSettingsCreatesIndex.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ValidateFieldWithIndexSettingsCreatesIndex.java
@@ -3,11 +3,10 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.Ranking;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -17,8 +16,8 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class ValidateFieldWithIndexSettingsCreatesIndex extends Processor {
- public ValidateFieldWithIndexSettingsCreatesIndex(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public ValidateFieldWithIndexSettingsCreatesIndex(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -27,15 +26,15 @@ public class ValidateFieldWithIndexSettingsCreatesIndex extends Processor {
Matching defaultMatching = new Matching();
Ranking defaultRanking = new Ranking();
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
if (field.doesIndexing()) continue;
if (field.doesAttributing()) continue;
if ( ! field.getRanking().equals(defaultRanking))
- fail(search, field,
+ fail(schema, field,
"Fields which are not creating an index or attribute can not contain rank settings.");
if ( ! field.getMatching().equals(defaultMatching))
- fail(search, field,
+ fail(schema, field,
"Fields which are not creating an index or attribute can not contain match settings.");
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/WordMatch.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/WordMatch.java
index 0d8045705b7..c4989604457 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/WordMatch.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/WordMatch.java
@@ -6,7 +6,7 @@ import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.model.container.search.QueryProfiles;
/**
@@ -21,12 +21,12 @@ import com.yahoo.vespa.model.container.search.QueryProfiles;
*/
public class WordMatch extends Processor {
- public WordMatch(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public WordMatch(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
public void process(boolean validate, boolean documentsOnly) {
- for (SDField field : search.allConcreteFields()) {
+ for (SDField field : schema.allConcreteFields()) {
processFieldRecursive(field);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/IndexCommandResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/IndexCommandResolver.java
index c9ee6425f97..56926436545 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/IndexCommandResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/IndexCommandResolver.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing.multifieldresolver;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.util.ArrayList;
import java.util.Arrays;
@@ -28,8 +28,8 @@ public class IndexCommandResolver extends MultiFieldResolver {
harmonizedCommands.addAll(Arrays.asList(harmonize));
}
- public IndexCommandResolver(String indexName, List<SDField> fields, Search search, DeployLogger logger) {
- super(indexName, fields, search, logger);
+ public IndexCommandResolver(String indexName, List<SDField> fields, Schema schema, DeployLogger logger) {
+ super(indexName, fields, schema, logger);
}
/**
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/MultiFieldResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/MultiFieldResolver.java
index c27fe7d875d..80bb4faeaa5 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/MultiFieldResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/MultiFieldResolver.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing.multifieldresolver;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.util.List;
/**
@@ -13,14 +13,14 @@ public abstract class MultiFieldResolver {
protected String indexName;
protected List<SDField> fields;
- protected Search search;
+ protected Schema schema;
protected DeployLogger deployLogger;
- public MultiFieldResolver(String indexName, List<SDField> fields, Search search, DeployLogger logger) {
+ public MultiFieldResolver(String indexName, List<SDField> fields, Schema schema, DeployLogger logger) {
this.indexName = indexName;
this.fields = fields;
- this.search = search;
+ this.schema = schema;
this.deployLogger = logger;
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java
index 34f60116aa8..260d76c8ca3 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java
@@ -9,7 +9,7 @@ import com.yahoo.search.query.profile.types.TensorFieldType;
import com.yahoo.searchdefinition.FeatureNames;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.ImportedField;
@@ -29,8 +29,8 @@ import java.util.Optional;
*/
public class RankProfileTypeSettingsProcessor extends Processor {
- public RankProfileTypeSettingsProcessor(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
- super(search, deployLogger, rankProfileRegistry, queryProfiles);
+ public RankProfileTypeSettingsProcessor(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) {
+ super(schema, deployLogger, rankProfileRegistry, queryProfiles);
}
@Override
@@ -43,8 +43,8 @@ public class RankProfileTypeSettingsProcessor extends Processor {
}
private void processAttributeFields() {
- if (search == null) return; // we're processing global profiles
- for (ImmutableSDField field : search.allConcreteFields()) {
+ if (schema == null) return; // we're processing global profiles
+ for (ImmutableSDField field : schema.allConcreteFields()) {
Attribute attribute = field.getAttributes().get(field.getName());
if (attribute != null && attribute.tensorType().isPresent()) {
addAttributeTypeToRankProfiles(attribute.getName(), attribute.tensorType().get().toString());
@@ -53,8 +53,8 @@ public class RankProfileTypeSettingsProcessor extends Processor {
}
private void processImportedFields() {
- if (search == null) return; // we're processing global profiles
- Optional<ImportedFields> importedFields = search.importedFields();
+ if (schema == null) return; // we're processing global profiles
+ Optional<ImportedFields> importedFields = schema.importedFields();
if (importedFields.isPresent()) {
importedFields.get().fields().forEach((fieldName, field) -> processImportedField(field));
}
@@ -69,7 +69,7 @@ public class RankProfileTypeSettingsProcessor extends Processor {
}
private void addAttributeTypeToRankProfiles(String attributeName, String attributeType) {
- for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) {
+ for (RankProfile profile : rankProfileRegistry.rankProfilesOf(schema)) {
profile.addAttributeType(attributeName, attributeType);
}
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankTypeResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankTypeResolver.java
index 89acda469b7..231a97f30ec 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankTypeResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankTypeResolver.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing.multifieldresolver;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.document.RankType;
import com.yahoo.searchdefinition.document.SDField;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.util.List;
import java.util.logging.Level;
@@ -18,8 +18,8 @@ import java.util.logging.Level;
*/
public class RankTypeResolver extends MultiFieldResolver {
- public RankTypeResolver(String indexName, List<SDField> fields, Search search, DeployLogger logger) {
- super(indexName, fields, search, logger);
+ public RankTypeResolver(String indexName, List<SDField> fields, Schema schema, DeployLogger logger) {
+ super(indexName, fields, schema, logger);
}
public void resolve() {
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/StemmingResolver.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/StemmingResolver.java
index 72942d651d0..1bcf646c8ec 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/StemmingResolver.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/StemmingResolver.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing.multifieldresolver;
import com.yahoo.config.application.api.DeployLogger;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.Stemming;
@@ -15,8 +15,8 @@ import java.util.logging.Level;
*/
public class StemmingResolver extends MultiFieldResolver {
- public StemmingResolver(String indexName, List<SDField> fields, Search search, DeployLogger logger) {
- super(indexName, fields, search, logger);
+ public StemmingResolver(String indexName, List<SDField> fields, Schema schema, DeployLogger logger) {
+ super(indexName, fields, schema, logger);
}
@Override
@@ -29,13 +29,13 @@ public class StemmingResolver extends MultiFieldResolver {
SDField stemmingField = null;
for (SDField field : fields) {
if (stemming == null && stemmingField==null) {
- stemming = field.getStemming(search);
+ stemming = field.getStemming(schema);
stemmingField = field;
- } else if (stemming != field.getStemming(search)) {
- deployLogger.logApplicationPackage(Level.WARNING, "Field '" + field.getName() + "' has " + field.getStemming(search) +
- ", whereas field '" + stemmingField.getName() + "' has " + stemming +
- ". All fields indexing to the index '" + indexName + "' must have the same stemming." +
- " This should be corrected as it will make indexing fail in a few cases.");
+ } else if (stemming != field.getStemming(schema)) {
+ deployLogger.logApplicationPackage(Level.WARNING, "Field '" + field.getName() + "' has " + field.getStemming(schema) +
+ ", whereas field '" + stemmingField.getName() + "' has " + stemming +
+ ". All fields indexing to the index '" + indexName + "' must have the same stemming." +
+ " This should be corrected as it will make indexing fail in a few cases.");
}
}
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/documentmodel/DocumentSummary.java b/config-model/src/main/java/com/yahoo/vespa/documentmodel/DocumentSummary.java
index 67e26a899bd..e0f0178cee3 100644
--- a/config-model/src/main/java/com/yahoo/vespa/documentmodel/DocumentSummary.java
+++ b/config-model/src/main/java/com/yahoo/vespa/documentmodel/DocumentSummary.java
@@ -2,7 +2,7 @@
package com.yahoo.vespa.documentmodel;
import com.yahoo.config.application.api.DeployLogger;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.util.ArrayList;
import java.util.Collection;
@@ -21,10 +21,10 @@ public class DocumentSummary extends FieldView {
private boolean omitSummaryFeatures = false;
private String inherited;
- private final Search owner;
+ private final Schema owner;
/** Creates a DocumentSummary with the given name. */
- public DocumentSummary(String name, Search owner) {
+ public DocumentSummary(String name, Schema owner) {
super(name);
this.owner = owner;
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/ComplexAttributeFieldsValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/ComplexAttributeFieldsValidator.java
index cb9472568e5..43bf8133c74 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/ComplexAttributeFieldsValidator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/ComplexAttributeFieldsValidator.java
@@ -4,7 +4,7 @@ package com.yahoo.vespa.model.application.validation;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.model.VespaModel;
@@ -39,18 +39,18 @@ public class ComplexAttributeFieldsValidator extends Validator {
}
}
- private static void validateComplexFields(String clusterName, Search search) {
- String unsupportedFields = search.allFields()
- .filter(field -> isUnsupportedComplexField(field))
- .map(ComplexAttributeFieldsValidator::toString)
- .collect(Collectors.joining(", "));
+ private static void validateComplexFields(String clusterName, Schema schema) {
+ String unsupportedFields = schema.allFields()
+ .filter(field -> isUnsupportedComplexField(field))
+ .map(ComplexAttributeFieldsValidator::toString)
+ .collect(Collectors.joining(", "));
if (!unsupportedFields.isEmpty()) {
throw new IllegalArgumentException(
String.format("For cluster '%s', search '%s': The following complex fields do not support using struct field attributes: %s. " +
"Only supported for the following complex field types: array or map of struct with primitive types, map of primitive types. " +
"The supported primitive types are: byte, int, long, float, double and string",
- clusterName, search.getName(), unsupportedFields));
+ clusterName, schema.getName(), unsupportedFields));
}
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/NoPrefixForIndexes.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/NoPrefixForIndexes.java
index c8558b70b6e..25085683ca6 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/NoPrefixForIndexes.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/NoPrefixForIndexes.java
@@ -2,10 +2,10 @@
package com.yahoo.vespa.model.application.validation;
import com.yahoo.config.model.deploy.DeployState;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.vespa.model.VespaModel;
import com.yahoo.vespa.model.search.AbstractSearchCluster;
@@ -28,16 +28,16 @@ public class NoPrefixForIndexes extends Validator {
IndexedSearchCluster sc = (IndexedSearchCluster) cluster;
for (DocumentDatabase docDb : sc.getDocumentDbs()) {
DerivedConfiguration sdConfig = docDb.getDerivedConfiguration();
- Search search = sdConfig.getSearch();
- for (ImmutableSDField field : search.allConcreteFields()) {
+ Schema schema = sdConfig.getSearch();
+ for (ImmutableSDField field : schema.allConcreteFields()) {
if (field.doesIndexing()) {
//if (!field.getIndexTo().isEmpty() && !field.getIndexTo().contains(field.getName())) continue;
if (field.getMatching().getAlgorithm().equals(Matching.Algorithm.PREFIX)) {
- failField(search, field);
+ failField(schema, field);
}
for (Map.Entry<String, Index> e : field.getIndices().entrySet()) {
if (e.getValue().isPrefix()) {
- failField(search, field);
+ failField(schema, field);
}
}
}
@@ -47,8 +47,8 @@ public class NoPrefixForIndexes extends Validator {
}
}
- private void failField(Search search, ImmutableSDField field) {
- throw new IllegalArgumentException("For search '" + search.getName() + "', field '" + field.getName() +
+ private void failField(Schema schema, ImmutableSDField field) {
+ throw new IllegalArgumentException("For search '" + schema.getName() + "', field '" + field.getName() +
"': match/index:prefix is not supported for indexes.");
}
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeMessageBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeMessageBuilder.java
index ba776bb13a1..ce8347b66c1 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeMessageBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeMessageBuilder.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.application.validation.change.search;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.NormalizeLevel;
@@ -18,16 +18,16 @@ import com.yahoo.vespa.documentmodel.SummaryTransform;
*/
public class IndexingScriptChangeMessageBuilder {
- private final Search currentSearch;
+ private final Schema currentSchema;
private final ImmutableSDField currentField;
- private final Search nextSearch;
+ private final Schema nextSchema;
private final ImmutableSDField nextField;
- public IndexingScriptChangeMessageBuilder(Search currentSearch, ImmutableSDField currentField,
- Search nextSearch, ImmutableSDField nextField) {
- this.currentSearch = currentSearch;
+ public IndexingScriptChangeMessageBuilder(Schema currentSchema, ImmutableSDField currentField,
+ Schema nextSchema, ImmutableSDField nextField) {
+ this.currentSchema = currentSchema;
this.currentField = currentField;
- this.nextSearch = nextSearch;
+ this.nextSchema = nextSchema;
this.nextField = nextField;
}
@@ -55,8 +55,8 @@ public class IndexingScriptChangeMessageBuilder {
}
private void checkStemming(ChangeMessageBuilder builder) {
- Stemming currentStemming = currentField.getStemming(currentSearch);
- Stemming nextStemming = nextField.getStemming(nextSearch);
+ Stemming currentStemming = currentField.getStemming(currentSchema);
+ Stemming nextStemming = nextField.getStemming(nextSchema);
if (!currentStemming.equals(nextStemming)) {
builder.addChange("stemming", currentStemming.getName(), nextStemming.getName());
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeValidator.java
index 699a63cdd9f..e64a3d44bba 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeValidator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/IndexingScriptChangeValidator.java
@@ -3,7 +3,7 @@ package com.yahoo.vespa.model.application.validation.change.search;
import com.yahoo.config.application.api.ValidationId;
import com.yahoo.config.provision.ClusterSpec;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.vespa.indexinglanguage.ExpressionConverter;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
@@ -25,20 +25,20 @@ import java.util.Optional;
public class IndexingScriptChangeValidator {
private final ClusterSpec.Id id;
- private final Search currentSearch;
- private final Search nextSearch;
+ private final Schema currentSchema;
+ private final Schema nextSchema;
- public IndexingScriptChangeValidator(ClusterSpec.Id id, Search currentSearch, Search nextSearch) {
+ public IndexingScriptChangeValidator(ClusterSpec.Id id, Schema currentSchema, Schema nextSchema) {
this.id = id;
- this.currentSearch = currentSearch;
- this.nextSearch = nextSearch;
+ this.currentSchema = currentSchema;
+ this.nextSchema = nextSchema;
}
public List<VespaConfigChangeAction> validate() {
List<VespaConfigChangeAction> result = new ArrayList<>();
- for (ImmutableSDField nextField : new LinkedHashSet<>(nextSearch.allConcreteFields())) {
+ for (ImmutableSDField nextField : new LinkedHashSet<>(nextSchema.allConcreteFields())) {
String fieldName = nextField.getName();
- ImmutableSDField currentField = currentSearch.getConcreteField(fieldName);
+ ImmutableSDField currentField = currentSchema.getConcreteField(fieldName);
if (currentField != null) {
validateScripts(currentField, nextField).ifPresent(r -> result.add(r));
}
@@ -57,7 +57,7 @@ public class IndexingScriptChangeValidator {
ScriptExpression nextScript = nextField.getIndexingScript();
if ( ! equalScripts(currentScript, nextScript)) {
ChangeMessageBuilder messageBuilder = new ChangeMessageBuilder(nextField.getName());
- new IndexingScriptChangeMessageBuilder(currentSearch, currentField, nextSearch, nextField).populate(messageBuilder);
+ new IndexingScriptChangeMessageBuilder(currentSchema, currentField, nextSchema, nextField).populate(messageBuilder);
messageBuilder.addChange("indexing script", currentScript.toString(), nextScript.toString());
return Optional.of(VespaReindexAction.of(id, ValidationId.indexingChange, messageBuilder.build()));
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java
index 28682e92f37..a68993be543 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java
@@ -5,7 +5,8 @@ import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig;
import com.yahoo.search.config.IndexInfoConfig;
-import com.yahoo.searchdefinition.DocumentOnlySearch;
+import com.yahoo.searchdefinition.DocumentOnlySchema;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.vespa.config.search.AttributesConfig;
import com.yahoo.vespa.config.search.DispatchConfig;
@@ -195,10 +196,10 @@ public class IndexedSearchCluster extends SearchCluster
@Override
protected void deriveAllSchemas(List<SchemaSpec> localSearches, DeployState deployState) {
for (SchemaSpec spec : localSearches) {
- com.yahoo.searchdefinition.Search search = spec.getSearchDefinition().getSearch();
- if ( ! (search instanceof DocumentOnlySearch)) {
- DocumentDatabase db = new DocumentDatabase(this, search.getName(),
- new DerivedConfiguration(search,
+ Schema schema = spec.getSearchDefinition().getSearch();
+ if ( ! (schema instanceof DocumentOnlySchema)) {
+ DocumentDatabase db = new DocumentDatabase(this, schema.getName(),
+ new DerivedConfiguration(schema,
deployState.getDeployLogger(),
deployState.getProperties(),
deployState.rankProfileRegistry(),
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/NamedSchema.java b/config-model/src/main/java/com/yahoo/vespa/model/search/NamedSchema.java
index 06f8198151f..334493b4a92 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/search/NamedSchema.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/search/NamedSchema.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.search;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import java.util.Collection;
@@ -11,22 +11,22 @@ import java.util.Collection;
// TODO: This class is quite pointless
public class NamedSchema {
- private final Search search;
+ private final Schema schema;
private final String name;
public static final String fileNameSuffix = ".sd";
- public Search getSearch() {
- return search;
+ public Schema getSearch() {
+ return schema;
}
public String getName() {
return name;
}
- public NamedSchema(String name, Search search) {
+ public NamedSchema(String name, Schema schema) {
this.name = name;
- this.search = search;
+ this.schema = schema;
}
//Find search definition from a collection with the name specified
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java
index 8dc711f50f6..a9f9102c11a 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java
@@ -4,6 +4,7 @@ package com.yahoo.vespa.model.search;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.vespa.config.search.AttributesConfig;
@@ -89,11 +90,11 @@ public class StreamingSearchCluster extends SearchCluster implements
throw new IllegalStateException("Logical indexes are not supported: Got " + local.size() + " search definitions, expected 1");
}
}
- private void deriveSingleSearchDefinition(com.yahoo.searchdefinition.Search localSearch, DeployState deployState) {
- if (!localSearch.getName().equals(docTypeName)) {
- throw new IllegalStateException("Mismatch between document type name (" + docTypeName + ") and name of search definition (" + localSearch.getName() + ")");
+ private void deriveSingleSearchDefinition(Schema localSchema, DeployState deployState) {
+ if (!localSchema.getName().equals(docTypeName)) {
+ throw new IllegalStateException("Mismatch between document type name (" + docTypeName + ") and name of search definition (" + localSchema.getName() + ")");
}
- this.sdConfig = new DerivedConfiguration(localSearch, deployState.getDeployLogger(),
+ this.sdConfig = new DerivedConfiguration(localSchema, deployState.getDeployLogger(),
deployState.getProperties(),
deployState.rankProfileRegistry(),
deployState.getQueryProfiles().getRegistry(),
diff --git a/config-model/src/main/javacc/SDParser.jj b/config-model/src/main/javacc/SDParser.jj
index f2b94991145..bfab2138b92 100644
--- a/config-model/src/main/javacc/SDParser.jj
+++ b/config-model/src/main/javacc/SDParser.jj
@@ -41,8 +41,8 @@ import com.yahoo.searchdefinition.DefaultRankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.RankProfile.MatchPhaseSettings;
import com.yahoo.searchdefinition.RankProfile.DiversitySettings;
-import com.yahoo.searchdefinition.Search;
-import com.yahoo.searchdefinition.DocumentOnlySearch;
+import com.yahoo.searchdefinition.Schema;
+import com.yahoo.searchdefinition.DocumentOnlySchema;
import com.yahoo.searchdefinition.UnrankedRankProfile;
import com.yahoo.searchdefinition.fieldoperation.*;
import com.yahoo.searchlib.rankingexpression.FeatureList;
@@ -70,11 +70,11 @@ import java.util.LinkedHashMap;
import java.util.logging.Level;
/**
- * A search definition parser
+ * The schema parser
*
* @author bratseth
*/
- @SuppressWarnings("deprecation")
+@SuppressWarnings("deprecation")
public class SDParser {
private DocumentTypeManager docMan = null;
@@ -88,7 +88,7 @@ public class SDParser {
/**
* Creates a parser
*
- * @param documentsOnly true to only parse the document aspect of a search definition (e.g skip rank profiles)
+ * @param documentsOnly true to only parse the document aspect of a schema (e.g skip rank profiles)
*/
public SDParser(SimpleCharStream stream,
FileRegistry fileRegistry,
@@ -413,20 +413,20 @@ SPECIAL_TOKEN :
// --------------------------------------------------------------------------------
/**
- * The rule consumes any search definition and returns the corresponding object. This is the only production that should
+ * The rule consumes any schema and returns the corresponding object. This is the only production that should
* ever consume leading newlines.
*
- * @param dir The directory containing the file being parsed.
- * @return The search definition object.
+ * @param dir the directory containing the file being parsed
+ * @return the schema object
*/
-Search search(DocumentTypeManager docMan, String dir) :
+Schema schema(DocumentTypeManager docMan, String dir) :
{
this.docMan = docMan;
- Search search;
+ Schema schema;
}
{
- (<NL>)* (search = rootSchema(dir) | search = rootDocument(dir))
- { return search; }
+ (<NL>)* (schema = rootSchema(dir) | schema = rootDocument(dir))
+ { return schema; }
}
/**
@@ -436,44 +436,44 @@ Search search(DocumentTypeManager docMan, String dir) :
* @param dir the directory containing the file being parsed.
* @return the schema definition object.
*/
-Search rootSchema(String dir) :
+Schema rootSchema(String dir) :
{
String name;
String inherited = null;
- Search search;
+ Schema schema;
}
{
( ( <SCHEMA> | <SEARCH> ) name = identifier() (<INHERITS> inherited = identifier() )? {
- search = new Search(name, Optional.ofNullable(inherited), application, fileRegistry, deployLogger, properties);
- rankProfileRegistry.add(new DefaultRankProfile(search, rankProfileRegistry, search.rankingConstants()));
- rankProfileRegistry.add(new UnrankedRankProfile(search, rankProfileRegistry, search.rankingConstants()));}
- lbrace() (rootSchemaItem(search) (<NL>)*)* <RBRACE> (<NL>)* <EOF>)
- { return search; }
+ schema = new Schema(name, Optional.ofNullable(inherited), application, fileRegistry, deployLogger, properties);
+ rankProfileRegistry.add(new DefaultRankProfile(schema, rankProfileRegistry, schema.rankingConstants()));
+ rankProfileRegistry.add(new UnrankedRankProfile(schema, rankProfileRegistry, schema.rankingConstants()));}
+ lbrace() (rootSchemaItem(schema) (<NL>)*)* <RBRACE> (<NL>)* <EOF>)
+ { return schema; }
}
/**
* Consumes an element of a schema block. This and rootSearch() are the only rules that should ever consume
* trailing newline tokens.
*
- * @param search The search object to modify.
+ * @param schema the schema object to modify.
* @return Null.
*/
-Object rootSchemaItem(Search search) : { }
-{
- ( document(search)
- | rawAsBase64(search)
- | documentSummary(search)
- | field(null, search)
- | index(search, null)
- | rankingConstant(search)
- | rankProfile(search)
- | searchStemming(search)
- | useDocument(search)
- | structOutside(search)
- | annotationOutside(search)
- | fieldSet(search)
- | importField(search)
- | onnxModel(search) )
+Object rootSchemaItem(Schema schema) : { }
+{
+ ( document(schema)
+ | rawAsBase64(schema)
+ | documentSummary(schema)
+ | field(null, schema)
+ | index(schema, null)
+ | rankingConstant(schema)
+ | rankProfile(schema)
+ | searchStemming(schema)
+ | useDocument(schema)
+ | structOutside(schema)
+ | annotationOutside(schema)
+ | fieldSet(schema)
+ | importField(schema)
+ | onnxModel(schema) )
{ return null; }
}
@@ -483,99 +483,99 @@ Object rootSchemaItem(Search search) : { }
* @param dir the directory containing the file being parsed.
* @return the schema definition object.
*/
-Search rootDocument(String dir) :
+Schema rootDocument(String dir) :
{
- Search search = new DocumentOnlySearch(application, fileRegistry, deployLogger, properties);
+ Schema schema = new DocumentOnlySchema(application, fileRegistry, deployLogger, properties);
}
{
- ( (rootDocumentItem(search) (<NL>)*)*<EOF> )
- { return search; }
+ ( (rootDocumentItem(schema) (<NL>)*)*<EOF> )
+ { return schema; }
}
/**
* Consumes a single item from within a root document node.
*
- * @param search The search object to modify.
+ * @param schema the schema object to modify.
* @return Null.
*/
-Object rootDocumentItem(Search search) : { }
+Object rootDocumentItem(Schema schema) : { }
{
- ( namedDocument(search) )
+ ( namedDocument(schema) )
{ return null; }
}
/**
* Consumes a use-document statement. This currently does nothing.
*
- * @param search the search object to modify.
+ * @param schema the schema object to modify.
*/
-void useDocument(Search search) : { }
+void useDocument(Schema schema) : { }
{
<USEDOCUMENT> <COLON> identifier()
}
/**
- * Consumes a document element. The name defaults to the search's name, but may be set.
+ * Consumes a document element. The name defaults to the schema's name, but may be set.
*
- * @param search the search object to add content to.
+ * @param schema the schema object to add content to.
*/
-void document(Search search) :
+void document(Schema schema) :
{
- String name=search.getName();
+ String name = schema.getName();
SDDocumentType document;
}
{
- ( <DOCUMENT> (name = identifier())? (<NL>)* { document = new SDDocumentType(name, search); }
+ ( <DOCUMENT> (name = identifier())? (<NL>)* { document = new SDDocumentType(name, schema); }
[ inheritsDocument(document) (<NL>)* ]
- <LBRACE> (<NL>)* (documentBody(document, search) (<NL>)*)* <RBRACE> )
+ <LBRACE> (<NL>)* (documentBody(document, schema) (<NL>)*)* <RBRACE> )
{
- search.addDocument(document);
+ schema.addDocument(document);
}
}
/**
* Consumes a document element, explicitly named
*
- * @param search the search object to add content to.
+ * @param schema the schema object to add content to
*/
-void namedDocument(Search search) :
+void namedDocument(Schema schema) :
{
String name;
SDDocumentType document;
}
{
- ( <DOCUMENT> name = identifier() (<NL>)* { document = new SDDocumentType(name, search); }
+ ( <DOCUMENT> name = identifier() (<NL>)* { document = new SDDocumentType(name, schema); }
[ inheritsDocument(document) (<NL>)* ]
- <LBRACE> (<NL>)* (documentBody(document, search) (<NL>)*)* <RBRACE> )
+ <LBRACE> (<NL>)* (documentBody(document, schema) (<NL>)*)* <RBRACE> )
{
- search.addDocument(document);
+ schema.addDocument(document);
}
}
/**
* Consumes a document body block
*
- * @param document The document type to modify.
- * @param search The search object to add content to.
+ * @param document the document type to modify.
+ * @param schema the schema object to add content to
* @return Null.
*/
-Object documentBody(SDDocumentType document, Search search) :
+Object documentBody(SDDocumentType document, Schema schema) :
{
}
{
- ( annotation(search, document)
+ ( annotation(schema, document)
| compression(document, null)
| headercfg(document)
| bodycfg(document)
- | structInside(document, search)
- | field(document, search) )
+ | structInside(document, schema)
+ | field(document, schema) )
{ return null; }
}
-void rawAsBase64(Search search) :
+void rawAsBase64(Schema schema) :
{}
{
- <RAW_AS_BASE64_IN_SUMMARY> { search.enableRawAsBase64(); }
+ <RAW_AS_BASE64_IN_SUMMARY> { schema.enableRawAsBase64(); }
}
/**
@@ -654,10 +654,10 @@ void inheritsDocument(SDDocumentType document) :
/**
* Consumes a field block from within a document element.
*
- * @param document The document type to modify.
- * @param search The search object to add content to.
+ * @param document the document type to modify
+ * @param schema the schema object to add content to
*/
-void field(SDDocumentType document, Search search) :
+void field(SDDocumentType document, Schema schema) :
{
String name;
SDField field;
@@ -666,22 +666,22 @@ void field(SDDocumentType document, Search search) :
{
<FIELD> name = identifier() <TYPE> type = dataType()
{
- if (name != null && com.yahoo.searchdefinition.Search.isReservedName(name.toLowerCase())) {
+ if (name != null && Schema.isReservedName(name.toLowerCase())) {
throw new IllegalArgumentException("Reserved name '" + name + "' can not be used as a field name.");
}
field = new TemporarySDField(name, type, document);
}
- lbrace() (fieldBody(field, search, document) (<NL>)*)* <RBRACE>
+ lbrace() (fieldBody(field, schema, document) (<NL>)*)* <RBRACE>
{
if (document != null) {
document.addField(field);
} else {
- search.addExtraField(field);
+ schema.addExtraField(field);
}
}
}
-void fieldSet(Search search) :
+void fieldSet(Schema schema) :
{
String setName;
String field;
@@ -693,8 +693,8 @@ void fieldSet(Search search) :
{
<FIELDSET> setName = identifier() lbrace()
((
- ( <FIELDS><COLON> field = identifier() { search.fieldSets().addUserFieldSetItem(setName, field); }
- ( <COMMA> field = identifier() { search.fieldSets().addUserFieldSetItem(setName, field); } )* )
+ ( <FIELDS><COLON> field = identifier() { schema.fieldSets().addUserFieldSetItem(setName, field); }
+ ( <COMMA> field = identifier() { schema.fieldSets().addUserFieldSetItem(setName, field); } )* )
|
( <QUERYCOMMAND> <COLON> (queryCommand = identifierWithDash() | queryCommand = quotedString())) { queryCommands.add(queryCommand); }
|
@@ -705,21 +705,21 @@ void fieldSet(Search search) :
// Apply settings after parsing since all user field items must be set first
for (Object command : queryCommands)
- search.fieldSets().userFieldSets().get(setName).queryCommands().add((String)command);
+ schema.fieldSets().userFieldSets().get(setName).queryCommands().add((String)command);
for (Object setting : matchSettings) {
((SDField)setting).applyOperations();
- search.fieldSets().userFieldSets().get(setName).setMatching(((SDField)setting).getMatching());
+ schema.fieldSets().userFieldSets().get(setName).setMatching(((SDField)setting).getMatching());
}
}
}
/**
- * This rule consumes a annotation block from within either a document element or a search element.
+ * This rule consumes a annotation block from within either a document element or a schema element.
- * @param search the search object to add content to.
+ * @param schema the schema object to add content to
*/
-void annotationOutside(Search search) :
+void annotationOutside(Schema schema) :
{
String name;
SDAnnotationType type;
@@ -730,19 +730,19 @@ void annotationOutside(Search search) :
type = new SDAnnotationType(name.trim());
}
[ inheritsAnnotation(type) (<NL>)* ]
- lbrace() (type = annotationBody(search, type)) <RBRACE>
+ lbrace() (type = annotationBody(schema, type)) <RBRACE>
{
- if (search.getDocument()==null) throw new IllegalArgumentException("Can't add annotation '"+name+"' to a document type, define a document type first or declare the annotation inside of one.");
- search.addAnnotation(type);
+ if (schema.getDocument()==null) throw new IllegalArgumentException("Can't add annotation '"+name+"' to a document type, define a document type first or declare the annotation inside of one.");
+ schema.addAnnotation(type);
}
}
/**
* This rule consumes a annotation block from within either a document element.
*
- * @param document The document object to add content to.
+ * @param document the document object to add content to
*/
-void annotation(Search search, SDDocumentType document) :
+void annotation(Schema schema, SDDocumentType document) :
{
String name;
SDAnnotationType type;
@@ -753,7 +753,7 @@ void annotation(Search search, SDDocumentType document) :
type = new SDAnnotationType(name.trim());
}
[ inheritsAnnotation(type) (<NL>)* ]
- lbrace() (type = annotationBody(search, type)) <RBRACE>
+ lbrace() (type = annotationBody(schema, type)) <RBRACE>
{
document.addAnnotation(type);
}
@@ -763,13 +763,13 @@ void annotation(Search search, SDDocumentType document) :
/**
* This rule consumes a single element of an annotation body block.
*
- * @param search The search object to add content to.
- * @param type The type being built.
+ * @param schema the seaschemarch object to add content to
+ * @param type the type being built
* @return a modified or new AnnotationType instance
*/
-SDAnnotationType annotationBody(Search search, SDAnnotationType type) :
+SDAnnotationType annotationBody(Schema schema, SDAnnotationType type) :
{
- SDDocumentType struct = new SDDocumentType("annotation." + type.getName(), search);
+ SDDocumentType struct = new SDDocumentType("annotation." + type.getName(), schema);
}
{
(structFieldDefinition(struct) (<NL>)*)*
@@ -794,15 +794,15 @@ void inheritsAnnotation(SDAnnotationType annotation) :
/**
* This rule consumes a struct block from within a document element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to
*/
-void structInside(SDDocumentType document, Search search) :
+void structInside(SDDocumentType document, Schema schema) :
{
SDDocumentType struct;
}
{
(
- struct = structDefinition(search, document)
+ struct = structDefinition(schema, document)
)
{
document.addType(struct);
@@ -812,27 +812,27 @@ void structInside(SDDocumentType document, Search search) :
/**
* This rule consumes a struct block from within a document element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to
*/
-void structOutside(Search search) :
+void structOutside(Schema schema) :
{
SDDocumentType struct;
}
{
(
- struct = structDefinition(search, search.getDocument())
+ struct = structDefinition(schema, schema.getDocument())
)
{
- search.addType(struct);
+ schema.addType(struct);
}
}
/**
* This rule consumes a struct block from within a document element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to
*/
-SDDocumentType structDefinition(Search search, SDDocumentType repo) :
+SDDocumentType structDefinition(Schema schema, SDDocumentType repo) :
{
String name;
SDDocumentType struct;
@@ -840,7 +840,7 @@ SDDocumentType structDefinition(Search search, SDDocumentType repo) :
{
<STRUCT> name = identifier()
{
- struct = new SDDocumentType(name, search);
+ struct = new SDDocumentType(name, schema);
}
lbrace() (structFieldDefinition(struct) (<NL>)*)* <RBRACE>
{
@@ -863,7 +863,7 @@ SDDocumentType structDefinition(Search search, SDDocumentType repo) :
/**
* This rule consumes a data type block from within a field element.
*
- * @return The consumed data type.
+ * @return the consumed data type
*/
DataType dataType() :
{
@@ -960,7 +960,7 @@ void structFieldDefinition(SDDocumentType struct) :
}
{
<FIELD> name = identifier() <TYPE> type = dataType() {
- if (name != null && com.yahoo.searchdefinition.Search.isReservedName(name.toLowerCase())) {
+ if (name != null && Schema.isReservedName(name.toLowerCase())) {
throw new IllegalArgumentException("Reserved name '" + name + "' can not be used as a field name.");
}
field = new TemporarySDField(name, type, struct);
@@ -974,36 +974,36 @@ void structFieldDefinition(SDDocumentType struct) :
* This rule consumes a struct subfield from a document field body. This is not to be confused with a document
* struct's fields, but rather this is a subfield of a document field of type struct.
*
- * @param field The field to modify.
- * @param search The search object to add content to.
- * @param document The document type to modify.
+ * @param field the field to modify
+ * @param schema the schema object to add content to
+ * @param document the document type to modify
*/
-void structField(FieldOperationContainer field, Search search,SDDocumentType document) :
+void structField(FieldOperationContainer field, Schema schema, SDDocumentType document) :
{
String name;
SDField structField;
}
{
<STRUCTFIELD> name = identifier() {
- if (name != null && com.yahoo.searchdefinition.Search.isReservedName(name.toLowerCase())) {
+ if (name != null && Schema.isReservedName(name.toLowerCase())) {
throw new IllegalArgumentException("Reserved name '" + name + "' can not be used as a field name.");
}
FieldOperationContainer structFieldOp = new StructFieldOperation(name);
field.addOperation((StructFieldOperation) structFieldOp);
}
- lbrace() (structFieldBody(structFieldOp, search, document) (<NL>)*)* <RBRACE>
+ lbrace() (structFieldBody(structFieldOp, schema, document) (<NL>)*)* <RBRACE>
}
/**
* This rule consumes a single element of a field body block.
*
- * @param field The field being built.
- * @param search The search object to add content to.
- * @param document The owning document, or null if this is a search field.
- * @return Null.
+ * @param field the field being built
+ * @param schema the schema object to add content to
+ * @param document the owning document, or null if this is a search field
+ * @return Null
*/
-String fieldBody(SDField field, Search search, SDDocumentType document) : { }
+String fieldBody(SDField field, Schema schema, SDDocumentType document) : { }
{
( alias(field) |
attribute(field) |
@@ -1014,7 +1014,7 @@ String fieldBody(SDField field, Search search, SDDocumentType document) : { }
header(field) |
id(field, document) |
summaryInField(field) |
- index(search, field) |
+ index(schema, field) |
indexing(field) |
indexingRewrite(field) |
match(field) |
@@ -1023,7 +1023,7 @@ String fieldBody(SDField field, Search search, SDDocumentType document) : { }
rank(field) |
rankType(field) |
sorting(field, field.getName()) |
- structField(field, search, document) |
+ structField(field, schema, document) |
summaryTo(field) |
weight(field) |
weightedset(field) )
@@ -1032,21 +1032,21 @@ String fieldBody(SDField field, Search search, SDDocumentType document) : { }
/**
* This rule consumes a single element of a struct subfield body block.
- * Only elements that are supported in streaming search and indexed search (with complex attributes) are allowed.
+ * Only elements that are supported in streaming schema and indexed schema (with complex attributes) are allowed.
*
- * @param field The field being built.
- * @param search The search object to add content to.
- * @param document The owning document, or null if this is a search field.
- * @return Null.
+ * @param field the field being built
+ * @param schema the schema object to add content to
+ * @param document the owning document, or null if this is a schema field
+ * @return Null
*/
-String structFieldBody(FieldOperationContainer field, Search search, SDDocumentType document) : { }
+String structFieldBody(FieldOperationContainer field, Schema schema, SDDocumentType document) : { }
{
( summaryInField(field) |
indexing(field) |
attribute(field) |
match(field) |
queryCommand(field) |
- structField(field, search, document) |
+ structField(field, schema, document) |
summaryTo(field) )
{ return null; }
}
@@ -1497,17 +1497,17 @@ void fieldStemming(FieldOperationContainer field) :
}
/**
- * This rule consumes a stemming statement for a search element.
+ * This rule consumes a stemming statement for a schema element.
*
- * @param search The search to modify.
+ * @param schema the schema to modify
*/
-void searchStemming(Search search) :
+void searchStemming(Schema schema) :
{
String setting;
}
{
<STEMMING> <COLON> setting = identifierWithDash()
- { search.setStemming(Stemming.get(setting)); }
+ { schema.setStemming(Stemming.get(setting)); }
}
/**
@@ -1767,20 +1767,20 @@ void indexingRewrite(FieldOperationContainer field) : { }
}
/**
- * Consumes a document-summary block from within a search block.
+ * Consumes a document-summary block from within a schema block.
*
- * @param search The search object to add content to.
- * @return Null.
+ * @param schema the schema object to add content to
+ * @return Null
*/
-Object documentSummary(Search search) :
+Object documentSummary(Schema schema) :
{
String name;
DocumentSummary summary;
}
{
( <DOCUMENTSUMMARY>
- name = identifierWithDash() { search.addSummary(summary = new DocumentSummary(name, search)); }
- [inheritsDocumentSummary(summary, search)]
+ name = identifierWithDash() { schema.addSummary(summary = new DocumentSummary(name, schema)); }
+ [inheritsDocumentSummary(summary, schema)]
lbrace()
(
<FROMDISK> { summary.setFromDisk(true); } |
@@ -1796,10 +1796,10 @@ Object documentSummary(Search search) :
/**
* This rule consumes an inherits statement of a document summary.
*
- * @param documentSummary The document summary to modify.
- * @param search The search object documentSummary is being added to.
+ * @param documentSummary the document summary to modify
+ * @param schema the schema object documentSummary is being added to
*/
-void inheritsDocumentSummary(DocumentSummary documentSummary, Search search) :
+void inheritsDocumentSummary(DocumentSummary documentSummary, Schema schema) :
{
String name;
}
@@ -1825,11 +1825,11 @@ Object documentSummaryItem(DocumentSummary summary) : { }
/**
* Consumes an index block for a field element.
*
- * @param search The search object to add content to.
- * @param field The field to modify.
- * @return Null.
+ * @param schema the schema object to add content to
+ * @param field the field to modify
+ * @return Null
*/
-Object index(Search search, FieldOperationContainer field) :
+Object index(Schema schema, FieldOperationContainer field) :
{
IndexOperation op = new IndexOperation();
String indexName = (field != null) ? field.getName() : null;
@@ -1849,7 +1849,7 @@ Object index(Search search, FieldOperationContainer field) :
Index index = new Index(indexName);
op.applyToIndex(index);
- search.addIndex(index);
+ schema.addIndex(index);
} else {
field.addOperation(op);
}
@@ -1909,11 +1909,11 @@ void hnswIndexBody(HnswIndexParams.Builder params) :
}
/**
- * Consumes a onnx-model block of a search element.
+ * Consumes a onnx-model block of a schema element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to.
*/
-void onnxModel(Search search) :
+void onnxModel(Schema schema) :
{
String name;
OnnxModel onnxModel;
@@ -1926,7 +1926,7 @@ void onnxModel(Search search) :
lbrace() (onnxModelItem(onnxModel) (<NL>)*)+ <RBRACE> )
{
if (documentsOnly) return;
- search.onnxModels().add(onnxModel);
+ schema.onnxModels().add(onnxModel);
}
}
@@ -1963,11 +1963,11 @@ Object onnxModelItem(OnnxModel onnxModel) :
}
/**
- * Consumes a constant block of a search element.
+ * Consumes a constant block of a schema element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to
*/
-void rankingConstant(Search search) :
+void rankingConstant(Schema schema) :
{
String name;
RankingConstant constant;
@@ -1980,7 +1980,7 @@ void rankingConstant(Search search) :
lbrace() (rankingConstantItem(constant) (<NL>)*)+ <RBRACE> )
{
if (documentsOnly) return;
- search.rankingConstants().add(constant);
+ schema.rankingConstants().add(constant);
}
}
@@ -2023,11 +2023,11 @@ String uriPath() : { }
}
/**
- * Consumes a rank-profile block of a search element.
+ * Consumes a rank-profile block of a schema element.
*
- * @param search The search object to add content to.
+ * @param schema the schema object to add content to
*/
-void rankProfile(Search search) :
+void rankProfile(Schema schema) :
{
String name;
RankProfile profile;
@@ -2036,12 +2036,12 @@ void rankProfile(Search search) :
( ( <MODEL> | <RANKPROFILE> ) name = identifierWithDash()
{
if (documentsOnly) {
- profile = new DocumentsOnlyRankProfile(name, search, rankProfileRegistry, search.rankingConstants());
+ profile = new DocumentsOnlyRankProfile(name, schema, rankProfileRegistry, schema.rankingConstants());
}
else if ("default".equals(name)) {
- profile = rankProfileRegistry.get(search, "default");
+ profile = rankProfileRegistry.get(schema, "default");
} else {
- profile = new RankProfile(name, search, rankProfileRegistry, search.rankingConstants());
+ profile = new RankProfile(name, schema, rankProfileRegistry, schema.rankingConstants());
}
}
[inheritsRankProfile(profile)]
@@ -2371,7 +2371,7 @@ void minHitsPerThread(RankProfile profile) :
/**
* This rule consumes a num-search-partitions statement for a rank profile.
*
- * @param profile The rank profile to modify.
+ * @param profile the rank profile to modify
*/
void numSearchPartitions(RankProfile profile) :
{
@@ -2384,7 +2384,7 @@ void numSearchPartitions(RankProfile profile) :
/**
* This rule consumes a num-threads-per-search statement for a rank profile.
*
- * @param profile The rank profile to modify.
+ * @param profile the rank profile to modify
*/
void termwiseLimit(RankProfile profile) :
{
@@ -2397,7 +2397,7 @@ void termwiseLimit(RankProfile profile) :
* This rule consumes a rank-properties block of a rank profile. There is a little trick within this rule to allow the
* final rank property to skip the terminating newline token.
*
- * @param profile The rank profile to modify.
+ * @param profile the rank profile to modify
*/
void rankProperties(RankProfile profile) : { }
{
@@ -2408,7 +2408,7 @@ void rankProperties(RankProfile profile) : { }
/**
* This rule consumes a single rank property pair for a rank profile.
*
- * @param profile The rank profile to modify.
+ * @param profile the rank profile to modify
*/
void rankProperty(RankProfile profile) :
{
@@ -2633,7 +2633,7 @@ TensorType tensorType(String errorMessage) :
}
}
-void importField(Search search) :
+void importField(Schema schema) :
{
String fieldRefSpec;
String aliasFieldName;
@@ -2649,9 +2649,9 @@ void importField(Search search) :
int indexOfDot = fieldRefSpec.indexOf('.');
String documentReferenceFieldName = fieldRefSpec.substring(0, indexOfDot);
String foreignFieldName = fieldRefSpec.substring(indexOfDot + 1);
- TemporaryImportedFields importedFields = search.temporaryImportedFields().get();
+ TemporaryImportedFields importedFields = schema.temporaryImportedFields().get();
if (importedFields.hasField(aliasFieldName)) {
- throw new IllegalArgumentException("For search '" + search.getName() + "', import field as '" + aliasFieldName + "': Field already imported");
+ throw new IllegalArgumentException("For schema '" + schema.getName() + "', import field as '" + aliasFieldName + "': Field already imported");
}
importedFields.add(new TemporaryImportedField(aliasFieldName, documentReferenceFieldName, foreignFieldName));
}
diff --git a/config-model/src/test/java/com/yahoo/config/model/ApplicationDeployTest.java b/config-model/src/test/java/com/yahoo/config/model/ApplicationDeployTest.java
index adb6e423a39..0ccbec529ed 100644
--- a/config-model/src/test/java/com/yahoo/config/model/ApplicationDeployTest.java
+++ b/config-model/src/test/java/com/yahoo/config/model/ApplicationDeployTest.java
@@ -13,8 +13,8 @@ import com.yahoo.config.provision.ApplicationId;
import com.yahoo.document.DataType;
import com.yahoo.io.IOUtils;
import com.yahoo.path.Path;
-import com.yahoo.searchdefinition.DocumentOnlySearch;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.DocumentOnlySchema;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.config.ConfigDefinition;
import com.yahoo.vespa.config.ConfigDefinitionKey;
import com.yahoo.vespa.model.VespaModel;
@@ -58,7 +58,7 @@ public class ApplicationDeployTest {
List<NamedSchema> schemas = tester.getSchemas();
assertEquals(schemas.size(), 5);
for (NamedSchema searchDefinition : schemas) {
- Search s = searchDefinition.getSearch();
+ Schema s = searchDefinition.getSearch();
switch (s.getName()) {
case "music":
case "laptop":
@@ -66,7 +66,7 @@ public class ApplicationDeployTest {
case "sock":
break;
case "product":
- assertTrue(s instanceof DocumentOnlySearch);
+ assertTrue(s instanceof DocumentOnlySchema);
assertEquals(DataType.STRING, s.getDocument().getField("title").getDataType());
break;
default:
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
index 801459693de..bcd9d462528 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
@@ -22,12 +22,12 @@ public class ArraysTestCase extends SchemaTestCase {
@Test
public void testArrayImporting() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/arrays.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/arrays.sd");
- SDField tags = (SDField)search.getDocument().getField("tags");
+ SDField tags = (SDField) schema.getDocument().getField("tags");
assertEquals(DataType.STRING, ((CollectionDataType)tags.getDataType()).getNestedType());
- SDField ratings = (SDField)search.getDocument().getField("ratings");
+ SDField ratings = (SDField) schema.getDocument().getField("ratings");
assertTrue(ratings.getDataType() instanceof ArrayDataType);
assertEquals(DataType.INT, ((ArrayDataType)ratings.getDataType()).getNestedType());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
index 45ec5176bc7..d824460a36a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
@@ -19,21 +19,21 @@ import static org.junit.Assert.assertTrue;
public class ArraysWeightedSetsTestCase extends SchemaTestCase {
@Test
public void testArrayWeightedSetsImporting() throws java.io.IOException, com.yahoo.searchdefinition.parser.ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/arraysweightedsets.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/arraysweightedsets.sd");
- SDField tags = (SDField) search.getDocument().getField("tags");
+ SDField tags = (SDField) schema.getDocument().getField("tags");
assertTrue(tags.getDataType() instanceof ArrayDataType);
assertEquals(DataType.STRING, ((CollectionDataType)tags.getDataType()).getNestedType());
- SDField ratings = (SDField) search.getDocument().getField("ratings");
+ SDField ratings = (SDField) schema.getDocument().getField("ratings");
assertTrue(ratings.getDataType() instanceof ArrayDataType);
assertEquals(DataType.INT, ((CollectionDataType)ratings.getDataType()).getNestedType());
- SDField flags = (SDField) search.getDocument().getField("flags");
+ SDField flags = (SDField) schema.getDocument().getField("flags");
assertTrue(flags.getDataType() instanceof WeightedSetDataType);
assertEquals(DataType.STRING, ((CollectionDataType)flags.getDataType()).getNestedType());
- SDField banners = (SDField) search.getDocument().getField("banners");
+ SDField banners = (SDField) schema.getDocument().getField("banners");
assertTrue(banners.getDataType() instanceof WeightedSetDataType);
assertEquals(DataType.INT, ((CollectionDataType)banners.getDataType()).getNestedType());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
index 869cc2678b2..0b5bb8fe486 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
@@ -32,9 +32,9 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
@Test
public void testAttributeSettings() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
- SDField f1=(SDField) search.getDocument().getField("f1");
+ SDField f1=(SDField) schema.getDocument().getField("f1");
assertEquals(1, f1.getAttributes().size());
Attribute a1 = f1.getAttributes().get(f1.getName());
assertThat(a1.getType(), is(Attribute.Type.LONG));
@@ -45,7 +45,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertFalse(a1.isRemoveIfZero());
assertFalse(a1.isCreateIfNonExistent());
- SDField f2=(SDField) search.getDocument().getField("f2");
+ SDField f2=(SDField) schema.getDocument().getField("f2");
assertEquals(1, f2.getAttributes().size());
Attribute a2 = f2.getAttributes().get(f2.getName());
assertThat(a2.getType(), is(Attribute.Type.LONG));
@@ -56,7 +56,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertFalse(a2.isRemoveIfZero());
assertFalse(a2.isCreateIfNonExistent());
assertThat(f2.getAliasToName().get("f2alias"), is("f2"));
- SDField f3=(SDField) search.getDocument().getField("f3");
+ SDField f3=(SDField) schema.getDocument().getField("f3");
assertEquals(1, f3.getAttributes().size());
assertThat(f3.getAliasToName().get("f3alias"), is("f3"));
@@ -69,17 +69,17 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertFalse(a3.isRemoveIfZero());
assertFalse(a3.isCreateIfNonExistent());
- assertWeightedSet(search,"f4",true,true);
- assertWeightedSet(search,"f5",true,true);
- assertWeightedSet(search,"f6",true,true);
- assertWeightedSet(search,"f7",true,false);
- assertWeightedSet(search,"f8",true,false);
- assertWeightedSet(search,"f9",false,true);
- assertWeightedSet(search,"f10",false,true);
+ assertWeightedSet(schema, "f4", true, true);
+ assertWeightedSet(schema, "f5", true, true);
+ assertWeightedSet(schema, "f6", true, true);
+ assertWeightedSet(schema, "f7", true, false);
+ assertWeightedSet(schema, "f8", true, false);
+ assertWeightedSet(schema, "f9", false, true);
+ assertWeightedSet(schema, "f10", false, true);
}
- private void assertWeightedSet(Search search, String name, boolean createIfNonExistent, boolean removeIfZero) {
- SDField f4 = (SDField) search.getDocument().getField(name);
+ private void assertWeightedSet(Schema schema, String name, boolean createIfNonExistent, boolean removeIfZero) {
+ SDField f4 = (SDField) schema.getDocument().getField(name);
assertEquals(1, f4.getAttributes().size());
Attribute a4 = f4.getAttributes().get(f4.getName());
assertThat(a4.getType(), is(Attribute.Type.STRING));
@@ -93,14 +93,14 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
@Test
public void requireThatFastAccessCanBeSet() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
- SDField field = (SDField) search.getDocument().getField("fast_access");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
+ SDField field = (SDField) schema.getDocument().getField("fast_access");
assertEquals(1, field.getAttributes().size());
Attribute attr = field.getAttributes().get(field.getName());
assertTrue(attr.isFastAccess());
}
- private Search getSearch(String sd) throws ParseException {
+ private Schema getSearch(String sd) throws ParseException {
SearchBuilder builder = new SearchBuilder();
builder.importString(sd);
builder.build();
@@ -108,8 +108,8 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
}
private Attribute getAttributeF(String sd) throws ParseException {
- Search search = getSearch(sd);
- SDField field = (SDField) search.getDocument().getField("f");
+ Schema schema = getSearch(sd);
+ SDField field = (SDField) schema.getDocument().getField("f");
return field.getAttributes().get(field.getName());
}
@@ -183,7 +183,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertTrue(attr.isMutable());
}
- private Search getSearchWithMutables() throws ParseException {
+ private Schema getSearchWithMutables() throws ParseException {
return getSearch(
"search test {\n" +
" document test { \n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
index 050d5299c7d..faeb033a427 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
@@ -18,8 +18,8 @@ public class CommentTestCase extends SchemaTestCase {
@Test
public void testComments() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/comment.sd");
- SDField field = search.getConcreteField("a");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/comment.sd");
+ SDField field = schema.getConcreteField("a");
assertEquals("{ input a | tokenize normalize stem:\"BEST\" | summary a | index a; }",
field.getIndexingScript().toString());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
index 6c4eb4748c8..e6191772904 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
@@ -43,7 +43,7 @@ public class DiversityTestCase {
" }\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile.MatchPhaseSettings matchPhase = rankProfileRegistry.get(s, "parent").getMatchPhaseSettings();
RankProfile.DiversitySettings diversity = matchPhase.getDiversity();
assertEquals("b", diversity.getAttribute());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
index 4fae4d92cb0..f57c63b440f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
@@ -30,21 +30,21 @@ public class DocumentGraphValidatorTest {
@Test
public void simple_ref_dag_is_allowed() {
- Search advertiserSearch = createSearchWithName("advertiser");
- Search campaignSearch = createSearchWithName("campaign");
- Search adSearch = createSearchWithName("ad");
- createDocumentReference(adSearch, advertiserSearch, "advertiser_ref");
- createDocumentReference(adSearch, campaignSearch, "campaign_ref");
+ Schema advertiserSchema = createSearchWithName("advertiser");
+ Schema campaignSchema = createSearchWithName("campaign");
+ Schema adSchema = createSearchWithName("ad");
+ createDocumentReference(adSchema, advertiserSchema, "advertiser_ref");
+ createDocumentReference(adSchema, campaignSchema, "campaign_ref");
DocumentGraphValidator validator = new DocumentGraphValidator();
- validator.validateDocumentGraph(documentListOf(advertiserSearch, campaignSearch, adSearch));
+ validator.validateDocumentGraph(documentListOf(advertiserSchema, campaignSchema, adSchema));
}
@Test
public void simple_inheritance_dag_is_allowed() {
- Search grandfather = createSearchWithName("grandfather");
- Search father = createSearchWithName("father", grandfather);
- Search son = createSearchWithName("son", father);
+ Schema grandfather = createSearchWithName("grandfather");
+ Schema father = createSearchWithName("father", grandfather);
+ Schema son = createSearchWithName("son", father);
DocumentGraphValidator validator = new DocumentGraphValidator();
validator.validateDocumentGraph(documentListOf(son, father, grandfather));
@@ -52,16 +52,16 @@ public class DocumentGraphValidatorTest {
@Test
public void complex_dag_is_allowed() {
- Search grandfather = createSearchWithName("grandfather");
- Search father = createSearchWithName("father", grandfather);
- Search mother = createSearchWithName("mother", grandfather);
+ Schema grandfather = createSearchWithName("grandfather");
+ Schema father = createSearchWithName("father", grandfather);
+ Schema mother = createSearchWithName("mother", grandfather);
createDocumentReference(father, mother, "wife_ref");
- Search son = createSearchWithName("son", father, mother);
- Search daughter = createSearchWithName("daughter", father, mother);
+ Schema son = createSearchWithName("son", father, mother);
+ Schema daughter = createSearchWithName("daughter", father, mother);
createDocumentReference(daughter, son, "brother_ref");
- Search randomGuy1 = createSearchWithName("randomguy1");
- Search randomGuy2 = createSearchWithName("randomguy2");
+ Schema randomGuy1 = createSearchWithName("randomguy1");
+ Schema randomGuy2 = createSearchWithName("randomguy2");
createDocumentReference(randomGuy1, mother, "secret_ref");
DocumentGraphValidator validator = new DocumentGraphValidator();
@@ -70,54 +70,54 @@ public class DocumentGraphValidatorTest {
@Test
public void ref_cycle_is_forbidden() {
- Search search1 = createSearchWithName("doc1");
- Search search2 = createSearchWithName("doc2");
- Search search3 = createSearchWithName("doc3");
- createDocumentReference(search1, search2, "ref_2");
- createDocumentReference(search2, search3, "ref_3");
- createDocumentReference(search3, search1, "ref_1");
+ Schema schema1 = createSearchWithName("doc1");
+ Schema schema2 = createSearchWithName("doc2");
+ Schema schema3 = createSearchWithName("doc3");
+ createDocumentReference(schema1, schema2, "ref_2");
+ createDocumentReference(schema2, schema3, "ref_3");
+ createDocumentReference(schema3, schema1, "ref_1");
DocumentGraphValidator validator = new DocumentGraphValidator();
exceptionRule.expect(DocumentGraphValidator.DocumentGraphException.class);
exceptionRule.expectMessage("Document dependency cycle detected: doc1->doc2->doc3->doc1.");
- validator.validateDocumentGraph(documentListOf(search1, search2, search3));
+ validator.validateDocumentGraph(documentListOf(schema1, schema2, schema3));
}
@Test
public void inherit_cycle_is_forbidden() {
- Search search1 = createSearchWithName("doc1");
- Search search2 = createSearchWithName("doc2", search1);
- Search search3 = createSearchWithName("doc3", search2);
- search1.getDocument().inherit(search3.getDocument());
+ Schema schema1 = createSearchWithName("doc1");
+ Schema schema2 = createSearchWithName("doc2", schema1);
+ Schema schema3 = createSearchWithName("doc3", schema2);
+ schema1.getDocument().inherit(schema3.getDocument());
DocumentGraphValidator validator = new DocumentGraphValidator();
exceptionRule.expect(DocumentGraphValidator.DocumentGraphException.class);
exceptionRule.expectMessage("Document dependency cycle detected: doc1->doc3->doc2->doc1.");
- validator.validateDocumentGraph(documentListOf(search1, search2, search3));
+ validator.validateDocumentGraph(documentListOf(schema1, schema2, schema3));
}
@Test
public void combined_inherit_and_ref_cycle_is_forbidden() {
- Search search1 = createSearchWithName("doc1");
- Search search2 = createSearchWithName("doc2", search1);
- Search search3 = createSearchWithName("doc3", search2);
- createDocumentReference(search1, search3, "ref_1");
+ Schema schema1 = createSearchWithName("doc1");
+ Schema schema2 = createSearchWithName("doc2", schema1);
+ Schema schema3 = createSearchWithName("doc3", schema2);
+ createDocumentReference(schema1, schema3, "ref_1");
DocumentGraphValidator validator = new DocumentGraphValidator();
exceptionRule.expect(DocumentGraphValidator.DocumentGraphException.class);
exceptionRule.expectMessage("Document dependency cycle detected: doc1->doc3->doc2->doc1.");
- validator.validateDocumentGraph(documentListOf(search1, search2, search3));
+ validator.validateDocumentGraph(documentListOf(schema1, schema2, schema3));
}
@Test
public void self_reference_is_forbidden() {
- Search adSearch = createSearchWithName("ad");
- createDocumentReference(adSearch, adSearch, "ad_ref");
+ Schema adSchema = createSearchWithName("ad");
+ createDocumentReference(adSchema, adSchema, "ad_ref");
DocumentGraphValidator validator = new DocumentGraphValidator();
exceptionRule.expect(DocumentGraphValidator.DocumentGraphException.class);
exceptionRule.expectMessage("Document dependency cycle detected: ad->ad.");
- validator.validateDocumentGraph(documentListOf(adSearch));
+ validator.validateDocumentGraph(documentListOf(adSchema));
}
/**
@@ -127,8 +127,8 @@ public class DocumentGraphValidatorTest {
@Test
public void self_inheritance_forbidden() {
try {
- Search adSearch = createSearchWithName("ad");
- SDDocumentType document = adSearch.getDocument();
+ Schema adSchema = createSearchWithName("ad");
+ SDDocumentType document = adSchema.getDocument();
document.inherit(document);
fail("Expected exception");
}
@@ -137,22 +137,22 @@ public class DocumentGraphValidatorTest {
}
}
- private static List<SDDocumentType> documentListOf(Search... searches) {
- return Arrays.stream(searches).map(Search::getDocument).collect(toList());
+ private static List<SDDocumentType> documentListOf(Schema... schemas) {
+ return Arrays.stream(schemas).map(Schema::getDocument).collect(toList());
}
- private static Search createSearchWithName(String name, Search... parents) {
- Search campaignSearch = new Search(name);
+ private static Schema createSearchWithName(String name, Schema... parents) {
+ Schema campaignSchema = new Schema(name);
SDDocumentType document = new SDDocumentType(name);
- campaignSearch.addDocument(document);
+ campaignSchema.addDocument(document);
document.setDocumentReferences(new DocumentReferences(Collections.emptyMap()));
Arrays.stream(parents)
- .map(Search::getDocument)
+ .map(Schema::getDocument)
.forEach(document::inherit);
- return campaignSearch;
+ return campaignSchema;
}
- private static void createDocumentReference(Search from, Search to, String refFieldName) {
+ private static void createDocumentReference(Schema from, Schema to, String refFieldName) {
SDField refField = new TemporarySDField(refFieldName, ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create(to.getName())));
SDDocumentType fromDocument = from.getDocument();
fromDocument.addField(refField);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
index 28c96f39556..260b7a98fe7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
@@ -31,28 +31,28 @@ public class DocumentReferenceResolverTest {
@Test
public void reference_from_one_document_to_another_is_resolved() {
// Create bar document with no fields
- Search barSearch = new Search(BAR);
- SDDocumentType barDocument = new SDDocumentType(BAR, barSearch);
- barSearch.addDocument(barDocument);
+ Schema barSchema = new Schema(BAR);
+ SDDocumentType barDocument = new SDDocumentType(BAR, barSchema);
+ barSchema.addDocument(barDocument);
// Create foo document with document reference to bar and add another field
SDField fooRefToBarField = new SDField
("bar_ref", ReferenceDataType.createWithInferredId(barDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(fooRefToBarField);
SDField irrelevantField = new SDField("irrelevant_stuff", DataType.INT);
- Search fooSearch = new Search(FOO);
- SDDocumentType fooDocument = new SDDocumentType("foo", fooSearch);
+ Schema fooSchema = new Schema(FOO);
+ SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
fooDocument.addField(irrelevantField);
- fooSearch.addDocument(fooDocument);
+ fooSchema.addDocument(fooDocument);
- DocumentReferenceResolver resolver = new DocumentReferenceResolver(asList(fooSearch, barSearch));
+ DocumentReferenceResolver resolver = new DocumentReferenceResolver(asList(fooSchema, barSchema));
resolver.resolveReferences(fooDocument);
assertTrue(fooDocument.getDocumentReferences().isPresent());
Map<String, DocumentReference> fooReferenceMap = fooDocument.getDocumentReferences().get().referenceMap();
assertEquals(1, fooReferenceMap.size());
- assertSame(barSearch, fooReferenceMap.get("bar_ref").targetSearch());
+ assertSame(barSchema, fooReferenceMap.get("bar_ref").targetSearch());
assertSame(fooRefToBarField, fooReferenceMap.get("bar_ref").referenceField());
}
@@ -62,12 +62,12 @@ public class DocumentReferenceResolverTest {
SDField fooRefToBarField = new SDField(
"bar_ref", ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create("bar")));
AttributeUtils.addAttributeAspect(fooRefToBarField);
- Search fooSearch = new Search(FOO);
- SDDocumentType fooDocument = new SDDocumentType("foo", fooSearch);
+ Schema fooSchema = new Schema(FOO);
+ SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
- fooSearch.addDocument(fooDocument);
+ fooSchema.addDocument(fooDocument);
- DocumentReferenceResolver resolver = new DocumentReferenceResolver(singletonList(fooSearch));
+ DocumentReferenceResolver resolver = new DocumentReferenceResolver(singletonList(fooSchema));
exceptionRule.expect(IllegalArgumentException.class);
exceptionRule.expectMessage(
@@ -78,19 +78,19 @@ public class DocumentReferenceResolverTest {
@Test
public void throws_exception_if_reference_is_not_an_attribute() {
// Create bar document with no fields
- Search barSearch = new Search(BAR);
- SDDocumentType barDocument = new SDDocumentType("bar", barSearch);
- barSearch.addDocument(barDocument);
+ Schema barSchema = new Schema(BAR);
+ SDDocumentType barDocument = new SDDocumentType("bar", barSchema);
+ barSchema.addDocument(barDocument);
// Create foo document with document reference to bar
SDField fooRefToBarField = new SDField
("bar_ref", ReferenceDataType.createWithInferredId(barDocument.getDocumentType()));
- Search fooSearch = new Search(FOO);
- SDDocumentType fooDocument = new SDDocumentType("foo", fooSearch);
+ Schema fooSchema = new Schema(FOO);
+ SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
- fooSearch.addDocument(fooDocument);
+ fooSchema.addDocument(fooDocument);
- DocumentReferenceResolver resolver = new DocumentReferenceResolver(asList(fooSearch, barSearch));
+ DocumentReferenceResolver resolver = new DocumentReferenceResolver(asList(fooSchema, barSchema));
exceptionRule.expect(IllegalArgumentException.class);
exceptionRule.expectMessage(
"The field 'bar_ref' is an invalid document reference. The field must be an attribute.");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
index f12129155b1..5f507a1d5d6 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
@@ -19,35 +19,35 @@ public class ImportedFieldsEnumeratorTest {
@Test
public void imported_fields_are_enumerated_and_copied_from_correct_search_instance() {
String PARENT = "parent";
- Search parentSearch = new Search(PARENT);
- SDDocumentType parentDocument = new SDDocumentType(PARENT, parentSearch);
+ Schema parentSchema = new Schema(PARENT);
+ SDDocumentType parentDocument = new SDDocumentType(PARENT, parentSchema);
var parentField = new SDField("their_field", DataType.INT);
AttributeUtils.addAttributeAspect(parentField);
parentDocument.addField(parentField);
- parentSearch.addDocument(parentDocument);
+ parentSchema.addDocument(parentDocument);
String FOO = "foo";
- Search fooSearch = new Search(FOO);
+ Schema fooSchema = new Schema(FOO);
SDField fooRefToParent = new SDField(
"foo_ref", ReferenceDataType.createWithInferredId(parentDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(fooRefToParent);
- var fooImports = fooSearch.temporaryImportedFields().get();
+ var fooImports = fooSchema.temporaryImportedFields().get();
fooImports.add(new TemporaryImportedField("my_first_import", "foo_ref", "their_field"));
fooImports.add(new TemporaryImportedField("my_second_import", "foo_ref", "their_field"));
- SDDocumentType fooDocument = new SDDocumentType(FOO, fooSearch);
- fooSearch.addDocument(fooDocument);
+ SDDocumentType fooDocument = new SDDocumentType(FOO, fooSchema);
+ fooSchema.addDocument(fooDocument);
String BAR = "bar";
- Search barSearch = new Search(BAR);
+ Schema barSchema = new Schema(BAR);
SDField barRefToParent = new SDField(
"bar_ref", ReferenceDataType.createWithInferredId(parentDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(barRefToParent);
- var barImports = barSearch.temporaryImportedFields().get();
+ var barImports = barSchema.temporaryImportedFields().get();
barImports.add(new TemporaryImportedField("my_cool_import", "my_ref", "their_field"));
- SDDocumentType barDocument = new SDDocumentType(BAR, barSearch);
- barSearch.addDocument(barDocument);
+ SDDocumentType barDocument = new SDDocumentType(BAR, barSchema);
+ barSchema.addDocument(barDocument);
- var enumerator = new ImportedFieldsEnumerator(List.of(parentSearch, fooSearch, barSearch));
+ var enumerator = new ImportedFieldsEnumerator(List.of(parentSchema, fooSchema, barSchema));
enumerator.enumerateImportedFields(parentDocument);
assertImportedFieldsAre(parentDocument, List.of()); // No imported fields in parent
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
index 5dccd0afd76..f7687640202 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
@@ -21,10 +21,10 @@ public class IncorrectRankingExpressionFileRefTestCase extends SchemaTestCase {
public void testIncorrectRef() throws IOException, ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- Search search = SearchBuilder.buildFromFile("src/test/examples/incorrectrankingexpressionfileref.sd",
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/incorrectrankingexpressionfileref.sd",
registry,
new QueryProfileRegistry());
- new DerivedConfiguration(search, registry); // cause rank profile parsing
+ new DerivedConfiguration(schema, registry); // cause rank profile parsing
fail("parsing should have failed");
} catch (IllegalArgumentException e) {
String message = Exceptions.toMessageString(e);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
index 12b9a7a9937..7dec8df6e8c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
@@ -21,19 +21,19 @@ public class IndexSettingsTestCase extends SchemaTestCase {
@Test
public void testStemmingSettings() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/indexsettings.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/indexsettings.sd");
- SDField usingDefault=(SDField) search.getDocument().getField("usingdefault");
- assertEquals(Stemming.SHORTEST,usingDefault.getStemming(search));
+ SDField usingDefault=(SDField) schema.getDocument().getField("usingdefault");
+ assertEquals(Stemming.SHORTEST,usingDefault.getStemming(schema));
- SDField notStemmed=(SDField) search.getDocument().getField("notstemmed");
- assertEquals(Stemming.NONE,notStemmed.getStemming(search));
+ SDField notStemmed=(SDField) schema.getDocument().getField("notstemmed");
+ assertEquals(Stemming.NONE,notStemmed.getStemming(schema));
- SDField allStemmed=(SDField) search.getDocument().getField("allstemmed");
- assertEquals(Stemming.SHORTEST,allStemmed.getStemming(search));
+ SDField allStemmed=(SDField) schema.getDocument().getField("allstemmed");
+ assertEquals(Stemming.SHORTEST,allStemmed.getStemming(schema));
- SDField multiStemmed=(SDField) search.getDocument().getField("multiplestems");
- assertEquals(Stemming.MULTIPLE, multiStemmed.getStemming(search));
+ SDField multiStemmed=(SDField) schema.getDocument().getField("multiplestems");
+ assertEquals(Stemming.MULTIPLE, multiStemmed.getStemming(schema));
}
@Test
@@ -52,10 +52,10 @@ public class IndexSettingsTestCase extends SchemaTestCase {
" }",
"}"
));
- Search search = builder.getSearch();
- Index contentIndex = search.getIndex("content");
+ Schema schema = builder.getSearch();
+ Index contentIndex = schema.getIndex("content");
assertTrue(contentIndex.useInterleavedFeatures());
- Index extraIndex = search.getIndex("extra");
+ Index extraIndex = schema.getIndex("extra");
assertTrue(extraIndex.useInterleavedFeatures());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
index 4f24f8a50d5..c5e593c706f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
@@ -17,9 +17,9 @@ public class OutsideTestCase extends SchemaTestCase {
@Test
public void testOutsideIndex() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/outsidedoc.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/outsidedoc.sd");
- Index defaultIndex=search.getIndex("default");
+ Index defaultIndex= schema.getIndex("default");
assertTrue(defaultIndex.isPrefix());
assertEquals("default.default",defaultIndex.aliasIterator().next());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
index 21ab7a75f46..d2486395340 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
@@ -33,24 +33,24 @@ public class RankProfileRegistryTest {
@Test(expected = IllegalArgumentException.class)
public void testRankProfileDuplicateNameIsIllegal() {
- Search search = new Search("foo");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
- RankProfile barRankProfile = new RankProfile("bar", search, rankProfileRegistry, search.rankingConstants());
+ Schema schema = new Schema("foo");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
+ RankProfile barRankProfile = new RankProfile("bar", schema, rankProfileRegistry, schema.rankingConstants());
rankProfileRegistry.add(barRankProfile);
rankProfileRegistry.add(barRankProfile);
}
@Test
public void testRankProfileDuplicateNameLegalForOverridableRankProfiles() {
- Search search = new Search("foo");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema = new Schema("foo");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
for (String rankProfileName : RankProfileRegistry.overridableRankProfileNames) {
- assertNull(rankProfileRegistry.get(search, rankProfileName).getFunctions().get("foo"));
- RankProfile rankProfileWithAddedFunction = new RankProfile(rankProfileName, search, rankProfileRegistry, search.rankingConstants());
+ assertNull(rankProfileRegistry.get(schema, rankProfileName).getFunctions().get("foo"));
+ RankProfile rankProfileWithAddedFunction = new RankProfile(rankProfileName, schema, rankProfileRegistry, schema.rankingConstants());
rankProfileWithAddedFunction.addFunction(new ExpressionFunction("foo", RankingExpression.from("1+2")), true);
rankProfileRegistry.add(rankProfileWithAddedFunction);
- assertNotNull(rankProfileRegistry.get(search, rankProfileName).getFunctions().get("foo"));
+ assertNotNull(rankProfileRegistry.get(schema, rankProfileName).getFunctions().get("foo"));
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
index de43dc94c71..25581d2173c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
@@ -43,14 +43,14 @@ public class RankProfileTestCase extends SchemaTestCase {
@Test
public void testRankProfileInheritance() {
- Search search = new Search("test");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema = new Schema("test");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("test");
SDField a = document.addField("a", DataType.STRING);
a.setRankType(RankType.IDENTITY);
document.addField("b", DataType.STRING);
- search.addDocument(document);
- RankProfile child = new RankProfile("child", search, rankProfileRegistry, search.rankingConstants());
+ schema.addDocument(document);
+ RankProfile child = new RankProfile("child", schema, rankProfileRegistry, schema.rankingConstants());
child.setInherited("default");
rankProfileRegistry.add(child);
@@ -249,10 +249,10 @@ public class RankProfileTestCase extends SchemaTestCase {
SearchBuilder builder = new SearchBuilder(rankProfileRegistry);
builder.importString(sd);
builder.build();
- Search search = builder.getSearch();
- AttributeFields attributeFields = new AttributeFields(search);
- verifyRankProfile(rankProfileRegistry.get(search, "parent"), attributeFields, deployProperties, termwiseLimit);
- verifyRankProfile(rankProfileRegistry.get(search, "child"), attributeFields, deployProperties, termwiseLimit);
+ Schema schema = builder.getSearch();
+ AttributeFields attributeFields = new AttributeFields(schema);
+ verifyRankProfile(rankProfileRegistry.get(schema, "parent"), attributeFields, deployProperties, termwiseLimit);
+ verifyRankProfile(rankProfileRegistry.get(schema, "child"), attributeFields, deployProperties, termwiseLimit);
}
private void verifyRankProfile(RankProfile rankProfile, AttributeFields attributeFields, ModelContext.Properties deployProperties,
@@ -291,13 +291,13 @@ public class RankProfileTestCase extends SchemaTestCase {
" rank-profile p2 {}",
"}"));
builder.build();
- Search search = builder.getSearch();
+ Schema schema = builder.getSearch();
assertEquals(4, registry.all().size());
- assertAttributeTypeSettings(registry.get(search, "default"), search);
- assertAttributeTypeSettings(registry.get(search, "unranked"), search);
- assertAttributeTypeSettings(registry.get(search, "p1"), search);
- assertAttributeTypeSettings(registry.get(search, "p2"), search);
+ assertAttributeTypeSettings(registry.get(schema, "default"), schema);
+ assertAttributeTypeSettings(registry.get(schema, "unranked"), schema);
+ assertAttributeTypeSettings(registry.get(schema, "p1"), schema);
+ assertAttributeTypeSettings(registry.get(schema, "p2"), schema);
}
@Test
@@ -318,12 +318,12 @@ public class RankProfileTestCase extends SchemaTestCase {
}
}
- private static RawRankProfile createRawRankProfile(RankProfile profile, Search search) {
- return new RawRankProfile(profile, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(), new ImportedMlModels(), new AttributeFields(search), new TestProperties());
+ private static RawRankProfile createRawRankProfile(RankProfile profile, Schema schema) {
+ return new RawRankProfile(profile, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(), new ImportedMlModels(), new AttributeFields(schema), new TestProperties());
}
- private static void assertAttributeTypeSettings(RankProfile profile, Search search) {
- RawRankProfile rawProfile = createRawRankProfile(profile, search);
+ private static void assertAttributeTypeSettings(RankProfile profile, Schema schema) {
+ RawRankProfile rawProfile = createRawRankProfile(profile, schema);
assertEquals("tensor(x[10])", findProperty(rawProfile.configProperties(), "vespa.type.attribute.a").get());
assertEquals("tensor(y{})", findProperty(rawProfile.configProperties(), "vespa.type.attribute.b").get());
assertEquals("tensor(x[5])", findProperty(rawProfile.configProperties(), "vespa.type.attribute.c").get());
@@ -340,13 +340,13 @@ public class RankProfileTestCase extends SchemaTestCase {
" rank-profile p2 {}",
"}"));
builder.build(true);
- Search search = builder.getSearch();
+ Schema schema = builder.getSearch();
assertEquals(4, registry.all().size());
- assertQueryFeatureTypeSettings(registry.get(search, "default"), search);
- assertQueryFeatureTypeSettings(registry.get(search, "unranked"), search);
- assertQueryFeatureTypeSettings(registry.get(search, "p1"), search);
- assertQueryFeatureTypeSettings(registry.get(search, "p2"), search);
+ assertQueryFeatureTypeSettings(registry.get(schema, "default"), schema);
+ assertQueryFeatureTypeSettings(registry.get(schema, "unranked"), schema);
+ assertQueryFeatureTypeSettings(registry.get(schema, "p1"), schema);
+ assertQueryFeatureTypeSettings(registry.get(schema, "p2"), schema);
}
private static QueryProfileRegistry setupQueryProfileTypes() {
@@ -365,8 +365,8 @@ public class RankProfileTestCase extends SchemaTestCase {
return registry;
}
- private static void assertQueryFeatureTypeSettings(RankProfile profile, Search search) {
- RawRankProfile rawProfile =createRawRankProfile(profile, search);
+ private static void assertQueryFeatureTypeSettings(RankProfile profile, Schema schema) {
+ RawRankProfile rawProfile =createRawRankProfile(profile, schema);
assertEquals("tensor(x[10])", findProperty(rawProfile.configProperties(), "vespa.type.query.tensor1").get());
assertEquals("tensor(y{})", findProperty(rawProfile.configProperties(), "vespa.type.query.tensor2").get());
assertFalse(findProperty(rawProfile.configProperties(), "vespa.type.query.tensor3").isPresent());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
index 987e92c8c68..5bc4aa9c386 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
@@ -49,12 +49,12 @@ public class RankPropertiesTestCase extends SchemaTestCase {
" }",
"}"));
builder.build();
- Search search = builder.getSearch();
- AttributeFields attributeFields = new AttributeFields(search);
+ Schema schema = builder.getSearch();
+ AttributeFields attributeFields = new AttributeFields(schema);
{
// Check declared model
- RankProfile parent = rankProfileRegistry.get(search, "parent");
+ RankProfile parent = rankProfileRegistry.get(schema, "parent");
assertEquals("query(a) = 1500", parent.getRankProperties().get(0).toString());
// Check derived model
@@ -64,11 +64,11 @@ public class RankPropertiesTestCase extends SchemaTestCase {
{
// Check declared model
- RankProfile parent = rankProfileRegistry.get(search, "child");
+ RankProfile parent = rankProfileRegistry.get(schema, "child");
assertEquals("query(a) = 2000", parent.getRankProperties().get(0).toString());
// Check derived model
- RawRankProfile rawChild = new RawRankProfile(rankProfileRegistry.get(search, "child"),
+ RawRankProfile rawChild = new RawRankProfile(rankProfileRegistry.get(schema, "child"),
new LargeRankExpressions(new MockFileRegistry()),
new QueryProfileRegistry(),
new ImportedMlModels(),
@@ -126,8 +126,8 @@ public class RankPropertiesTestCase extends SchemaTestCase {
" }",
"}"));
builder.build();
- Search search = builder.getSearch();
- RankProfile a = rankProfileRegistry.get(search, "a");
+ Schema schema = builder.getSearch();
+ RankProfile a = rankProfileRegistry.get(schema, "a");
List<RankProfile.ExecuteOperation> operations = a.getExecuteOperations();
assertEquals(3, operations.size());
assertEquals(RankProfile.ExecuteOperation.Phase.onmatch, operations.get(0).phase);
@@ -140,7 +140,7 @@ public class RankPropertiesTestCase extends SchemaTestCase {
assertEquals("synthetic_attribute_c", operations.get(2).attribute);
assertEquals("--", operations.get(2).operation);
- AttributeFields attributeFields = new AttributeFields(search);
+ AttributeFields attributeFields = new AttributeFields(schema);
RawRankProfile raw = new RawRankProfile(a, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(), new ImportedMlModels(), attributeFields, new TestProperties());
assertEquals(7, raw.configProperties().size());
assertEquals("(vespa.execute.onmatch.attribute, synthetic_attribute_a)", raw.configProperties().get(0).toString());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
index eb71e73be60..8bfd9c898e4 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
@@ -43,9 +43,9 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
+ Schema schema = searchBuilder.getSearch();
- Iterator<RankingConstant> constantIterator = search.rankingConstants().asMap().values().iterator();
+ Iterator<RankingConstant> constantIterator = schema.rankingConstants().asMap().values().iterator();
RankingConstant constant = constantIterator.next();
assertEquals(TENSOR_NAME, constant.getName());
assertEquals(TENSOR_FILE, constant.getFileName());
@@ -101,8 +101,8 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankingConstant constant = search.rankingConstants().asMap().values().iterator().next();
+ Schema schema = searchBuilder.getSearch();
+ RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals("simplename", constant.getFileName());
}
@@ -120,8 +120,8 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankingConstant constant = search.rankingConstants().asMap().values().iterator().next();
+ Schema schema = searchBuilder.getSearch();
+ RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
assertEquals("http://somewhere.far.away/in/another-galaxy", constant.getUri());
}
@@ -140,8 +140,8 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankingConstant constant = search.rankingConstants().asMap().values().iterator().next();
+ Schema schema = searchBuilder.getSearch();
+ RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
assertEquals("https://somewhere.far.away:4443/in/another-galaxy", constant.getUri());
}
@@ -160,8 +160,8 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankingConstant constant = search.rankingConstants().asMap().values().iterator().next();
+ Schema schema = searchBuilder.getSearch();
+ RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
assertEquals("http://somewhere.far.away:4080/in/another-galaxy", constant.getUri());
}
@@ -180,8 +180,8 @@ public class RankingConstantTest {
"}"
));
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankingConstant constant = search.rankingConstants().asMap().values().iterator().next();
+ Schema schema = searchBuilder.getSearch();
+ RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
assertEquals("http:somewhere.far.away/in/another-galaxy", constant.getUri());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
index 9af026e164d..2904f9ed299 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
@@ -67,7 +67,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(queryProfileRegistry, new ImportedMlModels());
assertEquals("0.0", parent.getFirstPhaseRanking().getRoot().toString());
@@ -111,7 +111,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
try {
rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
fail("Should have caused an exception");
@@ -142,7 +142,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("safeLog(popShareSlowDecaySignal,-9.21034037)", profile.getFunctions().get("POP_SLOW_SCORE").function().getBody().getRoot().toString());
}
@@ -170,7 +170,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("safeLog(popShareSlowDecaySignal,myValue)", profile.getFunctions().get("POP_SLOW_SCORE").function().getBody().getRoot().toString());
assertEquals("safeLog(popShareSlowDecaySignal,-9.21034037)",
@@ -194,7 +194,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("k1 + (k2 + k3) / 100000000.0",
profile.compile(new QueryProfileRegistry(), new ImportedMlModels()).getFunctions().get("rank_default").function().getBody().getRoot().toString());
@@ -220,7 +220,7 @@ public class RankingExpressionConstantsTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("0.5 + 50 * (attribute(rating_yelp) - 3)",
profile.compile(new QueryProfileRegistry(), new ImportedMlModels()).getFunctions().get("rank_default").function().getBody().getRoot().toString());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
index fdc08130375..52b8481f330 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
@@ -66,7 +66,7 @@ public class RankingExpressionInliningTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(new QueryProfileRegistry(), new ImportedMlModels());
assertEquals("7.0 * (3 + attribute(a) + attribute(b) * (attribute(a) * 3 + if (7.0 < attribute(a), 1, 2) == 0))",
@@ -126,7 +126,7 @@ public class RankingExpressionInliningTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(new QueryProfileRegistry(), new ImportedMlModels());
assertEquals("17.0", parent.getFirstPhaseRanking().getRoot().toString());
@@ -182,7 +182,7 @@ public class RankingExpressionInliningTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
assertEquals("attribute(a) + C + (attribute(b) + 1)", test.getFirstPhaseRanking().getRoot().toString());
@@ -216,7 +216,7 @@ public class RankingExpressionInliningTestCase extends SchemaTestCase {
" }\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
assertEquals("foo(2)", test.getFirstPhaseRanking().getRoot().toString());
assertTrue("Does not contain expected warning", deployLogger.contains("Function 'foo' replaces " +
@@ -246,9 +246,9 @@ public class RankingExpressionInliningTestCase extends SchemaTestCase {
return b.toString();
}
- private String getRankingExpression(String name, RankProfile rankProfile, Search search) {
+ private String getRankingExpression(String name, RankProfile rankProfile, Schema schema) {
Optional<String> rankExpression =
- new RawRankProfile(rankProfile, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(), new ImportedMlModels(), new AttributeFields(search), new TestProperties())
+ new RawRankProfile(rankProfile, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(), new ImportedMlModels(), new AttributeFields(schema), new TestProperties())
.configProperties()
.stream()
.filter(r -> r.getFirst().equals("rankingExpression(" + name + ").rankingScript"))
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
index f84f3d8c83f..192ac38a854 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
@@ -46,7 +46,7 @@ public class RankingExpressionShadowingTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
assertEquals("(rankingExpression(sin@).rankingScript, 2 * 2)",
@@ -87,7 +87,7 @@ public class RankingExpressionShadowingTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
assertEquals("(rankingExpression(tan@).rankingScript, 2 * 2)",
@@ -133,7 +133,7 @@ public class RankingExpressionShadowingTestCase extends SchemaTestCase {
"\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
assertEquals("(rankingExpression(sin@).rankingScript, 4.0 * 4.0)",
@@ -194,7 +194,7 @@ public class RankingExpressionShadowingTestCase extends SchemaTestCase {
" }\n" +
"}\n");
builder.build();
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(queryProfiles, new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, queryProfiles, s).configProperties();
assertEquals("(rankingExpression(autogenerated_ranking_feature@).rankingScript, reduce(query(q) * constant(W_hidden), sum, input) + constant(b_input))",
@@ -213,12 +213,12 @@ public class RankingExpressionShadowingTestCase extends SchemaTestCase {
testRankProperties.get(8).toString());
}
- private static RawRankProfile createRawRankProfile(RankProfile profile, QueryProfileRegistry queryProfiles, Search search) {
+ private static RawRankProfile createRawRankProfile(RankProfile profile, QueryProfileRegistry queryProfiles, Schema schema) {
return new RawRankProfile(profile,
new LargeRankExpressions(new MockFileRegistry()),
queryProfiles,
new ImportedMlModels(),
- new AttributeFields(search),
+ new AttributeFields(schema),
new TestProperties());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
index 66e773cf3f8..0f42e7c5211 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
@@ -22,8 +22,8 @@ public class RankingExpressionValidationTestCase extends SchemaTestCase {
private void assertFailsExpression(String expression) throws ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- Search search = importWithExpression(expression, registry);
- new DerivedConfiguration(search, registry); // cause rank profile parsing
+ Schema schema = importWithExpression(expression, registry);
+ new DerivedConfiguration(schema, registry); // cause rank profile parsing
fail("No exception on incorrect ranking expression " + expression);
} catch (IllegalArgumentException e) {
// Success
@@ -31,7 +31,7 @@ public class RankingExpressionValidationTestCase extends SchemaTestCase {
}
}
- private Search importWithExpression(String expression, RankProfileRegistry registry) throws ParseException {
+ private Schema importWithExpression(String expression, RankProfileRegistry registry) throws ParseException {
SearchBuilder builder = new SearchBuilder(registry);
builder.importString("search test {" +
" document test { " +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
index 9bb588a690b..9a1fe665e9b 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
@@ -15,10 +15,10 @@ public class ReservedWordsAsFieldNamesTestCase extends SchemaTestCase {
@Test
public void testIt() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/reserved_words_as_field_names.sd");
- assertNotNull(search.getDocument().getField("inline"));
- assertNotNull(search.getDocument().getField("constants"));
- assertNotNull(search.getDocument().getField("reference"));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/reserved_words_as_field_names.sd");
+ assertNotNull(schema.getDocument().getField("inline"));
+ assertNotNull(schema.getDocument().getField("constants"));
+ assertNotNull(schema.getDocument().getField("reference"));
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SearchImporterTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java
index 990fe8cb3d0..d382dc9f34a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SearchImporterTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java
@@ -30,7 +30,7 @@ import static org.junit.Assert.fail;
*
* @author bratseth
*/
-public class SearchImporterTestCase extends SchemaTestCase {
+public class SchemaImporterTestCase extends SchemaTestCase {
@Test
@SuppressWarnings("deprecation")
@@ -39,30 +39,30 @@ public class SearchImporterTestCase extends SchemaTestCase {
SearchBuilder sb = new SearchBuilder(rankProfileRegistry, new QueryProfileRegistry());
sb.importFile("src/test/examples/simple.sd");
sb.build();
- Search search = sb.getSearch();
- assertEquals("simple",search.getName());
- assertTrue(search.hasDocument());
+ Schema schema = sb.getSearch();
+ assertEquals("simple", schema.getName());
+ assertTrue(schema.hasDocument());
- SDDocumentType document = search.getDocument();
+ SDDocumentType document = schema.getDocument();
assertEquals("simple", document.getName());
assertEquals(23, document.getFieldCount());
SDField field;
Attribute attribute;
- new MakeAliases(search, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles()).process(true, false);
+ new MakeAliases(schema, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles()).process(true, false);
// First field
field=(SDField) document.getField("title");
assertEquals(DataType.STRING,field.getDataType());
assertEquals("{ input title | tokenize normalize stem:\"BEST\" | summary title | index title; }", field.getIndexingScript().toString());
- assertFalse(search.getIndex("default").isPrefix());
- assertTrue(search.getIndex("title").isPrefix());
- Iterator<String> titleAliases=search.getIndex("title").aliasIterator();
+ assertFalse(schema.getIndex("default").isPrefix());
+ assertTrue(schema.getIndex("title").isPrefix());
+ Iterator<String> titleAliases= schema.getIndex("title").aliasIterator();
assertEquals("aliaz",titleAliases.next());
assertEquals("analias.totitle",titleAliases.next());
assertEquals("analias.todefault",
- search.getIndex("default").aliasIterator().next());
+ schema.getIndex("default").aliasIterator().next());
assertEquals(RankType.IDENTITY, field.getRankType());
assertEquals(0, field.getAttributes().size());
assertNull(field.getStemming());
@@ -78,7 +78,7 @@ public class SearchImporterTestCase extends SchemaTestCase {
field.getSummaryField("dyndesc").getTransform());
assertNull(field.getStemming());
assertTrue(field.getNormalizing().doRemoveAccents());
- assertEquals("hallo",search.getIndex("description").aliasIterator().next());
+ assertEquals("hallo", schema.getIndex("description").aliasIterator().next());
// Third field
field=(SDField) document.getField("chatter");
@@ -104,24 +104,24 @@ public class SearchImporterTestCase extends SchemaTestCase {
assertEquals(1, field.getAttributes().size());
// Seventh field
- field= search.getConcreteField("categories");
+ field= schema.getConcreteField("categories");
assertEquals("{ input categories_src | lowercase | normalize | tokenize normalize stem:\"BEST\" | index categories; }",
field.getIndexingScript().toString());
assertTrue(field.isHeader());
// Eight field
- field= search.getConcreteField("categoriesagain");
+ field= schema.getConcreteField("categoriesagain");
assertEquals("{ input categoriesagain_src | lowercase | normalize | tokenize normalize stem:\"BEST\" | index categoriesagain; }",
field.getIndexingScript().toString());
assertTrue(field.isHeader());
// Ninth field
- field= search.getConcreteField("exactemento");
+ field= schema.getConcreteField("exactemento");
assertEquals("{ input exactemento_src | lowercase | tokenize normalize stem:\"BEST\" | index exactemento | summary exactemento; }",
field.getIndexingScript().toString());
// Tenth field
- field = search.getConcreteField("category_arr");
+ field = schema.getConcreteField("category_arr");
assertEquals(1, field.getAttributes().size());
attribute = field.getAttributes().get("category_arr");
assertNotNull(attribute);
@@ -131,7 +131,7 @@ public class SearchImporterTestCase extends SchemaTestCase {
assertTrue(field.isHeader());
// Eleventh field
- field = search.getConcreteField("measurement_arr");
+ field = schema.getConcreteField("measurement_arr");
assertEquals(1, field.getAttributes().size());
attribute = field.getAttributes().get("measurement_arr");
assertEquals("measurement_arr", attribute.getName());
@@ -139,24 +139,24 @@ public class SearchImporterTestCase extends SchemaTestCase {
assertEquals(Attribute.CollectionType.ARRAY, attribute.getCollectionType());
// Rank Profiles
- RankProfile profile=rankProfileRegistry.get(search, "default");
+ RankProfile profile=rankProfileRegistry.get(schema, "default");
assertNotNull(profile);
assertNull(profile.getInheritedName());
assertNull(profile.getDeclaredRankSetting("measurement", RankProfile.RankSetting.Type.RANKTYPE));
assertEquals(RankType.EMPTY,
profile.getRankSetting("measurement", RankProfile.RankSetting.Type.RANKTYPE).getValue());
- profile=rankProfileRegistry.get(search, "experimental");
+ profile=rankProfileRegistry.get(schema, "experimental");
assertNotNull(profile);
assertEquals("default",profile.getInheritedName());
assertEquals(RankType.IDENTITY,
profile.getDeclaredRankSetting("measurement", RankProfile.RankSetting.Type.RANKTYPE).getValue());
- profile=rankProfileRegistry.get(search, "other");
+ profile=rankProfileRegistry.get(schema, "other");
assertNotNull(profile);
assertEquals("experimental",profile.getInheritedName());
// The extra-document field
- SDField exact=search.getConcreteField("exact");
+ SDField exact= schema.getConcreteField("exact");
assertNotNull("Extra field was parsed",exact);
assertEquals("exact",exact.getName());
assertEquals(Stemming.NONE,exact.getStemming());
@@ -178,10 +178,10 @@ public class SearchImporterTestCase extends SchemaTestCase {
@Test
public void testIdImporting() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/strange.sd");
- SDField idecidemyide=(SDField) search.getDocument().getField("idecidemyide");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/strange.sd");
+ SDField idecidemyide=(SDField) schema.getDocument().getField("idecidemyide");
assertEquals(5,idecidemyide.getId());
- SDField sodoi=(SDField) search.getDocument().getField("sodoi");
+ SDField sodoi=(SDField) schema.getDocument().getField("sodoi");
assertEquals(7,sodoi.getId());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
index e11efeac31c..6155b1521b0 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
@@ -20,32 +20,32 @@ public class StemmingSettingTestCase extends SchemaTestCase {
@Test
public void testStemmingSettings() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/stemmingsetting.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/stemmingsetting.sd");
- SDField artist = (SDField)search.getDocument().getField("artist");
- assertEquals(Stemming.SHORTEST, artist.getStemming(search));
+ SDField artist = (SDField) schema.getDocument().getField("artist");
+ assertEquals(Stemming.SHORTEST, artist.getStemming(schema));
- SDField title = (SDField)search.getDocument().getField("title");
- assertEquals(Stemming.NONE, title.getStemming(search));
+ SDField title = (SDField) schema.getDocument().getField("title");
+ assertEquals(Stemming.NONE, title.getStemming(schema));
- SDField song = (SDField)search.getDocument().getField("song");
- assertEquals(Stemming.MULTIPLE, song.getStemming(search));
+ SDField song = (SDField) schema.getDocument().getField("song");
+ assertEquals(Stemming.MULTIPLE, song.getStemming(schema));
- SDField track = (SDField)search.getDocument().getField("track");
- assertEquals(Stemming.SHORTEST, track.getStemming(search));
+ SDField track = (SDField) schema.getDocument().getField("track");
+ assertEquals(Stemming.SHORTEST, track.getStemming(schema));
- SDField backward = (SDField)search.getDocument().getField("backward");
- assertEquals(Stemming.SHORTEST, backward.getStemming(search));
+ SDField backward = (SDField) schema.getDocument().getField("backward");
+ assertEquals(Stemming.SHORTEST, backward.getStemming(schema));
- Index defaultIndex = search.getIndex("default");
+ Index defaultIndex = schema.getIndex("default");
assertEquals(Stemming.SHORTEST, defaultIndex.getStemming());
}
@Test
public void requireThatStemmingIsDefaultBest() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/stemmingdefault.sd");
- assertNull(search.getConcreteField("my_str").getStemming());
- assertEquals(Stemming.BEST, search.getConcreteField("my_str").getStemming(search));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/stemmingdefault.sd");
+ assertNull(schema.getConcreteField("my_str").getStemming());
+ assertEquals(Stemming.BEST, schema.getConcreteField("my_str").getStemming(schema));
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
index 52e155fc9a5..a3adfc8dd9f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
@@ -265,7 +265,7 @@ public class SummaryTestCase {
DeployLoggerStub logger = new DeployLoggerStub();
SearchBuilder.createFromStrings(logger, parent, child);
logger.entries.forEach(e -> System.out.println(e));
- //assertTrue(logger.entries.isEmpty());
+ // assertTrue(logger.entries.isEmpty());
}
private static class TestValue {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
index 5d0e69f9ac4..a517f2544a6 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
@@ -7,7 +7,7 @@ import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.model.deploy.TestProperties;
import com.yahoo.document.DocumenttypesConfig;
import com.yahoo.document.config.DocumentmanagerConfig;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -54,8 +54,8 @@ public abstract class AbstractExportingTestCase extends SchemaTestCase {
return export(dirName, builder, config);
}
- DerivedConfiguration derive(String dirName, SearchBuilder builder, Search search) throws IOException {
- DerivedConfiguration config = new DerivedConfiguration(search,
+ DerivedConfiguration derive(String dirName, SearchBuilder builder, Schema schema) throws IOException {
+ DerivedConfiguration config = new DerivedConfiguration(schema,
builder.getRankProfileRegistry(),
builder.getQueryProfileRegistry());
return export(dirName, builder, config);
@@ -117,8 +117,8 @@ public abstract class AbstractExportingTestCase extends SchemaTestCase {
return derived;
}
- protected DerivedConfiguration assertCorrectDeriving(SearchBuilder builder, Search search, String name) throws IOException {
- DerivedConfiguration derived = derive(name, builder, search);
+ protected DerivedConfiguration assertCorrectDeriving(SearchBuilder builder, Schema schema, String name) throws IOException {
+ DerivedConfiguration derived = derive(name, builder, schema);
assertCorrectConfigFiles(name);
return derived;
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
index c36a682fbd8..43dfb9f3bc5 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.Attribute;
@@ -25,10 +25,10 @@ public class AttributeListTestCase extends SchemaTestCase {
@Test
public void testDeriving() throws IOException, ParseException {
// Test attribute importing
- Search search = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
// Test attribute deriving
- AttributeFields attributeFields = new AttributeFields(search);
+ AttributeFields attributeFields = new AttributeFields(schema);
Iterator attributes = attributeFields.attributeIterator();
Attribute attribute;
attribute = (Attribute)attributes.next();
@@ -71,8 +71,8 @@ public class AttributeListTestCase extends SchemaTestCase {
@Test
public void fields_in_array_of_struct_are_derived_into_array_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
- Iterator<Attribute> attributes = new AttributeFields(search).attributeIterator();
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
+ Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("elem_array.name", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
assertAttribute("elem_array.weight", Attribute.Type.INTEGER, Attribute.CollectionType.ARRAY, false, attributes.next());
@@ -81,8 +81,8 @@ public class AttributeListTestCase extends SchemaTestCase {
@Test
public void fields_in_map_of_struct_are_derived_into_array_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
- Iterator<Attribute> attributes = new AttributeFields(search).attributeIterator();
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("str_elem_map.key", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
assertAttribute("str_elem_map.value.name", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, false, attributes.next());
@@ -101,7 +101,7 @@ public class AttributeListTestCase extends SchemaTestCase {
@Test
public void only_zcurve_attribute_is_derived_from_array_of_position_field() throws ParseException {
- Search search = SearchBuilder.createFromString(
+ Schema schema = SearchBuilder.createFromString(
joinLines("search test {",
" document test {",
" field pos_array type array<position> {",
@@ -109,7 +109,7 @@ public class AttributeListTestCase extends SchemaTestCase {
" }",
" }",
"}")).getSearch();
- Iterator<Attribute> attributes = new AttributeFields(search).attributeIterator();
+ Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("pos_array_zcurve", Attribute.Type.LONG, Attribute.CollectionType.ARRAY, true, attributes.next());
assertFalse(attributes.hasNext());
@@ -117,8 +117,8 @@ public class AttributeListTestCase extends SchemaTestCase {
@Test
public void fields_in_map_of_primitive_are_derived_into_array_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/map_attribute/test.sd");
- Iterator<Attribute> attributes = new AttributeFields(search).attributeIterator();
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/map_attribute/test.sd");
+ Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("str_map.key", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
assertAttribute("str_map.value", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, false, attributes.next());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
index 554a78c36ef..ad4ca1ebb46 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -20,17 +20,17 @@ public class CasingTestCase extends SchemaTestCase {
@Test
public void testCasing() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/casing.sd");
- assertEquals(search.getIndex("color").getName(), "color");
- assertEquals(search.getIndex("Foo").getName(), "Foo");
- assertEquals(search.getIndex("Price").getName(), "Price");
- assertEquals(search.getAttribute("artist").getName(), "artist");
- assertEquals(search.getAttribute("Drummer").getName(), "Drummer");
- assertEquals(search.getAttribute("guitarist").getName(), "guitarist");
- assertEquals(search.getAttribute("title").getName(), "title");
- assertEquals(search.getAttribute("Trumpetist").getName(), "Trumpetist");
- assertEquals(search.getAttribute("Saxophonist").getName(), "Saxophonist");
- assertEquals(search.getAttribute("TenorSaxophonist").getName(), "TenorSaxophonist");
- assertEquals(search.getAttribute("Flutist").getName(), "Flutist");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/casing.sd");
+ assertEquals(schema.getIndex("color").getName(), "color");
+ assertEquals(schema.getIndex("Foo").getName(), "Foo");
+ assertEquals(schema.getIndex("Price").getName(), "Price");
+ assertEquals(schema.getAttribute("artist").getName(), "artist");
+ assertEquals(schema.getAttribute("Drummer").getName(), "Drummer");
+ assertEquals(schema.getAttribute("guitarist").getName(), "guitarist");
+ assertEquals(schema.getAttribute("title").getName(), "title");
+ assertEquals(schema.getAttribute("Trumpetist").getName(), "Trumpetist");
+ assertEquals(schema.getAttribute("Saxophonist").getName(), "Saxophonist");
+ assertEquals(schema.getAttribute("TenorSaxophonist").getName(), "TenorSaxophonist");
+ assertEquals(schema.getAttribute("Flutist").getName(), "Flutist");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSearchTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSchemaTestCase.java
index dcf6a84fd2e..bb339688fcb 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSearchTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CombinedAttributeAndIndexSchemaTestCase.java
@@ -11,7 +11,7 @@ import java.io.IOException;
*
* @author bratseth
*/
-public class CombinedAttributeAndIndexSearchTestCase extends AbstractExportingTestCase {
+public class CombinedAttributeAndIndexSchemaTestCase extends AbstractExportingTestCase {
@Test
public void testMultipleSummaries() throws IOException, ParseException {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
index 8778a177b81..41ad7cd3bd1 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.document.DataType;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -20,18 +20,18 @@ public class EmptyRankProfileTestCase extends SchemaTestCase {
@Test
public void testDeriving() {
- Search search = new Search("test");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema = new Schema("test");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType doc = new SDDocumentType("test");
- search.addDocument(doc);
+ schema.addDocument(doc);
doc.addField(new SDField("a", DataType.STRING));
SDField field = new SDField("b", DataType.STRING);
field.setLiteralBoost(500);
doc.addField(field);
doc.addField(new SDField("c", DataType.STRING));
- search = SearchBuilder.buildFromRawSearch(search, rankProfileRegistry, new QueryProfileRegistry());
- new DerivedConfiguration(search, rankProfileRegistry);
+ schema = SearchBuilder.buildFromRawSearch(schema, rankProfileRegistry, new QueryProfileRegistry());
+ new DerivedConfiguration(schema, rankProfileRegistry);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
index 1c63b8c462e..398a13209dd 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.processing.Processing;
@@ -23,14 +23,14 @@ public class IdTestCase extends AbstractExportingTestCase {
@Test
public void testExplicitUpperCaseIdField() {
- Search search = new Search("test");
+ Schema schema = new Schema("test");
SDDocumentType document = new SDDocumentType("test");
- search.addDocument(document);
+ schema.addDocument(document);
SDField uri = new SDField("URI", DataType.URI);
uri.parseIndexingScript("{ summary | index }");
document.addField(uri);
- new Processing().process(search, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
+ new Processing().process(schema, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
assertNull(document.getField("uri"));
assertNull(document.getField("Uri"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
index a07eb1015a1..59950cee638 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.document.DataType;
import com.yahoo.document.config.DocumentmanagerConfig;
import com.yahoo.searchdefinition.Index;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -143,20 +143,20 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void testIndexSettingInheritance() {
SDDocumentType parent = new SDDocumentType("parent");
- Search parentSearch = new Search("parent");
- parentSearch.addDocument(parent);
+ Schema parentSchema = new Schema("parent");
+ parentSchema.addDocument(parent);
SDField prefixed = parent.addField("prefixed", DataType.STRING);
prefixed.parseIndexingScript("{ index }");
prefixed.addIndex(new Index("prefixed", true));
SDDocumentType child = new SDDocumentType("child");
child.inherit(parent);
- Search childSearch = new Search("child");
- childSearch.addDocument(child);
+ Schema childSchema = new Schema("child");
+ childSchema.addDocument(child);
prefixed = (SDField)child.getField("prefixed");
assertNotNull(prefixed);
- assertEquals(new Index("prefixed", true), childSearch.getIndex("prefixed"));
+ assertEquals(new Index("prefixed", true), childSchema.getIndex("prefixed"));
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
index 070d7ff5337..b12ca6d1c62 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
@@ -6,7 +6,7 @@ import com.yahoo.document.DataType;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -29,19 +29,19 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
*/
@Test
public void testLiteralBoost() {
- Search search=new Search("literalboost");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema =new Schema("literalboost");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document=new SDDocumentType("literalboost");
- search.addDocument(document);
+ schema.addDocument(document);
SDField field1= document.addField("a", DataType.STRING);
field1.parseIndexingScript("{ index }");
field1.setLiteralBoost(20);
- RankProfile other=new RankProfile("other", search, rankProfileRegistry, search.rankingConstants());
+ RankProfile other=new RankProfile("other", schema, rankProfileRegistry, schema.rankingConstants());
rankProfileRegistry.add(other);
other.addRankSetting(new RankProfile.RankSetting("a", RankProfile.RankSetting.Type.LITERALBOOST, 333));
- new Processing().process(search, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles(), true, false);
- DerivedConfiguration derived=new DerivedConfiguration(search, rankProfileRegistry);
+ new Processing().process(schema, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles(), true, false);
+ DerivedConfiguration derived=new DerivedConfiguration(schema, rankProfileRegistry);
// Check attribute fields
derived.getAttributeFields(); // TODO: assert content
@@ -49,7 +49,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
// Check il script addition
assertIndexing(Arrays.asList("clear_state | guard { input a | tokenize normalize stem:\"BEST\" | index a; }",
"clear_state | guard { input a | tokenize | index a_literal; }"),
- search);
+ schema);
// Check index info addition
IndexInfo indexInfo=derived.getIndexInfo();
@@ -61,23 +61,23 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
*/
@Test
public void testNonDefaultRankLiteralBoost() {
- Search search=new Search("literalboost");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema =new Schema("literalboost");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document=new SDDocumentType("literalboost");
- search.addDocument(document);
+ schema.addDocument(document);
SDField field1= document.addField("a", DataType.STRING);
field1.parseIndexingScript("{ index }");
- RankProfile other=new RankProfile("other", search, rankProfileRegistry, search.rankingConstants());
+ RankProfile other=new RankProfile("other", schema, rankProfileRegistry, schema.rankingConstants());
rankProfileRegistry.add(other);
other.addRankSetting(new RankProfile.RankSetting("a", RankProfile.RankSetting.Type.LITERALBOOST, 333));
- search = SearchBuilder.buildFromRawSearch(search, rankProfileRegistry, new QueryProfileRegistry());
- DerivedConfiguration derived = new DerivedConfiguration(search, rankProfileRegistry);
+ schema = SearchBuilder.buildFromRawSearch(schema, rankProfileRegistry, new QueryProfileRegistry());
+ DerivedConfiguration derived = new DerivedConfiguration(schema, rankProfileRegistry);
// Check il script addition
assertIndexing(Arrays.asList("clear_state | guard { input a | tokenize normalize stem:\"BEST\" | index a; }",
"clear_state | guard { input a | tokenize | index a_literal; }"),
- search);
+ schema);
// Check index info addition
IndexInfo indexInfo=derived.getIndexInfo();
@@ -87,10 +87,10 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
/** Tests literal boosts in two fields going to the same index */
@Test
public void testTwoLiteralBoostFields() {
- Search search=new Search("msb");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema =new Schema("msb");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document=new SDDocumentType("msb");
- search.addDocument(document);
+ schema.addDocument(document);
SDField field1= document.addField("title", DataType.STRING);
field1.parseIndexingScript("{ summary | index }");
field1.setLiteralBoost(20);
@@ -98,13 +98,13 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
field2.parseIndexingScript("{ summary | index }");
field2.setLiteralBoost(20);
- search = SearchBuilder.buildFromRawSearch(search, rankProfileRegistry, new QueryProfileRegistry());
- new DerivedConfiguration(search, rankProfileRegistry);
+ schema = SearchBuilder.buildFromRawSearch(schema, rankProfileRegistry, new QueryProfileRegistry());
+ new DerivedConfiguration(schema, rankProfileRegistry);
assertIndexing(Arrays.asList("clear_state | guard { input title | tokenize normalize stem:\"BEST\" | summary title | index title; }",
"clear_state | guard { input body | tokenize normalize stem:\"BEST\" | summary body | index body; }",
"clear_state | guard { input title | tokenize | index title_literal; }",
"clear_state | guard { input body | tokenize | index body_literal; }"),
- search);
+ schema);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SearchOrdererTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java
index 00fc07de221..ef939aa5093 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SearchOrdererTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.document.ReferenceDataType;
import com.yahoo.document.TemporaryStructuredDataType;
import com.yahoo.searchdefinition.DocumentReference;
import com.yahoo.searchdefinition.DocumentReferences;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -26,33 +26,33 @@ import static org.junit.Assert.assertEquals;
* @author bratseth
* @author bjorncs
*/
-public class SearchOrdererTestCase extends SchemaTestCase {
+public class SchemaOrdererTestCase extends SchemaTestCase {
- private static Map<String, Search> createSchemas() {
- Map<String, Search> schemas = new HashMap<>();
+ private static Map<String, Schema> createSchemas() {
+ Map<String, Schema> schemas = new HashMap<>();
- Search grandParent = createSchema("grandParent", schemas);
+ Schema grandParent = createSchema("grandParent", schemas);
- Search mother = createSchema("mother", schemas);
+ Schema mother = createSchema("mother", schemas);
inherit(mother, grandParent);
- Search father = createSchema("father", schemas);
+ Schema father = createSchema("father", schemas);
inherit(father, grandParent);
createDocumentReference(father, mother, "wife_ref");
- Search daugther = createSchema("daughter", schemas);
+ Schema daugther = createSchema("daughter", schemas);
inherit(daugther, father);
inherit(daugther, mother);
- Search son = createSchema("son", schemas);
+ Schema son = createSchema("son", schemas);
inherit(son, father);
inherit(son, mother);
- Search product = createSchema("product", schemas);
+ Schema product = createSchema("product", schemas);
- Search pc = createSchema("pc", schemas);
+ Schema pc = createSchema("pc", schemas);
inherit(pc, product);
- Search pcAccessory = createSchema("accessory-pc", schemas);
+ Schema pcAccessory = createSchema("accessory-pc", schemas);
inherit(pcAccessory, product);
createDocumentReference(pcAccessory, pc, "pc_ref");
@@ -61,34 +61,34 @@ public class SearchOrdererTestCase extends SchemaTestCase {
return schemas;
}
- private static Search createSchema(String name, Map<String, Search> schemas) {
- Search search = new Search(name);
+ private static Schema createSchema(String name, Map<String, Schema> schemas) {
+ Schema schema = new Schema(name);
SDDocumentType document = new SDDocumentType(name);
document.setDocumentReferences(new DocumentReferences(emptyMap()));
- search.addDocument(document);
- schemas.put(search.getName(), search);
- return search;
+ schema.addDocument(document);
+ schemas.put(schema.getName(), schema);
+ return schema;
}
- private static void inherit(Search inheritee, Search inherited) {
+ private static void inherit(Schema inheritee, Schema inherited) {
inheritee.getDocument().inherit(inherited.getDocument());
}
private static void assertOrder(List<String> expectedSearchOrder, List<String> inputNames) {
- Map<String, Search> schemas = createSchemas();
- List<Search> inputSchemas = inputNames.stream()
- .map(schemas::get)
- .map(Objects::requireNonNull)
- .collect(toList());
+ Map<String, Schema> schemas = createSchemas();
+ List<Schema> inputSchemas = inputNames.stream()
+ .map(schemas::get)
+ .map(Objects::requireNonNull)
+ .collect(toList());
List<String> actualSearchOrder = new SearchOrderer()
.order(inputSchemas)
.stream()
- .map(Search::getName)
+ .map(Schema::getName)
.collect(toList());
assertEquals(expectedSearchOrder, actualSearchOrder);
}
- private static void createDocumentReference(Search from, Search to, String refFieldName) {
+ private static void createDocumentReference(Schema from, Schema to, String refFieldName) {
SDField refField = new TemporarySDField(refFieldName, ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create(to.getName())));
SDDocumentType fromDocument = from.getDocument();
fromDocument.addField(refField);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
index 08d888aba0b..106f5a54cfe 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -24,14 +24,14 @@ public class SimpleInheritTestCase extends AbstractExportingTestCase {
builder.importFile(expectedResultsDirName + "child.sd");
builder.build();
- Search search = builder.getSearch("child");
+ Schema schema = builder.getSearch("child");
String toDirName = "temp/" + name;
File toDir = new File(toDirName);
toDir.mkdirs();
deleteContent(toDir);
- DerivedConfiguration config = new DerivedConfiguration(search, builder.getRankProfileRegistry());
+ DerivedConfiguration config = new DerivedConfiguration(schema, builder.getRankProfileRegistry());
config.export(toDirName);
checkDir(toDirName, expectedResultsDirName);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
index adc8b82f5fe..6ed03f7b237 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
@@ -28,8 +28,8 @@ import static org.junit.Assert.assertTrue;
public class SummaryMapTestCase extends SchemaTestCase {
@Test
public void testDeriving() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
- SummaryMap summaryMap=new SummaryMap(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
+ SummaryMap summaryMap=new SummaryMap(schema);
Iterator transforms=summaryMap.resultTransformIterator();
FieldResultTransform transform = (FieldResultTransform)transforms.next();
@@ -72,14 +72,14 @@ public class SummaryMapTestCase extends SchemaTestCase {
}
@Test
public void testPositionDeriving() {
- Search search = new Search("store");
+ Schema schema = new Schema("store");
SDDocumentType document = new SDDocumentType("store");
- search.addDocument(document);
+ schema.addDocument(document);
String fieldName = "location";
SDField field = document.addField(fieldName, PositionDataType.INSTANCE);
field.parseIndexingScript("{ attribute | summary }");
- new Processing().process(search, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
- SummaryMap summaryMap = new SummaryMap(search);
+ new Processing().process(schema, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
+ SummaryMap summaryMap = new SummaryMap(schema);
Iterator transforms = summaryMap.resultTransformIterator();
@@ -186,7 +186,7 @@ public class SummaryMapTestCase extends SchemaTestCase {
assertEquals(expFieldName, override.arguments());
}
- private Search buildSearch(String field) throws ParseException {
+ private Schema buildSearch(String field) throws ParseException {
var builder = new SearchBuilder(new RankProfileRegistry());
builder.importString(joinLines("search test {",
" document test {",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
index e92f81052de..67403cdd25a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -35,8 +35,8 @@ public class SummaryTestCase extends SchemaTestCase {
" }",
" }",
"}");
- Search search = SearchBuilder.createFromString(sd).getSearch();
- SummaryClass summary = new SummaryClass(search, search.getSummary("default"), new BaseDeployLogger());
+ Schema schema = SearchBuilder.createFromString(sd).getSearch();
+ SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals(SummaryClassField.Type.RAW, summary.getField("raw_field").getType());
}
@@ -50,15 +50,15 @@ public class SummaryTestCase extends SchemaTestCase {
" }",
" }",
"}");
- Search search = SearchBuilder.createFromString(sd).getSearch();
- SummaryClass summary = new SummaryClass(search, search.getSummary("default"), new BaseDeployLogger());
+ Schema schema = SearchBuilder.createFromString(sd).getSearch();
+ SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals(SummaryClassField.Type.DATA, summary.getField("raw_field").getType());
}
@Test
public void testDeriving() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
- SummaryClass summary = new SummaryClass(search, search.getSummary("default"), new BaseDeployLogger());
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/simple.sd");
+ SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals("default", summary.getName());
Iterator<SummaryClassField> fields = summary.fieldIterator();
@@ -122,18 +122,18 @@ public class SummaryTestCase extends SchemaTestCase {
@Test
public void reference_fields_can_be_part_of_summary_classes() throws ParseException {
- Search adSearch = buildCampaignAdModel();
+ Schema adSchema = buildCampaignAdModel();
- SummaryClass defaultClass = new SummaryClass(adSearch, adSearch.getSummary("default"), new BaseDeployLogger());
+ SummaryClass defaultClass = new SummaryClass(adSchema, adSchema.getSummary("default"), new BaseDeployLogger());
assertEquals(SummaryClassField.Type.LONGSTRING, defaultClass.getField("campaign_ref").getType());
assertEquals(SummaryClassField.Type.LONGSTRING, defaultClass.getField("other_campaign_ref").getType());
- SummaryClass myClass = new SummaryClass(adSearch, adSearch.getSummary("my_summary"), new BaseDeployLogger());
+ SummaryClass myClass = new SummaryClass(adSchema, adSchema.getSummary("my_summary"), new BaseDeployLogger());
assertNull(myClass.getField("campaign_ref"));
assertEquals(SummaryClassField.Type.LONGSTRING, myClass.getField("other_campaign_ref").getType());
}
- private static Search buildCampaignAdModel() throws ParseException {
+ private static Schema buildCampaignAdModel() throws ParseException {
SearchBuilder builder = new SearchBuilder();
builder.importString("search campaign { document campaign {} }");
builder.importString(joinLines("search ad {",
@@ -173,8 +173,8 @@ public class SummaryTestCase extends SchemaTestCase {
assertOmitSummaryFeatures(false, search, "baz");
}
- private void assertOmitSummaryFeatures(boolean expected, Search search, String summaryName) {
- var summary = new SummaryClass(search, search.getSummary(summaryName), new BaseDeployLogger());
+ private void assertOmitSummaryFeatures(boolean expected, Schema schema, String summaryName) {
+ var summary = new SummaryClass(schema, schema.getSummary(summaryName), new BaseDeployLogger());
var config = new SummaryConfig.Classes(summary.getSummaryClassConfig());
assertEquals(expected, config.omitsummaryfeatures());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
index 2b65361e922..bfed1efe398 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -23,16 +23,16 @@ public class TypeConversionTestCase extends SchemaTestCase {
/** Tests that exact-string stuff is not spilled over to the default index */
@Test
public void testExactStringToStringTypeConversion() {
- Search search = new Search("test");
- RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(search);
+ Schema schema = new Schema("test");
+ RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("test");
- search.addDocument(document);
+ schema.addDocument(document);
SDField a = new SDField("a", DataType.STRING);
a.parseIndexingScript("{ index }");
document.addField(a);
- new Processing().process(search, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles(), true, false);
- DerivedConfiguration derived = new DerivedConfiguration(search, rankProfileRegistry);
+ new Processing().process(schema, new BaseDeployLogger(), rankProfileRegistry, new QueryProfiles(), true, false);
+ DerivedConfiguration derived = new DerivedConfiguration(schema, rankProfileRegistry);
IndexInfo indexInfo = derived.getIndexInfo();
assertFalse(indexInfo.hasCommand("default", "compact-to-term"));
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
index 3e3904fa250..55702c9e1a7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
@@ -7,7 +7,7 @@ import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.document.TemporaryStructuredDataType;
import com.yahoo.searchdefinition.Application;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.document.TemporarySDField;
@@ -23,13 +23,13 @@ public class VsmFieldsTestCase {
@Test
public void reference_type_field_is_unsearchable() {
- Search search = new Search("test", new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
- search.addDocument(new SDDocumentType("test"));
+ Schema schema = new Schema("test", new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ schema.addDocument(new SDDocumentType("test"));
SDField refField = new TemporarySDField("ref_field", ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create("parent_type")));
refField.parseIndexingScript("{ summary }");
- search.getDocument().addField(refField);
+ schema.getDocument().addField(refField);
- VsmFields vsmFields = new VsmFields(search);
+ VsmFields vsmFields = new VsmFields(schema);
VsmfieldsConfig.Builder cfgBuilder = new VsmfieldsConfig.Builder();
vsmFields.getConfig(cfgBuilder);
VsmfieldsConfig cfg = cfgBuilder.build();
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
index a91911f6fef..449e8054728 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.document;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -17,8 +17,8 @@ public class ComplexAttributeFieldUtilsTestCase {
private final ImmutableSDField field;
FixtureBase(String fieldName, String sdContent) throws ParseException {
- Search search = SearchBuilder.createFromString(sdContent).getSearch();
- field = search.getConcreteField(fieldName);
+ Schema schema = SearchBuilder.createFromString(sdContent).getSearch();
+ field = schema.getConcreteField(fieldName);
}
public ImmutableSDField field() {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
index d7b31af11b8..715b7b803e2 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
@@ -8,7 +8,7 @@ import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.searchdefinition.Application;
import com.yahoo.searchdefinition.DocumentReference;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.TestableDeployLogger;
import com.yahoo.searchdefinition.document.ImportedField;
import com.yahoo.searchdefinition.document.ImportedFields;
@@ -35,39 +35,39 @@ public class AddAttributeTransformToSummaryOfImportedFieldsTest {
@Test
public void attribute_summary_transform_applied_to_summary_field_of_imported_field() {
- Search search = createSearchWithDocument(DOCUMENT_NAME);
- search.setImportedFields(createSingleImportedField(IMPORTED_FIELD_NAME));
- search.addSummary(createDocumentSummary(IMPORTED_FIELD_NAME, search));
+ Schema schema = createSearchWithDocument(DOCUMENT_NAME);
+ schema.setImportedFields(createSingleImportedField(IMPORTED_FIELD_NAME));
+ schema.addSummary(createDocumentSummary(IMPORTED_FIELD_NAME, schema));
AddAttributeTransformToSummaryOfImportedFields processor = new AddAttributeTransformToSummaryOfImportedFields(
- search,null,null,null);
+ schema, null, null, null);
processor.process(true, false);
- SummaryField summaryField = search.getSummaries().get(SUMMARY_NAME).getSummaryField(IMPORTED_FIELD_NAME);
+ SummaryField summaryField = schema.getSummaries().get(SUMMARY_NAME).getSummaryField(IMPORTED_FIELD_NAME);
SummaryTransform actualTransform = summaryField.getTransform();
assertEquals(SummaryTransform.ATTRIBUTE, actualTransform);
}
- private static Search createSearch(String documentType) {
- return new Search(documentType, new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ private static Schema createSearch(String documentType) {
+ return new Schema(documentType, new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
}
- private static Search createSearchWithDocument(String documentName) {
- Search search = createSearch(documentName);
- SDDocumentType document = new SDDocumentType(documentName, search);
- search.addDocument(document);
- return search;
+ private static Schema createSearchWithDocument(String documentName) {
+ Schema schema = createSearch(documentName);
+ SDDocumentType document = new SDDocumentType(documentName, schema);
+ schema.addDocument(document);
+ return schema;
}
private static ImportedFields createSingleImportedField(String fieldName) {
- Search targetSearch = createSearch("target_doc");
+ Schema targetSchema = createSearch("target_doc");
SDField targetField = new SDField("target_field", DataType.INT);
- DocumentReference documentReference = new DocumentReference(new Field("reference_field"), targetSearch);
+ DocumentReference documentReference = new DocumentReference(new Field("reference_field"), targetSchema);
ImportedField importedField = new ImportedSimpleField(fieldName, documentReference, targetField);
return new ImportedFields(Collections.singletonMap(fieldName, importedField));
}
- private static DocumentSummary createDocumentSummary(String fieldName, Search search) {
- DocumentSummary summary = new DocumentSummary("mysummary", search);
+ private static DocumentSummary createDocumentSummary(String fieldName, Schema schema) {
+ DocumentSummary summary = new DocumentSummary("mysummary", schema);
summary.add(new SummaryField(fieldName, DataType.INT));
return summary;
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFieldsTestCase.java
index f9796432de8..21fab6ee01c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AdjustPositionSummaryFieldsTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -73,7 +73,7 @@ public class AdjustPositionSummaryFieldsTestCase {
public void test_pos_default_summary_no_attr_no_rename() {
SearchModel model = new SearchModel(false, false, false);
model.resolve();
- assertNull(model.childSearch.getSummary("default")); // ImplicitSummaries processing not run in this test
+ assertNull(model.childSchema.getSummary("default")); // ImplicitSummaries processing not run in this test
}
@Test
@@ -175,21 +175,21 @@ public class AdjustPositionSummaryFieldsTestCase {
SearchModel(boolean importedPos, boolean setupPosAttr, boolean setupBadAttr) {
super();
if (importedPos) {
- createPositionField(parentSearch, setupPosAttr, setupBadAttr);
+ createPositionField(parentSchema, setupPosAttr, setupBadAttr);
}
- addRefField(childSearch, parentSearch, "ref");
+ addRefField(childSchema, parentSchema, "ref");
if (importedPos) {
addImportedField("my_pos", "ref", "pos");
} else {
- createPositionField(childSearch, setupPosAttr, setupBadAttr);
+ createPositionField(childSchema, setupPosAttr, setupBadAttr);
}
}
- private void createPositionField(Search search, boolean setupPosAttr, boolean setupBadAttr) {
+ private void createPositionField(Schema schema, boolean setupPosAttr, boolean setupBadAttr) {
String ilScript = setupPosAttr ? "{ summary | attribute }" : "{ summary }";
- search.getDocument().addField(createField("pos", PositionDataType.INSTANCE, ilScript));
+ schema.getDocument().addField(createField("pos", PositionDataType.INSTANCE, ilScript));
if (setupBadAttr) {
- search.getDocument().addField(createField("pos_zcurve", DataType.LONG, "{ attribute }"));
+ schema.getDocument().addField(createField("pos_zcurve", DataType.LONG, "{ attribute }"));
}
}
@@ -198,10 +198,10 @@ public class AdjustPositionSummaryFieldsTestCase {
}
public void addSummaryField(String summaryName, String fieldName, DataType dataType, SummaryTransform transform, String source) {
- DocumentSummary summary = childSearch.getSummary(summaryName);
+ DocumentSummary summary = childSchema.getSummary(summaryName);
if (summary == null) {
- summary = new DocumentSummary(summaryName, childSearch);
- childSearch.addSummary(summary);
+ summary = new DocumentSummary(summaryName, childSchema);
+ childSchema.addSummary(summary);
}
SummaryField summaryField = new SummaryField(fieldName, dataType);
if (source != null) {
@@ -218,7 +218,7 @@ public class AdjustPositionSummaryFieldsTestCase {
}
public void assertNoSummaryField(String summaryName, String fieldName) {
- DocumentSummary summary = childSearch.getSummary(summaryName);
+ DocumentSummary summary = childSchema.getSummary(summaryName);
assertNotNull(summary);
SummaryField summaryField = summary.getSummaryField(fieldName);
assertNull(summaryField);
@@ -229,7 +229,7 @@ public class AdjustPositionSummaryFieldsTestCase {
}
public void assertSummaryField(String summaryName, String fieldName, DataType dataType, SummaryTransform transform, String source) {
- DocumentSummary summary = childSearch.getSummary(summaryName);
+ DocumentSummary summary = childSchema.getSummary(summaryName);
assertNotNull(summary);
SummaryField summaryField = summary.getSummaryField(fieldName);
assertNotNull(summaryField);
@@ -244,18 +244,18 @@ public class AdjustPositionSummaryFieldsTestCase {
}
public void resolve() {
- resolve(parentSearch);
- resolve(childSearch);
+ resolve(parentSchema);
+ resolve(childSchema);
}
- private static void resolve(Search search) {
- new CreatePositionZCurve(search, null, null, null).process(true, false);
- assertNotNull(search.temporaryImportedFields().get());
- assertFalse(search.importedFields().isPresent());
- new ImportedFieldsResolver(search, null, null, null).process(true, false);
- assertFalse(search.temporaryImportedFields().isPresent());
- assertNotNull(search.importedFields().get());
- new AdjustPositionSummaryFields(search, null, null, null).process(true, false);
+ private static void resolve(Schema schema) {
+ new CreatePositionZCurve(schema, null, null, null).process(true, false);
+ assertNotNull(schema.temporaryImportedFields().get());
+ assertFalse(schema.importedFields().isPresent());
+ new ImportedFieldsResolver(schema, null, null, null).process(true, false);
+ assertFalse(schema.temporaryImportedFields().isPresent());
+ assertNotNull(schema.importedFields().get());
+ new AdjustPositionSummaryFields(schema, null, null, null).process(true, false);
}
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertIndexingScript.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertIndexingScript.java
index c9f9e8c50f9..8a0c1e2fe71 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertIndexingScript.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertIndexingScript.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.IndexingScript;
import com.yahoo.vespa.indexinglanguage.expressions.Expression;
import com.yahoo.vespa.indexinglanguage.parser.ParseException;
@@ -17,8 +17,8 @@ import static org.junit.Assert.fail;
*/
public abstract class AssertIndexingScript {
- public static void assertIndexing(List<String> expected, Search search) {
- assertIndexing(expected, new IndexingScript(search).expressions());
+ public static void assertIndexing(List<String> expected, Schema schema) {
+ assertIndexing(expected, new IndexingScript(schema).expressions());
}
public static void assertIndexing(List<String> expected, IndexingScript script) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
index 7f72cc96ccf..c2d1023826c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.Matching;
@@ -20,20 +20,20 @@ import static org.junit.Assert.assertFalse;
public class AttributesExactMatchTestCase extends SchemaTestCase {
@Test
public void testAttributesExactMatch() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/attributesexactmatch.sd");
- assertEquals(search.getConcreteField("color").getMatching().getType(), Matching.Type.EXACT);
- assertEquals(search.getConcreteField("artist").getMatching().getType(), Matching.Type.WORD);
- assertEquals(search.getConcreteField("drummer").getMatching().getType(), Matching.Type.WORD);
- assertEquals(search.getConcreteField("guitarist").getMatching().getType(), Matching.Type.TEXT);
- assertEquals(search.getConcreteField("saxophonist_arr").getMatching().getType(), Matching.Type.WORD);
- assertEquals(search.getConcreteField("flutist").getMatching().getType(), Matching.Type.TEXT);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/attributesexactmatch.sd");
+ assertEquals(schema.getConcreteField("color").getMatching().getType(), Matching.Type.EXACT);
+ assertEquals(schema.getConcreteField("artist").getMatching().getType(), Matching.Type.WORD);
+ assertEquals(schema.getConcreteField("drummer").getMatching().getType(), Matching.Type.WORD);
+ assertEquals(schema.getConcreteField("guitarist").getMatching().getType(), Matching.Type.TEXT);
+ assertEquals(schema.getConcreteField("saxophonist_arr").getMatching().getType(), Matching.Type.WORD);
+ assertEquals(schema.getConcreteField("flutist").getMatching().getType(), Matching.Type.TEXT);
- assertFalse(search.getConcreteField("genre").getMatching().getType().equals(Matching.Type.EXACT));
- assertFalse(search.getConcreteField("title").getMatching().getType().equals(Matching.Type.EXACT));
- assertFalse(search.getConcreteField("trumpetist").getMatching().getType().equals(Matching.Type.EXACT));
- assertFalse(search.getConcreteField("genre").getMatching().getType().equals(Matching.Type.WORD));
- assertFalse(search.getConcreteField("title").getMatching().getType().equals(Matching.Type.WORD));
- assertFalse(search.getConcreteField("trumpetist").getMatching().getType().equals(Matching.Type.WORD));
+ assertFalse(schema.getConcreteField("genre").getMatching().getType().equals(Matching.Type.EXACT));
+ assertFalse(schema.getConcreteField("title").getMatching().getType().equals(Matching.Type.EXACT));
+ assertFalse(schema.getConcreteField("trumpetist").getMatching().getType().equals(Matching.Type.EXACT));
+ assertFalse(schema.getConcreteField("genre").getMatching().getType().equals(Matching.Type.WORD));
+ assertFalse(schema.getConcreteField("title").getMatching().getType().equals(Matching.Type.WORD));
+ assertFalse(schema.getConcreteField("trumpetist").getMatching().getType().equals(Matching.Type.WORD));
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
index db87ae698b4..643d46e2d48 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
@@ -3,13 +3,12 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.test.TestUtil;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.document.Case;
import com.yahoo.searchdefinition.document.Dictionary;
import com.yahoo.searchdefinition.document.ImmutableSDField;
-import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.config.search.AttributesConfig;
import org.junit.Test;
@@ -24,13 +23,13 @@ import static org.junit.Assert.fail;
* @author baldersheim
*/
public class DictionaryTestCase {
- private static AttributesConfig getConfig(Search search) {
- AttributeFields attributes = new AttributeFields(search);
+ private static AttributesConfig getConfig(Schema schema) {
+ AttributeFields attributes = new AttributeFields(schema);
AttributesConfig.Builder builder = new AttributesConfig.Builder();
attributes.getConfig(builder);
return builder.build();
}
- private Search createSearch(String def) throws ParseException {
+ private Schema createSearch(String def) throws ParseException {
SearchBuilder sb = SearchBuilder.createFromString(def);
return sb.getSearch();
}
@@ -47,20 +46,20 @@ public class DictionaryTestCase {
" }",
" }",
"}");
- Search search = createSearch(def);
- assertNull(search.getAttribute("s1").getDictionary());
- assertNull(search.getAttribute("n1").getDictionary());
+ Schema schema = createSearch(def);
+ assertNull(schema.getAttribute("s1").getDictionary());
+ assertNull(schema.getAttribute("n1").getDictionary());
assertEquals(AttributesConfig.Attribute.Dictionary.Type.BTREE,
- getConfig(search).attribute().get(0).dictionary().type());
+ getConfig(schema).attribute().get(0).dictionary().type());
assertEquals(AttributesConfig.Attribute.Dictionary.Type.BTREE,
- getConfig(search).attribute().get(1).dictionary().type());
+ getConfig(schema).attribute().get(1).dictionary().type());
assertEquals(AttributesConfig.Attribute.Dictionary.Match.UNCASED,
- getConfig(search).attribute().get(0).dictionary().match());
+ getConfig(schema).attribute().get(0).dictionary().match());
assertEquals(AttributesConfig.Attribute.Dictionary.Match.UNCASED,
- getConfig(search).attribute().get(1).dictionary().match());
+ getConfig(schema).attribute().get(1).dictionary().match());
}
- Search verifyDictionaryControl(Dictionary.Type expected, String type, String ... cfg) throws ParseException
+ Schema verifyDictionaryControl(Dictionary.Type expected, String type, String ... cfg) throws ParseException
{
String def = TestUtil.joinLines(
"search test {",
@@ -72,11 +71,11 @@ public class DictionaryTestCase {
" }",
" }",
"}");
- Search search = createSearch(def);
+ Schema schema = createSearch(def);
AttributesConfig.Attribute.Dictionary.Type.Enum expectedConfig = toCfg(expected);
- assertEquals(expected, search.getAttribute("n1").getDictionary().getType());
- assertEquals(expectedConfig, getConfig(search).attribute().get(0).dictionary().type());
- return search;
+ assertEquals(expected, schema.getAttribute("n1").getDictionary().getType());
+ assertEquals(expectedConfig, getConfig(schema).attribute().get(0).dictionary().type());
+ return schema;
}
AttributesConfig.Attribute.Dictionary.Type.Enum toCfg(Dictionary.Type v) {
@@ -95,12 +94,12 @@ public class DictionaryTestCase {
void verifyStringDictionaryControl(Dictionary.Type expectedType, Case expectedCase, Case matchCasing,
String ... cfg) throws ParseException
{
- Search search = verifyDictionaryControl(expectedType, "string", cfg);
- ImmutableSDField f = search.getField("n1");
+ Schema schema = verifyDictionaryControl(expectedType, "string", cfg);
+ ImmutableSDField f = schema.getField("n1");
AttributesConfig.Attribute.Dictionary.Match.Enum expectedCaseCfg = toCfg(expectedCase);
assertEquals(matchCasing, f.getMatching().getCase());
- assertEquals(expectedCase, search.getAttribute("n1").getDictionary().getMatch());
- assertEquals(expectedCaseCfg, getConfig(search).attribute().get(0).dictionary().match());
+ assertEquals(expectedCase, schema.getAttribute("n1").getDictionary().getMatch());
+ assertEquals(expectedCaseCfg, getConfig(schema).attribute().get(0).dictionary().match());
}
@Test
@@ -240,12 +239,12 @@ public class DictionaryTestCase {
" }",
" }",
"}");
- Search search = createSearch(def);
- assertEquals(Case.UNCASED, search.getAttribute("s1").getCase());
- assertEquals(Case.UNCASED, search.getAttribute("s2").getCase());
- assertEquals(Case.CASED, search.getAttribute("s3").getCase());
- assertEquals(AttributesConfig.Attribute.Match.UNCASED, getConfig(search).attribute().get(0).match());
- assertEquals(AttributesConfig.Attribute.Match.UNCASED, getConfig(search).attribute().get(1).match());
- assertEquals(AttributesConfig.Attribute.Match.CASED, getConfig(search).attribute().get(2).match());
+ Schema schema = createSearch(def);
+ assertEquals(Case.UNCASED, schema.getAttribute("s1").getCase());
+ assertEquals(Case.UNCASED, schema.getAttribute("s2").getCase());
+ assertEquals(Case.CASED, schema.getAttribute("s3").getCase());
+ assertEquals(AttributesConfig.Attribute.Match.UNCASED, getConfig(schema).attribute().get(0).match());
+ assertEquals(AttributesConfig.Attribute.Match.UNCASED, getConfig(schema).attribute().get(1).match());
+ assertEquals(AttributesConfig.Attribute.Match.CASED, getConfig(schema).attribute().get(2).match());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSearchFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java
index 5ef2f2842e1..f3d188abf82 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSearchFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
@@ -14,14 +14,14 @@ import java.io.IOException;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
-public class ImplicitSearchFieldsTestCase extends SchemaTestCase {
+public class ImplicitSchemaFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatExtraFieldsAreIncluded() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/extrafield.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/extrafield.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertNotNull(docType.getField("foo"));
assertNotNull(docType.getField("bar"));
@@ -30,10 +30,10 @@ public class ImplicitSearchFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatSummaryFieldsAreIncluded() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/summaryfield.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/summaryfield.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertNotNull(docType.getField("foo"));
assertNotNull(docType.getField("bar"));
@@ -43,10 +43,10 @@ public class ImplicitSearchFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatBoldedSummaryFieldsAreIncluded() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/boldedsummaryfields.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/boldedsummaryfields.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertNotNull(docType.getField("foo"));
assertNotNull(docType.getField("bar"));
@@ -57,10 +57,10 @@ public class ImplicitSearchFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatUntransformedSummaryFieldsAreIgnored() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/untransformedsummaryfields.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/untransformedsummaryfields.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertNotNull(docType.getField("foo"));
assertNotNull(docType.getField("bar"));
@@ -70,10 +70,10 @@ public class ImplicitSearchFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatDynamicSummaryFieldsAreIgnored() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/dynamicsummaryfields.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/dynamicsummaryfields.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertNotNull(docType.getField("foo"));
assertNotNull(docType.getField("bar"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
index fb0f1bc2ba2..ec132bd2450 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.document.*;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -16,19 +16,19 @@ import static org.junit.Assert.*;
public class ImplicitStructTypesTestCase extends SchemaTestCase {
@Test
public void testRequireThatImplicitStructsAreCreated() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/toggleon.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/toggleon.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertStruct(docType, PositionDataType.INSTANCE);
}
@Test
public void testRequireThatImplicitStructsAreUsed() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/nextgen/implicitstructtypes.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/nextgen/implicitstructtypes.sd");
+ assertNotNull(schema);
- SDDocumentType docType = search.getDocument();
+ SDDocumentType docType = schema.getDocument();
assertNotNull(docType);
assertField(docType, "doc_str", DataType.STRING);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
index d45d366ee0a..9f4008b5b39 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -29,8 +29,8 @@ public class ImplicitSummariesTestCase {
LogHandler log = new LogHandler();
Logger.getLogger("").addHandler(log);
- Search search = SearchBuilder.buildFromFile("src/test/examples/implicitsummaries_attribute.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/implicitsummaries_attribute.sd");
+ assertNotNull(schema);
assertTrue(log.records.isEmpty());
}
@@ -60,19 +60,19 @@ public class ImplicitSummariesTestCase {
@Test
public void attribute_combiner_transform_is_set_on_array_of_struct_with_only_struct_field_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
- assertEquals(SummaryTransform.ATTRIBUTECOMBINER, search.getSummaryField("elem_array").getTransform());
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
+ assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("elem_array").getTransform());
}
@Test
public void attribute_combiner_transform_is_set_on_map_of_struct_with_only_struct_field_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
- assertEquals(SummaryTransform.ATTRIBUTECOMBINER, search.getSummaryField("str_elem_map").getTransform());
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("str_elem_map").getTransform());
}
@Test
public void attribute_combiner_transform_is_not_set_when_map_of_struct_has_some_struct_field_attributes() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
- assertEquals(SummaryTransform.NONE, search.getSummaryField("int_elem_map").getTransform());
+ Schema schema = SearchBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ assertEquals(SummaryTransform.NONE, schema.getSummaryField("int_elem_map").getTransform());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
index b7707f2a517..78dabe9301a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -17,10 +17,10 @@ public class ImplicitSummaryFieldsTestCase extends SchemaTestCase {
@Test
public void testRequireThatImplicitFieldsAreCreated() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/implicitsummaryfields.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/implicitsummaryfields.sd");
+ assertNotNull(schema);
- DocumentSummary docsum = search.getSummary("default");
+ DocumentSummary docsum = schema.getSummary("default");
assertNotNull(docsum);
assertNotNull(docsum.getSummaryField("rankfeatures"));
assertNotNull(docsum.getSummaryField("summaryfeatures"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolverTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolverTestCase.java
index 3aeba7cd265..e803d116235 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolverTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsResolverTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.document.DataType;
import com.yahoo.document.TensorDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.document.ImmutableImportedSDField;
import com.yahoo.searchdefinition.document.ImmutableSDField;
import com.yahoo.searchdefinition.document.ImportedField;
@@ -36,9 +36,9 @@ public class ImportedFieldsResolverTestCase {
ImportedField myField = model.importedFields.fields().get(fieldName);
assertNotNull(myField);
assertEquals(fieldName, myField.fieldName());
- assertSame(model.childSearch.getConcreteField("ref"), myField.reference().referenceField());
- assertSame(model.parentSearch, myField.reference().targetSearch());
- ImmutableSDField targetField = model.parentSearch.getField(targetFieldName);
+ assertSame(model.childSchema.getConcreteField("ref"), myField.reference().referenceField());
+ assertSame(model.parentSchema, myField.reference().targetSearch());
+ ImmutableSDField targetField = model.parentSchema.getField(targetFieldName);
if (targetField instanceof SDField) {
assertSame(targetField, myField.targetField());
} else {
@@ -103,48 +103,48 @@ public class ImportedFieldsResolverTestCase {
static class SearchModel extends ParentChildSearchModel {
- public final Search grandParentSearch;
+ public final Schema grandParentSchema;
public ImportedFields importedFields;
public SearchModel() {
super();
- grandParentSearch = createSearch("grandparent");
- grandParentSearch.getDocument().addField(createField("ancient_field", DataType.INT, "{ attribute }"));
-
- parentSearch.getDocument().addField(createField("attribute_field", DataType.INT, "{ attribute }"));
- parentSearch.getDocument().addField(createField("attribute_and_index", DataType.INT, "{ attribute | index }"));
- parentSearch.getDocument().addField(new TemporarySDField("not_attribute", DataType.INT));
- parentSearch.getDocument().addField(createField("tensor_field", new TensorDataType(TensorType.fromSpec("tensor(x[5])")), "{ attribute }"));
- parentSearch.getDocument().addField(createField("predicate_field", DataType.PREDICATE, "{ attribute }"));
- addRefField(parentSearch, grandParentSearch, "ref");
- addImportedField(parentSearch, "ancient_field", "ref", "ancient_field");
-
- addRefField(childSearch, parentSearch, "ref");
+ grandParentSchema = createSearch("grandparent");
+ grandParentSchema.getDocument().addField(createField("ancient_field", DataType.INT, "{ attribute }"));
+
+ parentSchema.getDocument().addField(createField("attribute_field", DataType.INT, "{ attribute }"));
+ parentSchema.getDocument().addField(createField("attribute_and_index", DataType.INT, "{ attribute | index }"));
+ parentSchema.getDocument().addField(new TemporarySDField("not_attribute", DataType.INT));
+ parentSchema.getDocument().addField(createField("tensor_field", new TensorDataType(TensorType.fromSpec("tensor(x[5])")), "{ attribute }"));
+ parentSchema.getDocument().addField(createField("predicate_field", DataType.PREDICATE, "{ attribute }"));
+ addRefField(parentSchema, grandParentSchema, "ref");
+ addImportedField(parentSchema, "ancient_field", "ref", "ancient_field");
+
+ addRefField(childSchema, parentSchema, "ref");
}
protected SearchModel addImportedField(String fieldName, String referenceFieldName, String targetFieldName) {
- return addImportedField(childSearch, fieldName, referenceFieldName, targetFieldName);
+ return addImportedField(childSchema, fieldName, referenceFieldName, targetFieldName);
}
- protected SearchModel addImportedField(Search search, String fieldName, String referenceFieldName, String targetFieldName) {
- super.addImportedField(search, fieldName, referenceFieldName, targetFieldName);
+ protected SearchModel addImportedField(Schema schema, String fieldName, String referenceFieldName, String targetFieldName) {
+ super.addImportedField(schema, fieldName, referenceFieldName, targetFieldName);
return this;
}
public void resolve() {
- resolve(grandParentSearch);
- resolve(parentSearch);
- importedFields = resolve(childSearch);
+ resolve(grandParentSchema);
+ resolve(parentSchema);
+ importedFields = resolve(childSchema);
}
- private static ImportedFields resolve(Search search) {
- assertNotNull(search.temporaryImportedFields().get());
- assertFalse(search.importedFields().isPresent());
- new ImportedFieldsResolver(search, null, null, null).process(true, false);
- assertFalse(search.temporaryImportedFields().isPresent());
- assertNotNull(search.importedFields().get());
- return search.importedFields().get();
+ private static ImportedFields resolve(Schema schema) {
+ assertNotNull(schema.temporaryImportedFields().get());
+ assertFalse(schema.importedFields().isPresent());
+ new ImportedFieldsResolver(schema, null, null, null).process(true, false);
+ assertFalse(schema.temporaryImportedFields().isPresent());
+ assertNotNull(schema.importedFields().get());
+ return schema.importedFields().get();
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
index 65010d96ec0..dbf099c61f0 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.document.ImportedComplexField;
@@ -24,7 +24,7 @@ public class ImportedFieldsTestCase {
@Test
public void fields_can_be_imported_from_referenced_document_types() throws ParseException {
- Search search = buildAdSearch(joinLines(
+ Schema schema = buildAdSearch(joinLines(
"search ad {",
" document ad {",
" field campaign_ref type reference<campaign> { indexing: attribute }",
@@ -33,9 +33,9 @@ public class ImportedFieldsTestCase {
" import field campaign_ref.budget as my_budget {}",
" import field person_ref.name as my_name {}",
"}"));
- assertEquals(2, search.importedFields().get().fields().size());
- assertSearchContainsImportedField("my_budget", "campaign_ref", "campaign", "budget", search);
- assertSearchContainsImportedField("my_name", "person_ref", "person", "name", search);
+ assertEquals(2, schema.importedFields().get().fields().size());
+ assertSearchContainsImportedField("my_budget", "campaign_ref", "campaign", "budget", schema);
+ assertSearchContainsImportedField("my_name", "person_ref", "person", "name", schema);
}
@Rule
@@ -55,9 +55,9 @@ public class ImportedFieldsTestCase {
@Test
public void fail_duplicate_import() throws ParseException {
exception.expect(IllegalArgumentException.class);
- exception.expectMessage("For search 'ad', import field as 'my_budget': Field already imported");
- Search search = buildAdSearch(joinLines(
- "search ad {",
+ exception.expectMessage("For schema 'ad', import field as 'my_budget': Field already imported");
+ Schema schema = buildAdSearch(joinLines(
+ "schema ad {",
" document ad {",
" field campaign_ref type reference<campaign> { indexing: attribute }",
" }",
@@ -66,7 +66,7 @@ public class ImportedFieldsTestCase {
"}"));
}
- private static Search buildAdSearch(String sdContent) throws ParseException {
+ private static Schema buildAdSearch(String sdContent) throws ParseException {
SearchBuilder builder = new SearchBuilder();
builder.importString(joinLines("search campaign {",
" document campaign {",
@@ -84,29 +84,29 @@ public class ImportedFieldsTestCase {
}
private static void checkStructImport(AncestorStructSdBuilder parentBuilder) throws ParseException {
- Search search = buildChildSearch(parentBuilder.build(), new ChildStructSdBuilder().build());
- checkImportedStructFields(search, parentBuilder);
+ Schema schema = buildChildSearch(parentBuilder.build(), new ChildStructSdBuilder().build());
+ checkImportedStructFields(schema, parentBuilder);
}
private static void checkNestedStructImport(AncestorStructSdBuilder grandParentBuilder) throws ParseException {
- Search search = buildChildSearch(grandParentBuilder.build(),
- new IntermediateParentStructSdBuilder().build(),
- new ChildStructSdBuilder().build());
- checkImportedStructFields(search, grandParentBuilder);
- }
-
- private static void checkImportedStructFields(Search search, AncestorStructSdBuilder ancestorBuilder) {
- assertEquals(3, search.importedFields().get().fields().size());
- checkImportedField("my_elem_array.name", "parent_ref", "parent", "elem_array.name", search, ancestorBuilder.elem_array_name_attr);
- checkImportedField("my_elem_array.weight", "parent_ref", "parent", "elem_array.weight", search, ancestorBuilder.elem_array_weight_attr);
- checkImportedField("my_elem_map.key", "parent_ref", "parent", "elem_map.key", search, ancestorBuilder.elem_map_key_attr);
- checkImportedField("my_elem_map.value.name", "parent_ref", "parent", "elem_map.value.name", search, ancestorBuilder.elem_map_value_name_attr);
- checkImportedField("my_elem_map.value.weight", "parent_ref", "parent", "elem_map.value.weight", search, ancestorBuilder.elem_map_value_weight_attr);
- checkImportedField("my_str_int_map.key", "parent_ref", "parent", "str_int_map.key", search, ancestorBuilder.str_int_map_key_attr);
- checkImportedField("my_str_int_map.value", "parent_ref", "parent", "str_int_map.value", search, ancestorBuilder.str_int_map_value_attr);
- checkImportedField("my_elem_array", "parent_ref", "parent", "elem_array", search, true);
- checkImportedField("my_elem_map", "parent_ref", "parent", "elem_map", search, true);
- checkImportedField("my_str_int_map", "parent_ref", "parent", "str_int_map", search, true);
+ Schema schema = buildChildSearch(grandParentBuilder.build(),
+ new IntermediateParentStructSdBuilder().build(),
+ new ChildStructSdBuilder().build());
+ checkImportedStructFields(schema, grandParentBuilder);
+ }
+
+ private static void checkImportedStructFields(Schema schema, AncestorStructSdBuilder ancestorBuilder) {
+ assertEquals(3, schema.importedFields().get().fields().size());
+ checkImportedField("my_elem_array.name", "parent_ref", "parent", "elem_array.name", schema, ancestorBuilder.elem_array_name_attr);
+ checkImportedField("my_elem_array.weight", "parent_ref", "parent", "elem_array.weight", schema, ancestorBuilder.elem_array_weight_attr);
+ checkImportedField("my_elem_map.key", "parent_ref", "parent", "elem_map.key", schema, ancestorBuilder.elem_map_key_attr);
+ checkImportedField("my_elem_map.value.name", "parent_ref", "parent", "elem_map.value.name", schema, ancestorBuilder.elem_map_value_name_attr);
+ checkImportedField("my_elem_map.value.weight", "parent_ref", "parent", "elem_map.value.weight", schema, ancestorBuilder.elem_map_value_weight_attr);
+ checkImportedField("my_str_int_map.key", "parent_ref", "parent", "str_int_map.key", schema, ancestorBuilder.str_int_map_key_attr);
+ checkImportedField("my_str_int_map.value", "parent_ref", "parent", "str_int_map.value", schema, ancestorBuilder.str_int_map_value_attr);
+ checkImportedField("my_elem_array", "parent_ref", "parent", "elem_array", schema, true);
+ checkImportedField("my_elem_map", "parent_ref", "parent", "elem_map", schema, true);
+ checkImportedField("my_str_int_map", "parent_ref", "parent", "str_int_map", schema, true);
}
@Test
@@ -308,7 +308,7 @@ public class ImportedFieldsTestCase {
}
}
- private static Search buildChildSearch(String parentSdContent, String sdContent) throws ParseException {
+ private static Schema buildChildSearch(String parentSdContent, String sdContent) throws ParseException {
SearchBuilder builder = new SearchBuilder();
builder.importString(parentSdContent);
builder.importString(sdContent);
@@ -316,7 +316,7 @@ public class ImportedFieldsTestCase {
return builder.getSearch("child");
}
- private static Search buildChildSearch(String grandParentSdContent, String parentSdContent, String sdContent) throws ParseException {
+ private static Schema buildChildSearch(String grandParentSdContent, String parentSdContent, String sdContent) throws ParseException {
SearchBuilder builder = new SearchBuilder();
builder.importString(grandParentSdContent);
builder.importString(parentSdContent);
@@ -389,19 +389,19 @@ public class ImportedFieldsTestCase {
}
private static void checkPosImport(ParentPosSdBuilder parentBuilder, DescendantPosSdBuilder childBuilder) throws ParseException {
- Search search = buildChildSearch(parentBuilder.build(), childBuilder.build());
- checkImportedPosFields(search);
+ Schema schema = buildChildSearch(parentBuilder.build(), childBuilder.build());
+ checkImportedPosFields(schema);
}
private static void checkNestedPosImport(GrandParentPosSdBuilder grandParentBuilder, DescendantPosSdBuilder childBuilder) throws ParseException {
- Search search = buildChildSearch(grandParentBuilder.build(), new IntermediateParentPosSdBuilder().build(), childBuilder.build());
- checkImportedPosFields(search);
+ Schema schema = buildChildSearch(grandParentBuilder.build(), new IntermediateParentPosSdBuilder().build(), childBuilder.build());
+ checkImportedPosFields(schema);
}
- private static void checkImportedPosFields(Search search) {
- assertEquals(2, search.importedFields().get().fields().size());
- assertSearchContainsImportedField("my_pos_zcurve", "parent_ref", "parent", "pos_zcurve", search);
- assertSearchContainsImportedField("my_pos", "parent_ref", "parent", "pos", search);
+ private static void checkImportedPosFields(Schema schema) {
+ assertEquals(2, schema.importedFields().get().fields().size());
+ assertSearchContainsImportedField("my_pos_zcurve", "parent_ref", "parent", "pos_zcurve", schema);
+ assertSearchContainsImportedField("my_pos", "parent_ref", "parent", "pos", schema);
}
@Test
@@ -421,22 +421,22 @@ public class ImportedFieldsTestCase {
checkPosImport(new ParentPosSdBuilder(), new ChildPosSdBuilder().import_pos_zcurve_before(true));
}
- private static ImportedField getImportedField(String name, Search search) {
+ private static ImportedField getImportedField(String name, Schema schema) {
if (name.contains(".")) {
- assertNull(search.importedFields().get().fields().get(name));
+ assertNull(schema.importedFields().get().fields().get(name));
String superFieldName = name.substring(0,name.indexOf("."));
String subFieldName = name.substring(name.indexOf(".")+1);
- ImportedField superField = search.importedFields().get().fields().get(superFieldName);
+ ImportedField superField = schema.importedFields().get().fields().get(superFieldName);
if (superField != null && superField instanceof ImportedComplexField) {
return ((ImportedComplexField)superField).getNestedField(subFieldName);
}
return null;
}
- return search.importedFields().get().fields().get(name);
+ return schema.importedFields().get().fields().get(name);
}
- private static void assertSearchNotContainsImportedField(String fieldName, Search search) {
- ImportedField importedField = getImportedField(fieldName, search);
+ private static void assertSearchNotContainsImportedField(String fieldName, Schema schema) {
+ ImportedField importedField = getImportedField(fieldName, schema);
assertNull(importedField);
}
@@ -444,8 +444,8 @@ public class ImportedFieldsTestCase {
String referenceFieldName,
String referenceDocType,
String targetFieldName,
- Search search) {
- ImportedField importedField = getImportedField(fieldName, search);
+ Schema schema) {
+ ImportedField importedField = getImportedField(fieldName, schema);
assertNotNull(importedField);
assertEquals(fieldName, importedField.fieldName());
assertEquals(referenceFieldName, importedField.reference().referenceField().getName());
@@ -454,11 +454,11 @@ public class ImportedFieldsTestCase {
}
private static void checkImportedField(String fieldName, String referenceFieldName, String referenceDocType,
- String targetFieldName, Search search, boolean present) {
+ String targetFieldName, Schema schema, boolean present) {
if (present) {
- assertSearchContainsImportedField(fieldName, referenceFieldName, referenceDocType, targetFieldName, search);
+ assertSearchContainsImportedField(fieldName, referenceFieldName, referenceDocType, targetFieldName, schema);
} else {
- assertSearchNotContainsImportedField(fieldName, search);
+ assertSearchNotContainsImportedField(fieldName, schema);
}
}
@@ -479,7 +479,7 @@ public class ImportedFieldsTestCase {
checkImportedField("entries_from_b.value", "ref_parent_b", "parent_b", "entries.value", child, true);
}
- private void assertParentContainsEntriesAttributes(Search parent) {
+ private void assertParentContainsEntriesAttributes(Schema parent) {
var attrs = new AttributeFields(parent);
assertTrue(attrs.containsAttribute("entries.key"));
assertTrue(attrs.containsAttribute("entries.value"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
index 13581a1e9e6..aad7a725b9e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.Index;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.BooleanIndexDefinition;
@@ -153,9 +153,9 @@ public class IndexingScriptRewriterTestCase extends SchemaTestCase {
private static ScriptExpression processField(SDField unprocessedField) {
SDDocumentType sdoc = new SDDocumentType("test");
sdoc.addField(unprocessedField);
- Search search = new Search("test");
- search.addDocument(sdoc);
- new Processing().process(search, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
+ Schema schema = new Schema("test");
+ schema.addDocument(sdoc);
+ new Processing().process(schema, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles(), true, false);
return unprocessedField.getIndexingScript();
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
index 91f719c4eb8..5df8f20b5c7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.SDField;
@@ -24,36 +24,36 @@ public class IntegerIndex2AttributeTestCase extends SchemaTestCase {
@Test
public void testIntegerIndex2Attribute() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/integerindex2attribute.sd");
- new IntegerIndex2Attribute(search, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles()).process(true, false);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/integerindex2attribute.sd");
+ new IntegerIndex2Attribute(schema, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles()).process(true, false);
SDField f;
- f = search.getConcreteField("s1");
+ f = schema.getConcreteField("s1");
assertTrue(f.getAttributes().isEmpty());
assertTrue(f.existsIndex("s1"));
- f = search.getConcreteField("s2");
+ f = schema.getConcreteField("s2");
assertEquals(f.getAttributes().size(), 1);
assertTrue(f.existsIndex("s2"));
- f = search.getConcreteField("as1");
+ f = schema.getConcreteField("as1");
assertTrue(f.getAttributes().isEmpty());
assertTrue(f.existsIndex("as1"));
- f = search.getConcreteField("as2");
+ f = schema.getConcreteField("as2");
assertEquals(f.getAttributes().size(), 1);
assertTrue(f.existsIndex("as2"));
- f = search.getConcreteField("i1");
+ f = schema.getConcreteField("i1");
assertEquals(f.getAttributes().size(), 1);
assertFalse(f.existsIndex("i1"));
- f = search.getConcreteField("i2");
+ f = schema.getConcreteField("i2");
assertEquals(f.getAttributes().size(), 1);
assertFalse(f.existsIndex("i2"));
- f = search.getConcreteField("ai1");
- assertEquals(search.getConcreteField("ai1").getAttributes().size(), 1);
- assertFalse(search.getConcreteField("ai1").existsIndex("ai1"));
- f = search.getConcreteField("ai2");
+ f = schema.getConcreteField("ai1");
+ assertEquals(schema.getConcreteField("ai1").getAttributes().size(), 1);
+ assertFalse(schema.getConcreteField("ai1").existsIndex("ai1"));
+ f = schema.getConcreteField("ai2");
assertEquals(f.getAttributes().size(), 1);
assertFalse(f.existsIndex("ai2"));
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
index ab98706fd44..80c3fa48d4e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -168,11 +168,11 @@ public class MatchedElementsOnlyResolverTestCase {
assertEquals(expSourceField, field.getSingleSource());
}
- private Search buildSearch(String field) throws ParseException {
+ private Schema buildSearch(String field) throws ParseException {
return buildSearch(field, "");
}
- private Search buildSearch(String field, String summary) throws ParseException {
+ private Schema buildSearch(String field, String summary) throws ParseException {
var builder = new SearchBuilder(new RankProfileRegistry());
builder.importString(joinLines("search test {",
" document test {",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
index 8d8a19796ba..73b4b9a7e53 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.document.Matching;
@@ -25,18 +25,18 @@ public class NGramTestCase extends SchemaTestCase {
@Test
public void testNGram() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/ngram.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/ngram.sd");
+ assertNotNull(schema);
- SDField gram1 = search.getConcreteField("gram_1");
+ SDField gram1 = schema.getConcreteField("gram_1");
assertEquals(Matching.Type.GRAM, gram1.getMatching().getType());
assertEquals(1, gram1.getMatching().getGramSize());
- SDField gram2 = search.getConcreteField("gram_2");
+ SDField gram2 = schema.getConcreteField("gram_2");
assertEquals(Matching.Type.GRAM, gram2.getMatching().getType());
assertEquals(-1, gram2.getMatching().getGramSize()); // Not set explicitly
- SDField gram3=search.getConcreteField("gram_3");
+ SDField gram3= schema.getConcreteField("gram_3");
assertEquals(Matching.Type.GRAM,gram3.getMatching().getType());
assertEquals(3, gram3.getMatching().getGramSize());
@@ -55,7 +55,7 @@ public class NGramTestCase extends SchemaTestCase {
@Test
public void testInvalidNGramSetting1() throws IOException, ParseException {
try {
- Search search = SearchBuilder.buildFromFile("src/test/examples/invalidngram1.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/invalidngram1.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
@@ -66,7 +66,7 @@ public class NGramTestCase extends SchemaTestCase {
@Test
public void testInvalidNGramSetting2() throws IOException, ParseException {
try {
- Search search = SearchBuilder.buildFromFile("src/test/examples/invalidngram2.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/invalidngram2.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
@@ -77,7 +77,7 @@ public class NGramTestCase extends SchemaTestCase {
@Test
public void testInvalidNGramSetting3() throws IOException, ParseException {
try {
- Search search = SearchBuilder.buildFromFile("src/test/examples/invalidngram3.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/invalidngram3.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
index 59f0916f912..a01fdd8725d 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
@@ -2,7 +2,6 @@
package com.yahoo.searchdefinition.processing;
import com.google.common.collect.ImmutableMap;
-import com.yahoo.config.application.api.ApplicationPackage;
import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.model.deploy.TestProperties;
import com.yahoo.config.model.test.MockApplicationPackage;
@@ -12,7 +11,7 @@ import com.yahoo.document.TemporaryStructuredDataType;
import com.yahoo.searchdefinition.Application;
import com.yahoo.searchdefinition.DocumentReference;
import com.yahoo.searchdefinition.DocumentReferences;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.TestableDeployLogger;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -25,16 +24,16 @@ import com.yahoo.searchdefinition.document.TemporarySDField;
public class ParentChildSearchModel {
private final Application application = new Application(MockApplicationPackage.createEmpty());
- public Search parentSearch;
- public Search childSearch;
+ public Schema parentSchema;
+ public Schema childSchema;
ParentChildSearchModel() {
- parentSearch = createSearch("parent");
- childSearch = createSearch("child");
+ parentSchema = createSearch("parent");
+ childSchema = createSearch("child");
}
- protected Search createSearch(String name) {
- Search result = new Search(name, application, new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ protected Schema createSearch(String name) {
+ Schema result = new Schema(name, application, new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
result.addDocument(new SDDocumentType(name));
return result;
}
@@ -49,7 +48,7 @@ public class ParentChildSearchModel {
return new TemporarySDField(fieldName, ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create(parentType)));
}
- protected static void addRefField(Search child, Search parent, String fieldName) {
+ protected static void addRefField(Schema child, Schema parent, String fieldName) {
SDField refField = createRefField(parent.getName(), fieldName);
child.getDocument().addField(refField);
child.getDocument().setDocumentReferences(new DocumentReferences(ImmutableMap.of(refField.getName(),
@@ -57,11 +56,11 @@ public class ParentChildSearchModel {
}
protected ParentChildSearchModel addImportedField(String fieldName, String referenceFieldName, String targetFieldName) {
- return addImportedField(childSearch, fieldName, referenceFieldName, targetFieldName);
+ return addImportedField(childSchema, fieldName, referenceFieldName, targetFieldName);
}
- protected ParentChildSearchModel addImportedField(Search search, String fieldName, String referenceFieldName, String targetFieldName) {
- search.temporaryImportedFields().get().add(new TemporaryImportedField(fieldName, referenceFieldName, targetFieldName));
+ protected ParentChildSearchModel addImportedField(Schema schema, String fieldName, String referenceFieldName, String targetFieldName) {
+ schema.temporaryImportedFields().get().add(new TemporaryImportedField(fieldName, referenceFieldName, targetFieldName));
return this;
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
index bcec2bfacfa..e6f00646758 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.document.DataType;
import com.yahoo.document.DocumentType;
import com.yahoo.document.PositionDataType;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.FieldSet;
@@ -31,20 +31,20 @@ public class PositionTestCase {
"src/test/examples/position_base.sd",
"src/test/examples/position_inherited.sd"));
- Search search = sb.getSearch("position_inherited");
- FieldSet fieldSet = search.getDocument().getFieldSets().builtInFieldSets().get(DocumentType.DOCUMENT);
+ Schema schema = sb.getSearch("position_inherited");
+ FieldSet fieldSet = schema.getDocument().getFieldSets().builtInFieldSets().get(DocumentType.DOCUMENT);
assertFalse(fieldSet.getFieldNames().contains(PositionDataType.getZCurveFieldName("pos")));
}
@Test
public void requireThatPositionCanBeAttribute() throws Exception {
- Search search = SearchBuilder.buildFromFile("src/test/examples/position_attribute.sd");
- assertNull(search.getAttribute("pos"));
- assertNull(search.getAttribute("pos.x"));
- assertNull(search.getAttribute("pos.y"));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/position_attribute.sd");
+ assertNull(schema.getAttribute("pos"));
+ assertNull(schema.getAttribute("pos.x"));
+ assertNull(schema.getAttribute("pos.y"));
- assertPositionAttribute(search, "pos", Attribute.CollectionType.SINGLE);
- assertPositionSummary(search, "pos", false);
+ assertPositionAttribute(schema, "pos", Attribute.CollectionType.SINGLE);
+ assertPositionSummary(schema, "pos", false);
}
@Test
@@ -60,13 +60,13 @@ public class PositionTestCase {
@Test
public void requireThatSummaryAloneDoesNotCreateZCurve() throws Exception {
- Search search = SearchBuilder.buildFromFile("src/test/examples/position_summary.sd");
- assertNull(search.getAttribute("pos"));
- assertNull(search.getAttribute("pos.x"));
- assertNull(search.getAttribute("pos.y"));
- assertNull(search.getAttribute("pos.zcurve"));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/position_summary.sd");
+ assertNull(schema.getAttribute("pos"));
+ assertNull(schema.getAttribute("pos.x"));
+ assertNull(schema.getAttribute("pos.y"));
+ assertNull(schema.getAttribute("pos.zcurve"));
- SummaryField summary = search.getSummaryField("pos");
+ SummaryField summary = schema.getSummaryField("pos");
assertNotNull(summary);
assertEquals(2, summary.getSourceCount());
Iterator<SummaryField.Source> it = summary.getSources().iterator();
@@ -74,61 +74,61 @@ public class PositionTestCase {
assertEquals("pos.y", it.next().getName());
assertEquals(SummaryTransform.NONE, summary.getTransform());
- assertNull(search.getSummaryField("pos_ext.distance"));
+ assertNull(schema.getSummaryField("pos_ext.distance"));
}
@Test
public void requireThatExtraFieldCanBePositionAttribute() throws Exception {
- Search search = SearchBuilder.buildFromFile("src/test/examples/position_extra.sd");
- assertNull(search.getAttribute("pos_ext"));
- assertNull(search.getAttribute("pos_ext.x"));
- assertNull(search.getAttribute("pos_ext.y"));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/position_extra.sd");
+ assertNull(schema.getAttribute("pos_ext"));
+ assertNull(schema.getAttribute("pos_ext.x"));
+ assertNull(schema.getAttribute("pos_ext.y"));
- assertPositionAttribute(search, "pos_ext", Attribute.CollectionType.SINGLE);
- assertPositionSummary(search, "pos_ext", false);
+ assertPositionAttribute(schema, "pos_ext", Attribute.CollectionType.SINGLE);
+ assertPositionSummary(schema, "pos_ext", false);
}
@Test
public void requireThatPositionArrayIsSupported() throws Exception {
- Search search = SearchBuilder.buildFromFile("src/test/examples/position_array.sd");
- assertNull(search.getAttribute("pos"));
- assertNull(search.getAttribute("pos.x"));
- assertNull(search.getAttribute("pos.y"));
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/position_array.sd");
+ assertNull(schema.getAttribute("pos"));
+ assertNull(schema.getAttribute("pos.x"));
+ assertNull(schema.getAttribute("pos.y"));
- assertPositionAttribute(search, "pos", Attribute.CollectionType.ARRAY);
- assertPositionSummary(search, "pos", true);
+ assertPositionAttribute(schema, "pos", Attribute.CollectionType.ARRAY);
+ assertPositionSummary(schema, "pos", true);
}
- private static void assertPositionAttribute(Search search, String fieldName, Attribute.CollectionType type) {
- Attribute attribute = search.getAttribute(PositionDataType.getZCurveFieldName(fieldName));
+ private static void assertPositionAttribute(Schema schema, String fieldName, Attribute.CollectionType type) {
+ Attribute attribute = schema.getAttribute(PositionDataType.getZCurveFieldName(fieldName));
assertNotNull(attribute);
assertTrue(attribute.isPosition());
assertEquals(attribute.getCollectionType(), type);
assertEquals(attribute.getType(), Attribute.Type.LONG);
}
- private static void assertPositionSummary(Search search, String fieldName, boolean isArray) {
- assertSummaryField(search,
+ private static void assertPositionSummary(Schema schema, String fieldName, boolean isArray) {
+ assertSummaryField(schema,
fieldName,
PositionDataType.getZCurveFieldName(fieldName),
(isArray ? DataType.getArray(PositionDataType.INSTANCE) : PositionDataType.INSTANCE),
SummaryTransform.GEOPOS);
- assertSummaryField(search,
+ assertSummaryField(schema,
PositionDataType.getDistanceSummaryFieldName(fieldName),
PositionDataType.getZCurveFieldName(fieldName),
DataType.INT,
SummaryTransform.DISTANCE);
- assertSummaryField(search,
+ assertSummaryField(schema,
PositionDataType.getPositionSummaryFieldName(fieldName),
PositionDataType.getZCurveFieldName(fieldName),
DataType.getArray(DataType.STRING),
SummaryTransform.POSITIONS);
}
- private static void assertSummaryField(Search search, String fieldName, String sourceName, DataType dataType,
+ private static void assertSummaryField(Schema schema, String fieldName, String sourceName, DataType dataType,
SummaryTransform transform)
{
- SummaryField summary = search.getSummaryField(fieldName);
+ SummaryField summary = schema.getSummaryField(fieldName);
assertNotNull(summary);
assertEquals(1, summary.getSourceCount());
assertEquals(sourceName, summary.getSingleSource());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
index dc7305f55c3..0aa4c3917d2 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -17,6 +17,6 @@ import java.io.IOException;
public class RankModifierTestCase extends SchemaTestCase {
@Test
public void testLiteral() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/rankmodifier/literal.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/rankmodifier/literal.sd");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
index 1b8160e0123..7ffb20859e9 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
@@ -12,7 +12,7 @@ import com.yahoo.path.Path;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels;
@@ -43,7 +43,7 @@ class RankProfileSearchFixture {
new XGBoostImporter());
private final RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
private final QueryProfileRegistry queryProfileRegistry;
- private final Search search;
+ private final Schema schema;
private final Map<String, RankProfile> compiledRankProfiles = new HashMap<>();
private final ExecutorService executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
@@ -79,7 +79,7 @@ class RankProfileSearchFixture {
"}";
builder.importString(sdContent);
builder.build();
- search = builder.getSearch();
+ schema = builder.getSearch();
}
public void assertFirstPhaseExpression(String expExpression, String rankProfile) {
@@ -106,7 +106,7 @@ class RankProfileSearchFixture {
}
public RankProfile compileRankProfile(String rankProfile, Path applicationDir) {
- RankProfile compiled = rankProfileRegistry.get(search, rankProfile)
+ RankProfile compiled = rankProfileRegistry.get(schema, rankProfile)
.compile(queryProfileRegistry,
new ImportedMlModels(applicationDir.toFile(), executor, importers));
compiledRankProfiles.put(rankProfile, compiled);
@@ -115,7 +115,7 @@ class RankProfileSearchFixture {
/** Returns the given uncompiled profile */
public RankProfile rankProfile(String rankProfile) {
- return rankProfileRegistry.get(search, rankProfile);
+ return rankProfileRegistry.get(schema, rankProfile);
}
/** Returns the given compiled profile, or null if not compiled yet or not present at all */
@@ -123,6 +123,6 @@ class RankProfileSearchFixture {
return compiledRankProfiles.get(rankProfile);
}
- public Search search() { return search; }
+ public Schema search() { return schema; }
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
index 407a5877976..3f77741aa2a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile.RankProperty;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -21,16 +21,16 @@ public class RankPropertyVariablesTestCase extends SchemaTestCase {
@Test
public void testRankPropVariables() throws IOException, ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- Search search = SearchBuilder.buildFromFile("src/test/examples/rankpropvars.sd",
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/rankpropvars.sd",
new BaseDeployLogger(),
rankProfileRegistry,
new QueryProfileRegistry());
- assertRankPropEquals(rankProfileRegistry.get(search, "other").getRankProperties(), "$testvar1", "foo");
- assertRankPropEquals(rankProfileRegistry.get(search, "other").getRankProperties(), "$testvar_2", "bar");
- assertRankPropEquals(rankProfileRegistry.get(search, "other").getRankProperties(), "$testvarOne23", "baz");
- assertRankPropEquals(rankProfileRegistry.get(search, "another").getRankProperties(), "$Testvar1", "1");
- assertRankPropEquals(rankProfileRegistry.get(search, "another").getRankProperties(), "$Testvar_4", "4");
- assertRankPropEquals(rankProfileRegistry.get(search, "another").getRankProperties(), "$testvarFour23", "234234.234");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvar1", "foo");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvar_2", "bar");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvarOne23", "baz");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "another").getRankProperties(), "$Testvar1", "1");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "another").getRankProperties(), "$Testvar_4", "4");
+ assertRankPropEquals(rankProfileRegistry.get(schema, "another").getRankProperties(), "$testvarFour23", "234234.234");
}
private void assertRankPropEquals(List<RankProperty> props, String key, String val) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
index dcd7e2426c3..e77787e22ca 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
@@ -8,7 +8,7 @@ import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.expressiontransforms.RankProfileTransformContext;
import com.yahoo.searchdefinition.expressiontransforms.TokenTransformer;
@@ -90,8 +90,8 @@ public class RankingExpressionWithTransformerTokensTestCase {
SearchBuilder searchBuilder = new SearchBuilder(application, new MockFileRegistry(), new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfileRegistry);
searchBuilder.importString(sdContent);
searchBuilder.build();
- Search search = searchBuilder.getSearch();
- RankProfile rp = rankProfileRegistry.get(search, "my_profile");
+ Schema schema = searchBuilder.getSearch();
+ RankProfile rp = rankProfileRegistry.get(schema, "my_profile");
return new RankProfileTransformContext(rp, queryProfileRegistry, Collections.emptyMap(), null, Collections.emptyMap(), Collections.emptyMap());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
index 27ea680d97a..a76379d185f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
@@ -9,8 +9,8 @@ import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.LargeRankExpressions;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SchemaTestCase;
-import com.yahoo.searchdefinition.Search;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.searchdefinition.derived.AttributeFields;
@@ -30,7 +30,7 @@ import static org.junit.Assert.assertTrue;
public class RankingExpressionsTestCase extends SchemaTestCase {
- private static Search createSearch(String dir, ModelContext.Properties deployProperties, RankProfileRegistry rankProfileRegistry) throws IOException, ParseException {
+ private static Schema createSearch(String dir, ModelContext.Properties deployProperties, RankProfileRegistry rankProfileRegistry) throws IOException, ParseException {
return SearchBuilder.createFromDirectory(dir, new MockFileRegistry(), new TestableDeployLogger(), deployProperties, rankProfileRegistry).getSearch();
}
@@ -38,8 +38,8 @@ public class RankingExpressionsTestCase extends SchemaTestCase {
public void testFunctions() throws IOException, ParseException {
ModelContext.Properties deployProperties = new TestProperties();
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- Search search = createSearch("src/test/examples/rankingexpressionfunction", deployProperties, rankProfileRegistry);
- RankProfile functionsRankProfile = rankProfileRegistry.get(search, "macros");
+ Schema schema = createSearch("src/test/examples/rankingexpressionfunction", deployProperties, rankProfileRegistry);
+ RankProfile functionsRankProfile = rankProfileRegistry.get(schema, "macros");
Map<String, RankProfile.RankingExpressionFunction> functions = functionsRankProfile.getFunctions();
assertEquals(2, functions.get("titlematch$").function().arguments().size());
assertEquals("var1", functions.get("titlematch$").function().arguments().get(0));
@@ -52,7 +52,7 @@ public class RankingExpressionsTestCase extends SchemaTestCase {
assertEquals(0, functions.get("artistmatch").function().arguments().size());
RawRankProfile rawRankProfile = new RawRankProfile(functionsRankProfile, new LargeRankExpressions(new MockFileRegistry()), new QueryProfileRegistry(),
- new ImportedMlModels(), new AttributeFields(search), deployProperties);
+ new ImportedMlModels(), new AttributeFields(schema), deployProperties);
List<Pair<String, String>> rankProperties = rawRankProfile.configProperties();
assertEquals(6, rankProperties.size());
@@ -75,8 +75,8 @@ public class RankingExpressionsTestCase extends SchemaTestCase {
@Test(expected = IllegalArgumentException.class)
public void testThatIncludingFileInSubdirFails() throws IOException, ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- Search search = createSearch("src/test/examples/rankingexpressioninfile", new TestProperties(), registry);
- new DerivedConfiguration(search, registry); // rank profile parsing happens during deriving
+ Schema schema = createSearch("src/test/examples/rankingexpressioninfile", new TestProperties(), registry);
+ new DerivedConfiguration(schema, registry); // rank profile parsing happens during deriving
}
private void verifyProfile(RankProfile profile, List<String> expectedFunctions, List<Pair<String, String>> rankProperties,
@@ -96,20 +96,20 @@ public class RankingExpressionsTestCase extends SchemaTestCase {
}
}
- private void verifySearch(Search search, RankProfileRegistry rankProfileRegistry, LargeRankExpressions largeExpressions,
+ private void verifySearch(Schema schema, RankProfileRegistry rankProfileRegistry, LargeRankExpressions largeExpressions,
QueryProfileRegistry queryProfiles, ImportedMlModels models, ModelContext.Properties properties)
{
- AttributeFields attributes = new AttributeFields(search);
+ AttributeFields attributes = new AttributeFields(schema);
- verifyProfile(rankProfileRegistry.get(search, "base"), Arrays.asList("large_f", "large_m"),
- Arrays.asList(new Pair<>("rankingExpression(large_f).expressionName", "base.large_f"), new Pair<>("rankingExpression(large_m).expressionName", "base.large_m")),
- largeExpressions, queryProfiles, models, attributes, properties);
+ verifyProfile(rankProfileRegistry.get(schema, "base"), Arrays.asList("large_f", "large_m"),
+ Arrays.asList(new Pair<>("rankingExpression(large_f).expressionName", "base.large_f"), new Pair<>("rankingExpression(large_m).expressionName", "base.large_m")),
+ largeExpressions, queryProfiles, models, attributes, properties);
for (String child : Arrays.asList("child_a", "child_b")) {
- verifyProfile(rankProfileRegistry.get(search, child), Arrays.asList("large_f", "large_m", "large_local_f", "large_local_m"),
- Arrays.asList(new Pair<>("rankingExpression(large_f).expressionName", child + ".large_f"), new Pair<>("rankingExpression(large_m).expressionName", child + ".large_m"),
+ verifyProfile(rankProfileRegistry.get(schema, child), Arrays.asList("large_f", "large_m", "large_local_f", "large_local_m"),
+ Arrays.asList(new Pair<>("rankingExpression(large_f).expressionName", child + ".large_f"), new Pair<>("rankingExpression(large_m).expressionName", child + ".large_m"),
new Pair<>("rankingExpression(large_local_f).expressionName", child + ".large_local_f"), new Pair<>("rankingExpression(large_local_m).expressionName", child + ".large_local_m"),
new Pair<>("vespa.rank.firstphase", "rankingExpression(firstphase)"), new Pair<>("rankingExpression(firstphase).expressionName", child + ".firstphase")),
- largeExpressions, queryProfiles, models, attributes, properties);
+ largeExpressions, queryProfiles, models, attributes, properties);
}
}
@@ -120,9 +120,9 @@ public class RankingExpressionsTestCase extends SchemaTestCase {
LargeRankExpressions largeExpressions = new LargeRankExpressions(new MockFileRegistry());
QueryProfileRegistry queryProfiles = new QueryProfileRegistry();
ImportedMlModels models = new ImportedMlModels();
- Search search = createSearch("src/test/examples/largerankingexpressions", properties, rankProfileRegistry);
- verifySearch(search, rankProfileRegistry, largeExpressions, queryProfiles, models, properties);
+ Schema schema = createSearch("src/test/examples/largerankingexpressions", properties, rankProfileRegistry);
+ verifySearch(schema, rankProfileRegistry, largeExpressions, queryProfiles, models, properties);
// Need to verify that second derivation works as that will happen if same sd is used in multiple content clusters
- verifySearch(search, rankProfileRegistry, largeExpressions, queryProfiles, models, properties);
+ verifySearch(schema, rankProfileRegistry, largeExpressions, queryProfiles, models, properties);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
index ad38e65e655..41b9d480921 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.searchdefinition.DocumentGraphValidator;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -50,9 +50,9 @@ public class ReferenceFieldTestCase {
builder.importString(salespersonSdContent);
builder.importString(adSdContent);
builder.build();
- Search search = builder.getSearch("ad");
- assertSearchContainsReferenceField("campaign_ref", "campaign", search.getDocument());
- assertSearchContainsReferenceField("salesperson_ref", "salesperson", search.getDocument());
+ Schema schema = builder.getSearch("ad");
+ assertSearchContainsReferenceField("campaign_ref", "campaign", schema.getDocument());
+ assertSearchContainsReferenceField("salesperson_ref", "salesperson", schema.getDocument());
}
@Test
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocumentTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java
index 4fe03fe0faa..53ca4bf10a5 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SearchMustHaveDocumentTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java
@@ -12,7 +12,7 @@ import static org.junit.Assert.fail;
/**
* @author hmusum
*/
-public class SearchMustHaveDocumentTest {
+public class SchemaMustHaveDocumentTest {
@Test
public void requireErrorWhenMissingDocument() throws IOException, ParseException {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
index 71b4db60886..e0593aef1e3 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
@@ -1,7 +1,7 @@
// Copyright 2019 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -39,7 +39,7 @@ public class SummaryConsistencyTestCase {
"",
"}"
);
- Search search = SearchBuilder.createFromString(sd).getSearch();
- assertEquals(SummaryTransform.ATTRIBUTECOMBINER, search.getSummaryField("elem_array_unfiltered").getTransform());
+ Schema schema = SearchBuilder.createFromString(sd).getSearch();
+ assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("elem_array_unfiltered").getTransform());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
index adb6cc03d5b..da1037b6fd7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -50,11 +50,11 @@ public class SummaryFieldsMustHaveValidSourceTestCase extends SchemaTestCase {
@Test
public void requireThatDocumentIdIsAllowedToPass() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/documentidinsummary.sd");
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/documentidinsummary.sd");
BaseDeployLogger deployLogger = new BaseDeployLogger();
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- new SummaryFieldsMustHaveValidSource(search, deployLogger, rankProfileRegistry, new QueryProfiles()).process(true, false);
- assertEquals("documentid", search.getSummary("withid").getSummaryField("w").getSingleSource());
+ new SummaryFieldsMustHaveValidSource(schema, deployLogger, rankProfileRegistry, new QueryProfiles()).process(true, false);
+ assertEquals("documentid", schema.getSummary("withid").getSummaryField("w").getSingleSource());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
index 8714568338f..19ae565ed07 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
@@ -3,7 +3,6 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.collections.Pair;
import com.yahoo.component.ComponentId;
-import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.model.deploy.TestProperties;
import com.yahoo.search.query.profile.QueryProfileRegistry;
@@ -14,7 +13,7 @@ import com.yahoo.search.query.profile.types.QueryProfileTypeRegistry;
import com.yahoo.searchdefinition.LargeRankExpressions;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.derived.AttributeFields;
@@ -199,7 +198,7 @@ public class TensorTransformTestCase extends SchemaTestCase {
" }\n" +
"}\n");
builder.build(true);
- Search s = builder.getSearch();
+ Schema s = builder.getSearch();
RankProfile test = rankProfileRegistry.get(s, "test").compile(queryProfiles, new ImportedMlModels());
List<Pair<String, String>> testRankProperties = new RawRankProfile(test,
new LargeRankExpressions(new MockFileRegistry()),
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
index ab6a547d9e5..4c56d2a5ab0 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
@@ -8,7 +8,7 @@ import com.yahoo.document.DataType;
import com.yahoo.document.Field;
import com.yahoo.searchdefinition.Application;
import com.yahoo.searchdefinition.DocumentReference;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.derived.TestableDeployLogger;
import com.yahoo.searchdefinition.document.ImportedField;
import com.yahoo.searchdefinition.document.ImportedFields;
@@ -36,11 +36,11 @@ public class ValidateFieldTypesTest {
@Test
public void throws_exception_if_type_of_document_field_does_not_match_summary_field() {
- Search search = createSearchWithDocument(DOCUMENT_NAME);
- search.setImportedFields(createSingleImportedField(IMPORTED_FIELD_NAME, DataType.INT));
- search.addSummary(createDocumentSummary(IMPORTED_FIELD_NAME, DataType.STRING, search));
+ Schema schema = createSearchWithDocument(DOCUMENT_NAME);
+ schema.setImportedFields(createSingleImportedField(IMPORTED_FIELD_NAME, DataType.INT));
+ schema.addSummary(createDocumentSummary(IMPORTED_FIELD_NAME, DataType.STRING, schema));
- ValidateFieldTypes validator = new ValidateFieldTypes(search, null, null, null);
+ ValidateFieldTypes validator = new ValidateFieldTypes(schema, null, null, null);
exceptionRule.expect(IllegalArgumentException.class);
exceptionRule.expectMessage(
"For search '" + DOCUMENT_NAME + "', field '" + IMPORTED_FIELD_NAME + "': Incompatible types. " +
@@ -48,27 +48,27 @@ public class ValidateFieldTypesTest {
validator.process(true, false);
}
- private static Search createSearch(String documentType) {
- return new Search(documentType, new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ private static Schema createSearch(String documentType) {
+ return new Schema(documentType, new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
}
- private static Search createSearchWithDocument(String documentName) {
- Search search = createSearch(documentName);
- SDDocumentType document = new SDDocumentType(documentName, search);
- search.addDocument(document);
- return search;
+ private static Schema createSearchWithDocument(String documentName) {
+ Schema schema = createSearch(documentName);
+ SDDocumentType document = new SDDocumentType(documentName, schema);
+ schema.addDocument(document);
+ return schema;
}
private static ImportedFields createSingleImportedField(String fieldName, DataType dataType) {
- Search targetSearch = createSearch("target_doc");
+ Schema targetSchema = createSearch("target_doc");
SDField targetField = new SDField("target_field", dataType);
- DocumentReference documentReference = new DocumentReference(new Field("reference_field"), targetSearch);
+ DocumentReference documentReference = new DocumentReference(new Field("reference_field"), targetSchema);
ImportedField importedField = new ImportedSimpleField(fieldName, documentReference, targetField);
return new ImportedFields(Collections.singletonMap(fieldName, importedField));
}
- private static DocumentSummary createDocumentSummary(String fieldName, DataType dataType, Search search) {
- DocumentSummary summary = new DocumentSummary("mysummary", search);
+ private static DocumentSummary createDocumentSummary(String fieldName, DataType dataType, Schema schema) {
+ DocumentSummary summary = new DocumentSummary("mysummary", schema);
summary.add(new SummaryField(fieldName, dataType));
return summary;
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
index 3b2875d303c..eec382a115c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.SchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -16,8 +16,8 @@ public class WeightedSetSummaryToTestCase extends SchemaTestCase {
@Test
public void testRequireThatImplicitFieldsAreCreated() throws IOException, ParseException {
- Search search = SearchBuilder.buildFromFile("src/test/examples/weightedset-summaryto.sd");
- assertNotNull(search);
+ Schema schema = SearchBuilder.buildFromFile("src/test/examples/weightedset-summaryto.sd");
+ assertNotNull(schema);
}
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/SearchDataTypeValidatorTestCase.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/SchemaDataTypeValidatorTestCase.java
index cbea01e3ca3..b7b83dbf68c 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/SearchDataTypeValidatorTestCase.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/SchemaDataTypeValidatorTestCase.java
@@ -10,7 +10,7 @@ import static org.junit.Assert.fail;
/**
* @author Simon Thoresen Hult
*/
-public class SearchDataTypeValidatorTestCase {
+public class SchemaDataTypeValidatorTestCase {
@Test
public void requireThatSupportedTypesAreValidated() {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidatorTest.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSchemaClusterChangeValidatorTest.java
index 44d62b72ce2..7b1474f9754 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidatorTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/IndexedSchemaClusterChangeValidatorTest.java
@@ -21,7 +21,7 @@ import static com.yahoo.vespa.model.application.validation.change.ConfigChangeTe
import static com.yahoo.vespa.model.application.validation.change.ConfigChangeTestUtils.normalizeServicesInActions;
import static org.junit.Assert.assertTrue;
-public class IndexedSearchClusterChangeValidatorTest {
+public class IndexedSchemaClusterChangeValidatorTest {
static class Fixture {
VespaModel currentModel;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidatorTest.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSchemaClusterChangeValidatorTest.java
index a4080250c60..dddb6a38db1 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidatorTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/StreamingSchemaClusterChangeValidatorTest.java
@@ -22,7 +22,7 @@ import static com.yahoo.vespa.model.application.validation.change.ConfigChangeTe
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
-public class StreamingSearchClusterChangeValidatorTest {
+public class StreamingSchemaClusterChangeValidatorTest {
private static class Fixture {
VespaModel currentModel;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSchemaTuningBuilderTest.java
index 7578fc5c8f8..4ed355a7dca 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/DomSchemaTuningBuilderTest.java
@@ -18,7 +18,7 @@ import static org.junit.Assert.assertTrue;
/**
* @author geirst
*/
-public class DomSearchTuningBuilderTest extends DomBuilderTest {
+public class DomSchemaTuningBuilderTest extends DomBuilderTest {
private static final double DELTA = 0.000001;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSchemaChainsBuilderTest.java
index a34a5c577b7..86c448c403c 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSchemaChainsBuilderTest.java
@@ -35,7 +35,7 @@ import static org.junit.Assert.fail;
*
* @author Tony Vaagenes
*/
-public class DomSearchChainsBuilderTest extends DomBuilderTest {
+public class DomSchemaChainsBuilderTest extends DomBuilderTest {
private SearchChains searchChains;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/Federation2Test.java b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/Federation2Test.java
index 76b5a102155..ac272301445 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/Federation2Test.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/Federation2Test.java
@@ -10,7 +10,7 @@ import static org.junit.Assert.assertEquals;
/**
* @author bratseth
*/
-public class Federation2Test extends SearchChainsTestBase {
+public class Federation2Test extends SchemaChainsTestBase {
@Override
Element servicesXml() {
return parse(
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/FederationTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/FederationTest.java
index 0c1b2de1c5d..39fcb9d5af2 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/FederationTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/FederationTest.java
@@ -14,7 +14,7 @@ import static org.junit.Assert.*;
* Test generated config for federation.
* @author Tony Vaagenes
*/
-public class FederationTest extends SearchChainsTestBase {
+public class FederationTest extends SchemaChainsTestBase {
@Override
Element servicesXml() {
return parse(
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest.java
index f55bbe4aee0..9ccfa768dc1 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest.java
@@ -21,7 +21,7 @@ import static org.junit.Assert.*;
*
* @author Tony Vaagenes
*/
-public class SearchChainsTest extends SearchChainsTestBase {
+public class SchemaChainsTest extends SchemaChainsTestBase {
private ChainsConfig chainsConfig;
private ProviderConfig providerConfig;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest2.java b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest2.java
index 40182c74be6..04bda0bce21 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTest2.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTest2.java
@@ -15,7 +15,7 @@ import static org.junit.Assert.fail;
/**
* @author gjoranv
*/
-public class SearchChainsTest2 {
+public class SchemaChainsTest2 {
private MockRoot root;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTestBase.java b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTestBase.java
index 8b92704df3d..e654f8deee1 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SearchChainsTestBase.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/search/searchchain/SchemaChainsTestBase.java
@@ -9,7 +9,7 @@ import org.w3c.dom.Element;
/** Creates SearchChains model from xml input.
* @author Tony Vaagenes
*/
-public abstract class SearchChainsTestBase extends DomBuilderTest {
+public abstract class SchemaChainsTestBase extends DomBuilderTest {
@Before
public void setupSearchChains() {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SchemaBuilderTest.java
index 794cfa1f18a..e7901ebd5f0 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SchemaBuilderTest.java
@@ -33,7 +33,7 @@ import static org.junit.Assert.fail;
/**
* @author gjoranv
*/
-public class SearchBuilderTest extends ContainerModelBuilderTestBase {
+public class SchemaBuilderTest extends ContainerModelBuilderTestBase {
private ChainsConfig chainsConfig() {
return root.getConfig(ChainsConfig.class, "default/component/com.yahoo.search.handler.SearchHandler");
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaClusterTest.java
index 2383c2db407..d6020a96818 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchClusterTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaClusterTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertTrue;
*
* @author geirst
*/
-public class ContentSearchClusterTest {
+public class ContentSchemaClusterTest {
private static double EPSILON = 0.000001;
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaTest.java
index 12f3d722e5e..952a0b945dd 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSearchTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentSchemaTest.java
@@ -9,7 +9,7 @@ import static org.junit.Assert.assertNull;
/**
* @author Simon Thoresen Hult
*/
-public class ContentSearchTest {
+public class ContentSchemaTest {
@Test
public void requireThatAccessorsWork() {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSearchNodeNamingTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSchemaNodeNamingTest.java
index 55c9853b02b..17e295c1c2a 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSearchNodeNamingTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/IndexedSchemaNodeNamingTest.java
@@ -19,7 +19,7 @@ import static org.junit.Assert.assertEquals;
*
* @author geirst
*/
-public class IndexedSearchNodeNamingTest {
+public class IndexedSchemaNodeNamingTest {
private ContentCluster getSingleNodeCluster() throws Exception {
String groupXml = joinLines(" <group>",
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/SearchCoverageTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/SchemaCoverageTest.java
index 8db115aeb10..66184d74251 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/SearchCoverageTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/SchemaCoverageTest.java
@@ -10,7 +10,7 @@ import static org.junit.Assert.fail;
/**
* @author Simon Thoresen Hult
*/
-public class SearchCoverageTest {
+public class SchemaCoverageTest {
@Test
public void requireThatAccessorWork() {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSearchBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSchemaBuilderTest.java
index 5222d0a8715..b8788ece7b6 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSearchBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomContentSchemaBuilderTest.java
@@ -15,7 +15,7 @@ import static org.junit.Assert.assertNull;
/**
* @author Simon Thoresen Hult
*/
-public class DomContentSearchBuilderTest {
+public class DomContentSchemaBuilderTest {
@Test
public void requireThatDefaultsAreNull() throws Exception {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSearchCoverageBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSchemaCoverageBuilderTest.java
index 7512b6b5469..6c5456e73fc 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSearchCoverageBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/content/cluster/DomSchemaCoverageBuilderTest.java
@@ -15,7 +15,7 @@ import static org.junit.Assert.assertNull;
/**
* @author Simon Thoresen Hult
*/
-public class DomSearchCoverageBuilderTest {
+public class DomSchemaCoverageBuilderTest {
@Test
public void requireThatDefaultsAreNull() throws Exception {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaClusterTest.java
index 660ec9f13f1..27dda6a6bb2 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchClusterTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaClusterTest.java
@@ -5,7 +5,7 @@ import com.yahoo.component.ComponentId;
import com.yahoo.container.QrSearchersConfig;
import com.yahoo.document.DataType;
import com.yahoo.search.config.ClusterConfig;
-import com.yahoo.searchdefinition.Search;
+import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.SearchBuilder;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -34,31 +34,31 @@ import static org.junit.Assert.assertTrue;
*
* @author hmusum
*/
-public class SearchClusterTest {
+public class SchemaClusterTest {
@Test
public void testSdConfigLogical() {
// sd1
SDDocumentType sdt1 = new SDDocumentType("s1");
- Search search1 = new Search("s1");
+ Schema schema1 = new Schema("s1");
SDField f1 = new SDField("f1", DataType.STRING);
f1.addAttribute(new Attribute("f1", DataType.STRING));
f1.setIndexingScript(new ScriptExpression(new StatementExpression(new AttributeExpression("f1"))));
sdt1.addField(f1);
- search1.addDocument(sdt1);
+ schema1.addDocument(sdt1);
// sd2
SDDocumentType sdt2 = new SDDocumentType("s2");
- Search search2 = new Search("s2");
+ Schema schema2 = new Schema("s2");
SDField f2=new SDField("f2", DataType.STRING);
f2.addAttribute(new Attribute("f2", DataType.STRING));
f2.setIndexingScript(new ScriptExpression(new StatementExpression(new AttributeExpression("f2"))));
sdt2.addField(f2);
- search2.addDocument(sdt2);
+ schema2.addDocument(sdt2);
SearchBuilder builder = new SearchBuilder();
- builder.importRawSearch(search1);
- builder.importRawSearch(search2);
+ builder.importRawSearch(schema1);
+ builder.importRawSearch(schema2);
builder.build();
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaNodeTest.java
index 16f6a90ac66..cca2d817df4 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SchemaNodeTest.java
@@ -29,7 +29,7 @@ import static org.junit.Assert.assertTrue;
*
* @author geirst
*/
-public class SearchNodeTest {
+public class SchemaNodeTest {
private void assertBaseDir(String expected, SearchNode node) {
ProtonConfig.Builder builder = new ProtonConfig.Builder();