aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
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
parent27ff7ea1bc90d511e3b1c1d8da516f25e0eba31d (diff)
Fetaure names cleanup WIP
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java12
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java7
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java31
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java3
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);
}
}