summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2018-02-02 17:40:33 +0100
committerJon Bratseth <bratseth@oath.com>2018-02-02 17:40:33 +0100
commitb729ea38f6ed4e23975c54321132c59627a4c6e1 (patch)
tree3d593f7872564bedb6b927c5bb80170311e41378 /config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver
parent27ff7ea1bc90d511e3b1c1d8da516f25e0eba31d (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.java31
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()));
}
}