diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-08-13 10:23:33 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-08-13 10:23:33 +0200 |
commit | f80e5ca6ae8edfabb985a84fff191a071fd5df56 (patch) | |
tree | ef2e46f80e6fb82d9c3036234d19fb42af0a4b05 | |
parent | da40dcac37db31e808b4c192e0436b4b491e5ed8 (diff) |
Make the serial form explicit
3 files changed, 10 insertions, 6 deletions
diff --git a/container-search/abi-spec.json b/container-search/abi-spec.json index e69303c2d01..de811cc3053 100644 --- a/container-search/abi-spec.json +++ b/container-search/abi-spec.json @@ -5230,6 +5230,7 @@ "public void <init>(java.lang.String)", "public java.lang.String getName()", "public void setName(java.lang.String)", + "public java.lang.String toSerialForm()", "public java.lang.String toString()", "public int hashCode()", "public boolean equals(java.lang.Object)", @@ -5270,7 +5271,7 @@ ], "methods": [ "public void <init>(java.lang.String)", - "public java.lang.String toString()", + "public java.lang.String toSerialForm()", "public int hashCode()", "public boolean equals(java.lang.Object)", "public int compare(java.lang.Comparable, java.lang.Comparable)" @@ -5342,7 +5343,7 @@ "public com.yahoo.search.query.Sorting$UcaSorter$Strength getStrength()", "public com.ibm.icu.text.Collator getCollator()", "public java.lang.String getDecomposition()", - "public java.lang.String toString()", + "public java.lang.String toSerialForm()", "public int hashCode()", "public boolean equals(java.lang.Object)", "public com.yahoo.search.query.Sorting$UcaSorter clone()", diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/ProtobufSerialization.java b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/ProtobufSerialization.java index 70b4e0bca2f..3acbd29f906 100644 --- a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/ProtobufSerialization.java +++ b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/ProtobufSerialization.java @@ -99,7 +99,7 @@ public class ProtobufSerialization { private static void mergeToSearchRequestFromSorting(Sorting sorting, SearchProtocol.SearchRequest.Builder builder) { for (var field : sorting.fieldOrders()) { var sortField = SearchProtocol.SortField.newBuilder() - .setField(field.getSorter().toString()) + .setField(field.getSorter().toSerialForm()) .setAscending(field.getSortOrder() == Order.ASCENDING).build(); builder.addSorting(sortField); } diff --git a/container-search/src/main/java/com/yahoo/search/query/Sorting.java b/container-search/src/main/java/com/yahoo/search/query/Sorting.java index 0edcf408f53..f9e41c45813 100644 --- a/container-search/src/main/java/com/yahoo/search/query/Sorting.java +++ b/container-search/src/main/java/com/yahoo/search/query/Sorting.java @@ -203,8 +203,11 @@ public class Sorting implements Cloneable { public String getName() { return fieldName; } public void setName(String fieldName) { this.fieldName = fieldName; } + /** Returns the serial form of this which contains all information needed to reconstruct this sorter */ + public String toSerialForm() { return fieldName; } + @Override - public String toString() { return fieldName; } + public String toString() { return toSerialForm(); } @Override public int hashCode() { return fieldName.hashCode(); } @@ -253,7 +256,7 @@ public class Sorting implements Cloneable { public LowerCaseSorter(String fieldName) { super(fieldName); } @Override - public String toString() { return "lowercase(" + getName() + ')'; } + public String toSerialForm() { return "lowercase(" + getName() + ')'; } @Override public int hashCode() { return 1 + 3*super.hashCode(); } @@ -323,7 +326,7 @@ public class Sorting implements Cloneable { public String getDecomposition() { return (collator.getDecomposition() == Collator.CANONICAL_DECOMPOSITION) ? "CANONICAL_DECOMPOSITION" : "NO_DECOMPOSITION"; } @Override - public String toString() { return "uca(" + getName() + ',' + locale + ',' + ((strength != Strength.UNDEFINED) ? strength.toString() : "PRIMARY") + ')'; } + public String toSerialForm() { return "uca(" + getName() + ',' + locale + ',' + ((strength != Strength.UNDEFINED) ? strength.toString() : "PRIMARY") + ')'; } @Override public int hashCode() { return 1 + 3*locale.hashCode() + 5*strength.hashCode() + 7*super.hashCode(); } |