diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-02-02 17:40:33 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-02-02 17:40:33 +0100 |
commit | b729ea38f6ed4e23975c54321132c59627a4c6e1 (patch) | |
tree | 3d593f7872564bedb6b927c5bb80170311e41378 /config-model | |
parent | 27ff7ea1bc90d511e3b1c1d8da516f25e0eba31d (diff) |
Fetaure names cleanup WIP
Diffstat (limited to 'config-model')
4 files changed, 24 insertions, 29 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java index 43d3fafdb78..24e68965e9c 100644 --- a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java +++ b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java @@ -47,8 +47,7 @@ import java.util.Set; /** * Contains various state during deploy that should be available in all builders of a {@link com.yahoo.config.model.ConfigModel} * - * @author lulf - * @since 5.8 + * @author Ulf Lilleengen */ public class DeployState implements ConfigDefinitionStore { @@ -211,9 +210,9 @@ public class DeployState implements ConfigDefinitionStore { public QueryProfiles getQueryProfiles() { return queryProfiles; } public SemanticRules getSemanticRules() { return semanticRules; } - + public Version getWantedNodeVespaVersion() { return wantedNodeVespaVersion; } - + public Instant now() { return now; } public boolean disableFiledistributor() { return disableFiledistributor; } @@ -288,7 +287,7 @@ public class DeployState implements ConfigDefinitionStore { this.now = now; return this; } - + public Builder wantedNodeVespaVersion(Version version) { this.wantedNodeVespaVersion = version; return this; @@ -321,7 +320,8 @@ public class DeployState implements ConfigDefinitionStore { names.put(searchName, sdName); if (!sdName.equals(searchName)) { throw new IllegalArgumentException("Search definition file name ('" + sdName + "') and name of " + - "search element ('" + searchName + "') are not equal for file '" + readerName + "'"); + "search element ('" + searchName + + "') are not equal for file '" + readerName + "'"); } } catch (ParseException e) { throw new IllegalArgumentException("Could not parse search definition file '" + getSearchDefinitionRelativePath(reader.getName()) + "': " + e.getMessage(), e); 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 ba0ede77b55..0bccbc9c433 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java @@ -309,7 +309,7 @@ public class SearchBuilder { builder.build(); return builder; } - + /** * Convenience factory method to import and build a {@link Search} object from a file. Only for testing. * @@ -353,7 +353,7 @@ 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. * @@ -394,7 +394,7 @@ public class SearchBuilder { throws IOException, ParseException { return createFromFile(fileName, deployLogger, rankProfileRegistry).getSearch(); } - + /** * Convenience factory method to import and build a {@link Search} object from a raw object. * @@ -423,4 +423,5 @@ public class SearchBuilder { public RankProfileRegistry getRankProfileRegistry() { return rankProfileRegistry; } + } 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 3faebbfeae3..3ee64094274 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 @@ -14,11 +14,10 @@ import com.yahoo.searchdefinition.document.ImportedField; import com.yahoo.searchdefinition.document.ImportedFields; import com.yahoo.searchdefinition.document.SDField; import com.yahoo.searchdefinition.processing.Processor; +import com.yahoo.searchlib.rankingexpression.evaluation.FeatureNames; import com.yahoo.vespa.model.container.search.QueryProfiles; import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import java.util.Optional; /** @@ -30,8 +29,6 @@ import java.util.Optional; */ public class RankProfileTypeSettingsProcessor extends Processor { - private static final Pattern queryFeaturePattern = Pattern.compile("query\\((\\w+)\\)$"); - public RankProfileTypeSettingsProcessor(Search search, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) { super(search, deployLogger, rankProfileRegistry, queryProfiles); } @@ -41,7 +38,6 @@ public class RankProfileTypeSettingsProcessor extends Processor { processAttributeFields(); processImportedFields(); processQueryProfileTypes(); - } private void processAttributeFields() { @@ -54,18 +50,18 @@ public class RankProfileTypeSettingsProcessor extends Processor { } private void processImportedFields() { - Optional<ImportedFields> importedFields = search.importedFields(); - if (importedFields.isPresent()) { - importedFields.get().fields().forEach((fieldName, field) -> processImportedField(field)); - } + Optional<ImportedFields> importedFields = search.importedFields(); + if (importedFields.isPresent()) { + importedFields.get().fields().forEach((fieldName, field) -> processImportedField(field)); + } } private void processImportedField(ImportedField field) { - SDField targetField = field.targetField(); - Attribute attribute = targetField.getAttributes().get(targetField.getName()); - if (attribute != null && attribute.tensorType().isPresent()) { - addAttributeTypeToRankProfiles(field.fieldName(), attribute.tensorType().get().toString()); - } + SDField targetField = field.targetField(); + Attribute attribute = targetField.getAttributes().get(targetField.getName()); + if (attribute != null && attribute.tensorType().isPresent()) { + addAttributeTypeToRankProfiles(field.fieldName(), attribute.tensorType().get().toString()); + } } private void addAttributeTypeToRankProfiles(String attributeName, String attributeType) { @@ -87,11 +83,8 @@ public class RankProfileTypeSettingsProcessor extends Processor { FieldType fieldType = fieldDescription.getType(); if (fieldType instanceof TensorFieldType) { TensorFieldType tensorFieldType = (TensorFieldType)fieldType; - Matcher matcher = queryFeaturePattern.matcher(fieldName); - if (matcher.matches()) { - String queryFeature = matcher.group(1); - addQueryFeatureTypeToRankProfiles(queryFeature, tensorFieldType.type().toString()); - } + FeatureNames.argumentOf(fieldName).ifPresent(argument -> + addQueryFeatureTypeToRankProfiles(argument, tensorFieldType.type().toString())); } } 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 475fee62177..6458f3b9a6d 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 @@ -91,7 +91,7 @@ public class TensorTransformTestCase extends SearchDefinitionTestCase { private void assertContainsExpression(String expr, String transformedExpression) throws ParseException { - assertTrue("Expected expression '" + transformedExpression + "' not found", + assertTrue("Expected expression '" + transformedExpression + "' found", containsExpression(expr, transformedExpression)); } @@ -100,6 +100,7 @@ public class TensorTransformTestCase extends SearchDefinitionTestCase { String rankProperty = rankPropertyExpression.getFirst(); if (rankProperty.equals("rankingExpression(firstphase).rankingScript")) { String rankExpression = censorBindingHash(rankPropertyExpression.getSecond().replace(" ","")); + System.out.println("--> " + rankExpression); return rankExpression.equals(transformedExpression); } } |