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/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver | |
parent | 27ff7ea1bc90d511e3b1c1d8da516f25e0eba31d (diff) |
Fetaure names cleanup WIP
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java | 31 |
1 files changed, 12 insertions, 19 deletions
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())); } } |