From c0a2a4c5b8c595b3f523026a9684d505cabedf05 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Fri, 2 Dec 2022 22:44:23 +0100 Subject: Revert "Revert "Let list handling catch up with Java 17"" --- .../com/yahoo/schema/derived/RawRankProfile.java | 7 +++--- .../expressiontransforms/ExpressionTransforms.java | 27 +++++++++++----------- .../schema/processing/ReservedFunctionNames.java | 15 +++++------- 3 files changed, 22 insertions(+), 27 deletions(-) (limited to 'config-model/src/main/java/com/yahoo/schema') diff --git a/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java b/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java index 14ee60bb9a6..8bdbe574b0e 100644 --- a/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java +++ b/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java @@ -2,7 +2,6 @@ package com.yahoo.schema.derived; import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels; -import com.google.common.collect.ImmutableList; import com.yahoo.collections.Pair; import com.yahoo.compress.Compressor; import com.yahoo.config.model.api.ModelContext; @@ -86,9 +85,9 @@ public class RawRankProfile implements RankProfilesConfig.Producer { private List> decompress(Compressor.Compression compression) { String propertiesString = new String(compressor.decompress(compression), StandardCharsets.UTF_8); - if (propertiesString.isEmpty()) return ImmutableList.of(); + if (propertiesString.isEmpty()) return List.of(); - ImmutableList.Builder> properties = new ImmutableList.Builder<>(); + List> properties = new ArrayList<>(); for (int pos = 0; pos < propertiesString.length();) { int keyEndPos = propertiesString.indexOf(keyEndMarker, pos); String key = propertiesString.substring(pos, keyEndPos); @@ -98,7 +97,7 @@ public class RawRankProfile implements RankProfilesConfig.Producer { pos = valueEndPos + valueEndMarker.length(); properties.add(new Pair<>(key, value)); } - return properties.build(); + return List.copyOf(properties); } public String getName() { return name; } diff --git a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/ExpressionTransforms.java b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/ExpressionTransforms.java index 132597ee75e..42e99f6aa45 100644 --- a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/ExpressionTransforms.java +++ b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/ExpressionTransforms.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.schema.expressiontransforms; -import com.google.common.collect.ImmutableList; import com.yahoo.searchlib.rankingexpression.RankingExpression; import com.yahoo.searchlib.rankingexpression.transform.ConstantDereferencer; import com.yahoo.searchlib.rankingexpression.transform.ExpressionTransformer; @@ -24,19 +23,19 @@ public class ExpressionTransforms { public ExpressionTransforms() { transforms = - ImmutableList.of(new TensorFlowFeatureConverter(), - new OnnxFeatureConverter(), - new OnnxModelTransformer(), - new XgboostFeatureConverter(), - new LightGBMFeatureConverter(), - new TokenTransformer(), - new ConstantDereferencer(), - new ConstantTensorTransformer(), - new FunctionInliner(), - new FunctionShadower(), - new TensorMaxMinTransformer(), - new Simplifier(), - new BooleanExpressionTransformer()); + List.of(new TensorFlowFeatureConverter(), + new OnnxFeatureConverter(), + new OnnxModelTransformer(), + new XgboostFeatureConverter(), + new LightGBMFeatureConverter(), + new TokenTransformer(), + new ConstantDereferencer(), + new ConstantTensorTransformer(), + new FunctionInliner(), + new FunctionShadower(), + new TensorMaxMinTransformer(), + new Simplifier(), + new BooleanExpressionTransformer()); } public RankingExpression transform(RankingExpression expression, RankProfileTransformContext context) { diff --git a/config-model/src/main/java/com/yahoo/schema/processing/ReservedFunctionNames.java b/config-model/src/main/java/com/yahoo/schema/processing/ReservedFunctionNames.java index 1ec4d5b58f2..e1054c365b0 100644 --- a/config-model/src/main/java/com/yahoo/schema/processing/ReservedFunctionNames.java +++ b/config-model/src/main/java/com/yahoo/schema/processing/ReservedFunctionNames.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.schema.processing; -import com.google.common.collect.ImmutableSet; import com.yahoo.config.application.api.DeployLogger; import com.yahoo.schema.RankProfile; import com.yahoo.schema.RankProfileRegistry; @@ -9,8 +8,10 @@ import com.yahoo.schema.Schema; import com.yahoo.searchlib.rankingexpression.parser.RankingExpressionParserConstants; import com.yahoo.vespa.model.container.search.QueryProfiles; +import java.util.Arrays; import java.util.Set; import java.util.logging.Level; +import java.util.stream.Collectors; /** * Issues a warning if some function has a reserved name. This is not necessarily @@ -20,7 +21,7 @@ import java.util.logging.Level; */ public class ReservedFunctionNames extends Processor { - private static Set reservedNames = getReservedNames(); + private static final Set reservedNames = getReservedNames(); public ReservedFunctionNames(Schema schema, DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) { super(schema, deployLogger, rankProfileRegistry, queryProfiles); @@ -44,13 +45,9 @@ public class ReservedFunctionNames extends Processor { } } - private static ImmutableSet getReservedNames() { - ImmutableSet.Builder names = ImmutableSet.builder(); - for (String token : RankingExpressionParserConstants.tokenImage) { - String tokenWithoutQuotes = token.substring(1, token.length()-1); - names.add(tokenWithoutQuotes); - } - return names.build(); + private static Set getReservedNames() { + return Arrays.stream(RankingExpressionParserConstants.tokenImage) + .map(token -> token.substring(1, token.length()-1)).collect(Collectors.toUnmodifiableSet()); } } -- cgit v1.2.3