From d18511130e43089836a87ef4f3442625bdb3189d Mon Sep 17 00:00:00 2001 From: Luca Cavanna Date: Mon, 20 Jul 2020 16:01:30 +0200 Subject: [PATCH] ScriptLongFieldData to extend LeafLongFieldData --- .../fielddata/plain/LeafLongFieldData.java | 4 +- .../fielddata/ScriptLongFieldData.java | 42 ++++--------------- 2 files changed, 9 insertions(+), 37 deletions(-) diff --git a/server/src/main/java/org/elasticsearch/index/fielddata/plain/LeafLongFieldData.java b/server/src/main/java/org/elasticsearch/index/fielddata/plain/LeafLongFieldData.java index cf46d51340227..38dede8537b94 100644 --- a/server/src/main/java/org/elasticsearch/index/fielddata/plain/LeafLongFieldData.java +++ b/server/src/main/java/org/elasticsearch/index/fielddata/plain/LeafLongFieldData.java @@ -29,7 +29,7 @@ /** * Specialization of {@link LeafNumericFieldData} for integers. */ -abstract class LeafLongFieldData implements LeafNumericFieldData { +public abstract class LeafLongFieldData implements LeafNumericFieldData { private final long ramBytesUsed; /** @@ -37,7 +37,7 @@ abstract class LeafLongFieldData implements LeafNumericFieldData { */ private final NumericType numericType; - LeafLongFieldData(long ramBytesUsed, NumericType numericType) { + protected LeafLongFieldData(long ramBytesUsed, NumericType numericType) { this.ramBytesUsed = ramBytesUsed; this.numericType = numericType; } diff --git a/x-pack/plugin/runtime-fields/src/main/java/org/elasticsearch/xpack/runtimefields/fielddata/ScriptLongFieldData.java b/x-pack/plugin/runtime-fields/src/main/java/org/elasticsearch/xpack/runtimefields/fielddata/ScriptLongFieldData.java index 78bd0422182cf..320008d2d7b4c 100644 --- a/x-pack/plugin/runtime-fields/src/main/java/org/elasticsearch/xpack/runtimefields/fielddata/ScriptLongFieldData.java +++ b/x-pack/plugin/runtime-fields/src/main/java/org/elasticsearch/xpack/runtimefields/fielddata/ScriptLongFieldData.java @@ -12,15 +12,11 @@ import org.elasticsearch.ExceptionsHelper; import org.elasticsearch.index.Index; import org.elasticsearch.index.IndexSettings; -import org.elasticsearch.index.fielddata.FieldData; import org.elasticsearch.index.fielddata.IndexFieldData; import org.elasticsearch.index.fielddata.IndexFieldDataCache; import org.elasticsearch.index.fielddata.IndexNumericFieldData; -import org.elasticsearch.index.fielddata.LeafNumericFieldData; -import org.elasticsearch.index.fielddata.ScriptDocValues; import org.elasticsearch.index.fielddata.SearchLookupAware; -import org.elasticsearch.index.fielddata.SortedBinaryDocValues; -import org.elasticsearch.index.fielddata.SortedNumericDoubleValues; +import org.elasticsearch.index.fielddata.plain.LeafLongFieldData; import org.elasticsearch.index.mapper.MappedFieldType; import org.elasticsearch.index.mapper.MapperService; import org.elasticsearch.indices.breaker.CircuitBreakerService; @@ -116,41 +112,17 @@ public Index index() { return index; } - public static class ScriptLongLeafFieldData implements LeafNumericFieldData { - private final ScriptLongDocValues scriptBinaryDocValues; + public static class ScriptLongLeafFieldData extends LeafLongFieldData { + private final ScriptLongDocValues scriptLongDocValues; - ScriptLongLeafFieldData(ScriptLongDocValues scriptBinaryDocValues) { - this.scriptBinaryDocValues = scriptBinaryDocValues; - } - - @Override - public ScriptDocValues getScriptValues() { - return new ScriptDocValues.Longs(getLongValues()); - } - - @Override - public SortedBinaryDocValues getBytesValues() { - return FieldData.toString(scriptBinaryDocValues); - } - - @Override - public SortedNumericDoubleValues getDoubleValues() { - return FieldData.castToDouble(getLongValues()); + ScriptLongLeafFieldData(ScriptLongDocValues scriptLongDocValues) { + super(0, NumericType.LONG); + this.scriptLongDocValues = scriptLongDocValues; } @Override public SortedNumericDocValues getLongValues() { - return scriptBinaryDocValues; - } - - @Override - public long ramBytesUsed() { - return 0; - } - - @Override - public void close() { - + return scriptLongDocValues; } } }