From 8b593130baa769a56ff540c81a57da82cc0a0c9b Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Mon, 31 May 2021 09:47:58 +0200 Subject: Update abi and deprecate unused method. --- .../searchlib/rankingexpression/RankingExpression.java | 10 ++++++---- .../rankingexpression/rule/ExpressionNode.java | 6 +++--- .../rankingexpression/RankingExpressionTestCase.java | 17 +++++++++-------- 3 files changed, 18 insertions(+), 15 deletions(-) (limited to 'searchlib/src') diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java index f666a55d5f5..3eb4f16a9dd 100755 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java @@ -250,12 +250,9 @@ public class RankingExpression implements Serializable { /** * Creates the necessary rank properties required to implement this expression. * - * @param functions the expression functions to expand + * @param context context for serialization * @return a list of named rank properties required to implement this expression */ - public Map getRankProperties(List functions) { - return getRankProperties(new SerializationContext(functions)); - } public Map getRankProperties(SerializationContext context) { Deque path = new LinkedList<>(); String serializedRoot = root.toString(new StringBuilder(), context, path, null).toString(); @@ -264,6 +261,11 @@ public class RankingExpression implements Serializable { return serializedExpressions; } + @Deprecated + public Map getRankProperties(List functions) { + return getRankProperties(new SerializationContext(functions)); + } + /** * Returns the rank-property name for a given expression name. * diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ExpressionNode.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ExpressionNode.java index 07de5812c91..151b70d763d 100755 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ExpressionNode.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ExpressionNode.java @@ -30,10 +30,10 @@ public abstract class ExpressionNode implements Serializable { @Override public final String toString() { - return toString(new StringBuilder(), new SerializationContext(), null, null).toString(); + return toString(new SerializationContext()).toString(); } - public final String toString(SerializationContext context) { - return toString(new StringBuilder(), context, null, null).toString(); + public final StringBuilder toString(SerializationContext context) { + return toString(new StringBuilder(), context, null, null); } /** diff --git a/searchlib/src/test/java/com/yahoo/searchlib/rankingexpression/RankingExpressionTestCase.java b/searchlib/src/test/java/com/yahoo/searchlib/rankingexpression/RankingExpressionTestCase.java index ea09de32137..092faa1934e 100755 --- a/searchlib/src/test/java/com/yahoo/searchlib/rankingexpression/RankingExpressionTestCase.java +++ b/searchlib/src/test/java/com/yahoo/searchlib/rankingexpression/RankingExpressionTestCase.java @@ -9,6 +9,7 @@ import com.yahoo.searchlib.rankingexpression.rule.IfNode; import com.yahoo.searchlib.rankingexpression.rule.ExpressionNode; import com.yahoo.searchlib.rankingexpression.rule.FunctionNode; import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode; +import com.yahoo.searchlib.rankingexpression.rule.SerializationContext; import com.yahoo.searchlib.rankingexpression.rule.TensorFunctionNode; import com.yahoo.tensor.functions.Reduce; import org.junit.Test; @@ -92,7 +93,7 @@ public class RankingExpressionTestCase { RankingExpression exp = new RankingExpression("foo"); try { - exp.getRankProperties(functions); + exp.getRankProperties(new SerializationContext(functions)); } catch (RuntimeException e) { assertEquals("Cycle in ranking expression function: [foo[]]", e.getMessage()); } @@ -100,13 +101,13 @@ public class RankingExpressionTestCase { @Test public void testFunctionCycleSerialization() throws ParseException { - List funnctions = new ArrayList<>(); - funnctions.add(new ExpressionFunction("foo", null, new RankingExpression("bar"))); - funnctions.add(new ExpressionFunction("bar", null, new RankingExpression("foo"))); + List functions = new ArrayList<>(); + functions.add(new ExpressionFunction("foo", null, new RankingExpression("bar"))); + functions.add(new ExpressionFunction("bar", null, new RankingExpression("foo"))); RankingExpression exp = new RankingExpression("foo"); try { - exp.getRankProperties(funnctions); + exp.getRankProperties(new SerializationContext(functions)); } catch (RuntimeException e) { assertEquals("Cycle in ranking expression function: [foo[], bar[]]", e.getMessage()); } @@ -350,7 +351,7 @@ public class RankingExpressionTestCase { try { RankingExpression expression = new RankingExpression(expressionString); // No functions -> expect one rank property - serializedExpression = expression.getRankProperties(Collections.emptyList()).values().iterator().next(); + serializedExpression = expression.getRankProperties(new SerializationContext()).values().iterator().next(); assertEquals(expectedSerialization, serializedExpression); } catch (ParseException e) { @@ -363,7 +364,7 @@ public class RankingExpressionTestCase { RankingExpression reparsedExpression = new RankingExpression(serializedExpression); // Serializing the primitivized expression should yield the same expression again String reserializedExpression = - reparsedExpression.getRankProperties(Collections.emptyList()).values().iterator().next(); + reparsedExpression.getRankProperties(new SerializationContext()).values().iterator().next(); assertEquals(expectedSerialization, reserializedExpression); } catch (ParseException e) { @@ -383,7 +384,7 @@ public class RankingExpressionTestCase { System.out.println("Parsing expression '" + expressionString + "':"); RankingExpression expression = new RankingExpression(expressionString); - Map rankProperties = expression.getRankProperties(functions); + Map rankProperties = expression.getRankProperties(new SerializationContext(functions)); if (print) { for (String key : rankProperties.keySet()) System.out.println(key + ": " + rankProperties.get(key)); -- cgit v1.2.3