diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureFieldMapper.java index d6eeeb948a271..9d34562f35733 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureFieldMapper.java @@ -103,15 +103,6 @@ public RankFeatureFieldType(String name, Map meta, boolean posit setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - protected RankFeatureFieldType(RankFeatureFieldType ref) { - super(ref); - this.positiveScoreImpact = ref.positiveScoreImpact; - } - - public RankFeatureFieldType clone() { - return new RankFeatureFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureMetaFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureMetaFieldMapper.java index 78652fb0fc110..e8b6fe981d4d8 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureMetaFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeatureMetaFieldMapper.java @@ -92,15 +92,6 @@ private RankFeatureMetaFieldType() { super(NAME, false, false, TextSearchInfo.NONE, Collections.emptyMap()); } - protected RankFeatureMetaFieldType(RankFeatureMetaFieldType ref) { - super(ref); - } - - @Override - public RankFeatureMetaFieldType clone() { - return new RankFeatureMetaFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeaturesFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeaturesFieldMapper.java index e9d0b256e15d2..4968bf5ec6b0e 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeaturesFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/RankFeaturesFieldMapper.java @@ -80,14 +80,6 @@ public RankFeaturesFieldType(String name, Map meta) { setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - protected RankFeaturesFieldType(RankFeaturesFieldType ref) { - super(ref); - } - - public RankFeaturesFieldType clone() { - return new RankFeaturesFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/ScaledFloatFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/ScaledFloatFieldMapper.java index 88c55c9554084..cc11b3e736add 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/ScaledFloatFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/ScaledFloatFieldMapper.java @@ -193,20 +193,10 @@ public ScaledFloatFieldType(String name, double scalingFactor) { this(name, true, true, Collections.emptyMap(), scalingFactor); } - ScaledFloatFieldType(ScaledFloatFieldType other) { - super(other); - this.scalingFactor = other.scalingFactor; - } - public double getScalingFactor() { return scalingFactor; } - @Override - public MappedFieldType clone() { - return new ScaledFloatFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; @@ -310,19 +300,6 @@ public DocValueFormat docValueFormat(String format, ZoneId timeZone) { } } - @Override - public boolean equals(Object o) { - if (super.equals(o) == false) { - return false; - } - return scalingFactor == ((ScaledFloatFieldType) o).scalingFactor; - } - - @Override - public int hashCode() { - return 31 * super.hashCode() + Double.hashCode(scalingFactor); - } - /** * Parses input value and multiplies it with the scaling factor. * Uses the round-trip of creating a {@link BigDecimal} from the stringified {@code double} diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldMapper.java index ffdbf198fd610..4ef205a921ecf 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldMapper.java @@ -252,22 +252,6 @@ static class SearchAsYouTypeFieldType extends StringFieldType { new TextSearchInfo(fieldType, similarity, searchAnalyzer, searchQuoteAnalyzer), meta); } - SearchAsYouTypeFieldType(SearchAsYouTypeFieldType other) { - super(other); - - if (other.prefixField != null) { - this.prefixField = other.prefixField.clone(); - } - if (other.shingleFields != null) { - this.shingleFields = new ShingleFieldType[other.shingleFields.length]; - for (int i = 0; i < this.shingleFields.length; i++) { - if (other.shingleFields[i] != null) { - this.shingleFields[i] = other.shingleFields[i].clone(); - } - } - } - } - public void setPrefixField(PrefixFieldType prefixField) { this.prefixField = prefixField; } @@ -276,11 +260,6 @@ public void setShingleFields(ShingleFieldType[] shingleFields) { this.shingleFields = shingleFields; } - @Override - public MappedFieldType clone() { - return new SearchAsYouTypeFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; @@ -361,27 +340,6 @@ public SpanQuery spanPrefixQuery(String value, SpanMultiTermQueryWrapper.SpanRew return spanMulti; } } - - @Override - public boolean equals(Object otherObject) { - if (this == otherObject) { - return true; - } - if (otherObject == null || getClass() != otherObject.getClass()) { - return false; - } - if (!super.equals(otherObject)) { - return false; - } - final SearchAsYouTypeFieldType other = (SearchAsYouTypeFieldType) otherObject; - return Objects.equals(prefixField, other.prefixField) && - Arrays.equals(shingleFields, other.shingleFields); - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), prefixField, Arrays.hashCode(shingleFields)); - } } /** @@ -401,13 +359,6 @@ static final class PrefixFieldType extends StringFieldType { this.parentField = parentField; } - PrefixFieldType(PrefixFieldType other) { - super(other); - this.minChars = other.minChars; - this.maxChars = other.maxChars; - this.parentField = other.parentField; - } - boolean termLengthWithinBounds(int length) { return length >= minChars - 1 && length <= maxChars; } @@ -431,11 +382,6 @@ public Query prefixQuery(String value, MultiTermQuery.RewriteMethod method, Quer .build(); } - @Override - public PrefixFieldType clone() { - return new PrefixFieldType(this); - } - @Override public String typeName() { return "prefix"; @@ -450,27 +396,6 @@ public String toString() { public Query existsQuery(QueryShardContext context) { throw new UnsupportedOperationException(); } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - if (!super.equals(o)) { - return false; - } - PrefixFieldType that = (PrefixFieldType) o; - return minChars == that.minChars && - maxChars == that.maxChars; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), minChars, maxChars); - } } static final class PrefixFieldMapper extends FieldMapper { @@ -552,23 +477,10 @@ static class ShingleFieldType extends StringFieldType { this.shingleSize = shingleSize; } - ShingleFieldType(ShingleFieldType other) { - super(other); - this.shingleSize = other.shingleSize; - if (other.prefixFieldType != null) { - this.prefixFieldType = other.prefixFieldType.clone(); - } - } - void setPrefixFieldType(PrefixFieldType prefixFieldType) { this.prefixFieldType = prefixFieldType; } - @Override - public ShingleFieldType clone() { - return new ShingleFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; @@ -629,27 +541,6 @@ public SpanQuery spanPrefixQuery(String value, SpanMultiTermQueryWrapper.SpanRew return spanMulti; } } - - @Override - public boolean equals(Object otherObject) { - if (this == otherObject) { - return true; - } - if (otherObject == null || getClass() != otherObject.getClass()) { - return false; - } - if (!super.equals(otherObject)) { - return false; - } - final ShingleFieldType other = (ShingleFieldType) otherObject; - return shingleSize == other.shingleSize - && Objects.equals(prefixFieldType, other.prefixFieldType); - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), shingleSize, prefixFieldType); - } } private final int maxShingleSize; diff --git a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeatureFieldTypeTests.java b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeatureFieldTypeTests.java index 85ec2ec220984..a7566286f80bc 100644 --- a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeatureFieldTypeTests.java +++ b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeatureFieldTypeTests.java @@ -20,14 +20,8 @@ package org.elasticsearch.index.mapper; import java.util.Collections; -import java.util.Map; -public class RankFeatureFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new RankFeatureFieldMapper.RankFeatureFieldType(name, meta, true); - } +public class RankFeatureFieldTypeTests extends FieldTypeTestCase { public void testIsAggregatable() { MappedFieldType fieldType = new RankFeatureFieldMapper.RankFeatureFieldType("field", Collections.emptyMap(), true); diff --git a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeaturesFieldTypeTests.java b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeaturesFieldTypeTests.java index 5c02f860d8aca..c52f3a8c2412f 100644 --- a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeaturesFieldTypeTests.java +++ b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/RankFeaturesFieldTypeTests.java @@ -20,17 +20,11 @@ package org.elasticsearch.index.mapper; import java.util.Collections; -import java.util.Map; -public class RankFeaturesFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new RankFeaturesFieldMapper.RankFeaturesFieldType(name, meta); - } +public class RankFeaturesFieldTypeTests extends FieldTypeTestCase { public void testIsAggregatable() { - MappedFieldType fieldType = createDefaultFieldType("field", Collections.emptyMap()); + MappedFieldType fieldType = new RankFeaturesFieldMapper.RankFeaturesFieldType("field", Collections.emptyMap()); assertFalse(fieldType.isAggregatable()); } } diff --git a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/ScaledFloatFieldTypeTests.java b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/ScaledFloatFieldTypeTests.java index ff517cf4e35a2..c0031d5b3789f 100644 --- a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/ScaledFloatFieldTypeTests.java +++ b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/ScaledFloatFieldTypeTests.java @@ -40,14 +40,9 @@ import java.io.IOException; import java.util.Arrays; -import java.util.Map; -public class ScaledFloatFieldTypeTests extends FieldTypeTestCase { +public class ScaledFloatFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new ScaledFloatFieldMapper.ScaledFloatFieldType(name, true, true, meta, 100); - } public void testTermQuery() { ScaledFloatFieldMapper.ScaledFloatFieldType ft diff --git a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldTypeTests.java b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldTypeTests.java index 579ae038b5d66..5d1a5679e557b 100644 --- a/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldTypeTests.java +++ b/modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/SearchAsYouTypeFieldTypeTests.java @@ -35,13 +35,12 @@ import org.elasticsearch.index.mapper.SearchAsYouTypeFieldMapper.ShingleFieldType; import java.util.Collections; -import java.util.Map; import static java.util.Arrays.asList; import static org.apache.lucene.search.MultiTermQuery.CONSTANT_SCORE_REWRITE; import static org.hamcrest.Matchers.equalTo; -public class SearchAsYouTypeFieldTypeTests extends FieldTypeTestCase { +public class SearchAsYouTypeFieldTypeTests extends FieldTypeTestCase { private static final String NAME = "a_field"; private static final FieldType UNSEARCHABLE = new FieldType(); @@ -50,10 +49,9 @@ public class SearchAsYouTypeFieldTypeTests extends FieldTypeTestCase meta) { - final SearchAsYouTypeFieldType fieldType - = new SearchAsYouTypeFieldType(name, Defaults.FIELD_TYPE, null, Lucene.STANDARD_ANALYZER, Lucene.STANDARD_ANALYZER, meta); + protected SearchAsYouTypeFieldType createFieldType() { + final SearchAsYouTypeFieldType fieldType = new SearchAsYouTypeFieldType(NAME, Defaults.FIELD_TYPE, null, + Lucene.STANDARD_ANALYZER, Lucene.STANDARD_ANALYZER, Collections.emptyMap()); fieldType.setPrefixField(new PrefixFieldType(NAME, TextSearchInfo.SIMPLE_MATCH_ONLY, Defaults.MIN_GRAM, Defaults.MAX_GRAM)); fieldType.setShingleFields(new ShingleFieldType[] { new ShingleFieldType(fieldType.name(), 2, TextSearchInfo.SIMPLE_MATCH_ONLY) @@ -62,7 +60,7 @@ protected SearchAsYouTypeFieldType createDefaultFieldType(String name, Map meta) { setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - protected JoinFieldType(JoinFieldType ref) { - super(ref); - } - - public JoinFieldType clone() { - return new JoinFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/modules/percolator/src/main/java/org/elasticsearch/percolator/PercolatorFieldMapper.java b/modules/percolator/src/main/java/org/elasticsearch/percolator/PercolatorFieldMapper.java index dc6110421e06b..687107c2bb3f3 100644 --- a/modules/percolator/src/main/java/org/elasticsearch/percolator/PercolatorFieldMapper.java +++ b/modules/percolator/src/main/java/org/elasticsearch/percolator/PercolatorFieldMapper.java @@ -203,21 +203,6 @@ static class PercolatorFieldType extends MappedFieldType { super(name, false, false, TextSearchInfo.NONE, meta); } - PercolatorFieldType(PercolatorFieldType ref) { - super(ref); - queryTermsField = ref.queryTermsField; - extractionResultField = ref.extractionResultField; - queryBuilderField = ref.queryBuilderField; - rangeField = ref.rangeField; - minimumShouldMatchField = ref.minimumShouldMatchField; - mapUnmappedFieldsAsText = ref.mapUnmappedFieldsAsText; - } - - @Override - public MappedFieldType clone() { - return new PercolatorFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java b/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java index dcfaf2548e053..108cbc719e08a 100644 --- a/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java +++ b/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java @@ -86,26 +86,6 @@ public CollationFieldType(String name, Collator collator) { this(name, true, true, collator, Collections.emptyMap()); } - protected CollationFieldType(CollationFieldType ref) { - super(ref); - this.collator = ref.collator; - } - - @Override - public CollationFieldType clone() { - return new CollationFieldType(this); - } - - @Override - public boolean equals(Object o) { - return super.equals(o) && Objects.equals(collator, ((CollationFieldType) o).collator); - } - - @Override - public int hashCode() { - return 31 * super.hashCode() + Objects.hashCode(collator); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/plugins/analysis-icu/src/test/java/org/elasticsearch/index/mapper/CollationFieldTypeTests.java b/plugins/analysis-icu/src/test/java/org/elasticsearch/index/mapper/CollationFieldTypeTests.java index 5e91524ee8282..c1c86bbb8f858 100644 --- a/plugins/analysis-icu/src/test/java/org/elasticsearch/index/mapper/CollationFieldTypeTests.java +++ b/plugins/analysis-icu/src/test/java/org/elasticsearch/index/mapper/CollationFieldTypeTests.java @@ -37,17 +37,11 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Map; -public class CollationFieldTypeTests extends FieldTypeTestCase { +public class CollationFieldTypeTests extends FieldTypeTestCase{ private static final Collator DEFAULT_COLLATOR = Collator.getInstance(ULocale.ROOT).freeze(); - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new CollationFieldType(name, true, true, DEFAULT_COLLATOR, meta); - } - public void testIsFieldWithinQuery() throws IOException { CollationFieldType ft = new CollationFieldType("field", DEFAULT_COLLATOR); // current impl ignores args and shourd always return INTERSECTS diff --git a/plugins/mapper-annotated-text/src/main/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldMapper.java b/plugins/mapper-annotated-text/src/main/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldMapper.java index 0ba08a21295e8..94fd537f44846 100644 --- a/plugins/mapper-annotated-text/src/main/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldMapper.java +++ b/plugins/mapper-annotated-text/src/main/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldMapper.java @@ -521,10 +521,6 @@ public AnnotatedTextFieldType(String name, Map meta) { super(name, true, meta); } - protected AnnotatedTextFieldType(AnnotatedTextFieldType ref) { - super(ref); - } - public void setIndexAnalyzer(NamedAnalyzer delegate, int positionIncrementGap) { if(delegate.analyzer() instanceof AnnotationAnalyzerWrapper){ // Already wrapped the Analyzer with an AnnotationAnalyzer @@ -536,10 +532,6 @@ public void setIndexAnalyzer(NamedAnalyzer delegate, int positionIncrementGap) { } } - public AnnotatedTextFieldType clone() { - return new AnnotatedTextFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/plugins/mapper-annotated-text/src/test/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldTypeTests.java b/plugins/mapper-annotated-text/src/test/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldTypeTests.java index f00518a373ebb..3671c21678b96 100644 --- a/plugins/mapper-annotated-text/src/test/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldTypeTests.java +++ b/plugins/mapper-annotated-text/src/test/java/org/elasticsearch/index/mapper/annotatedtext/AnnotatedTextFieldTypeTests.java @@ -29,16 +29,11 @@ import java.io.IOException; import java.util.Collections; -import java.util.Map; -public class AnnotatedTextFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new AnnotatedTextFieldMapper.AnnotatedTextFieldType(name, meta); - } +public class AnnotatedTextFieldTypeTests extends FieldTypeTestCase { public void testIntervals() throws IOException { - MappedFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + MappedFieldType ft = new AnnotatedTextFieldMapper.AnnotatedTextFieldType("field", Collections.emptyMap()); NamedAnalyzer a = new NamedAnalyzer("name", AnalyzerScope.INDEX, new StandardAnalyzer()); IntervalsSource source = ft.intervals("Donald Trump", 0, true, a, false); assertEquals(Intervals.phrase(Intervals.term("donald"), Intervals.term("trump")), source); diff --git a/plugins/mapper-murmur3/src/main/java/org/elasticsearch/index/mapper/murmur3/Murmur3FieldMapper.java b/plugins/mapper-murmur3/src/main/java/org/elasticsearch/index/mapper/murmur3/Murmur3FieldMapper.java index 0dd9b5fe76fc2..4be96ad4be03a 100644 --- a/plugins/mapper-murmur3/src/main/java/org/elasticsearch/index/mapper/murmur3/Murmur3FieldMapper.java +++ b/plugins/mapper-murmur3/src/main/java/org/elasticsearch/index/mapper/murmur3/Murmur3FieldMapper.java @@ -96,20 +96,11 @@ public Murmur3FieldType(String name, Map meta) { super(name, false, true, TextSearchInfo.SIMPLE_MATCH_ONLY, meta); } - protected Murmur3FieldType(Murmur3FieldType ref) { - super(ref); - } - @Override public String typeName() { return CONTENT_TYPE; } - @Override - public Murmur3FieldType clone() { - return new Murmur3FieldType(this); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/AbstractGeometryFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/AbstractGeometryFieldMapper.java index 18a5d71f5c343..a45d4f13486c7 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/AbstractGeometryFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/AbstractGeometryFieldMapper.java @@ -191,10 +191,6 @@ protected AbstractGeometryFieldType(String name, boolean indexed, boolean hasDoc super(name, indexed, hasDocValues, TextSearchInfo.SIMPLE_MATCH_ONLY, meta); } - protected AbstractGeometryFieldType(AbstractGeometryFieldType ref) { - super(ref); - } - public void setGeometryQueryBuilder(QueryProcessor geometryQueryBuilder) { this.geometryQueryBuilder = geometryQueryBuilder; } diff --git a/server/src/main/java/org/elasticsearch/index/mapper/AbstractPointGeometryFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/AbstractPointGeometryFieldMapper.java index 68682ffc8c798..5dfda3f527a5a 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/AbstractPointGeometryFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/AbstractPointGeometryFieldMapper.java @@ -117,10 +117,6 @@ public abstract static class AbstractPointGeometryFieldType protected AbstractPointGeometryFieldType(String name, boolean indexed, boolean hasDocValues, Map meta) { super(name, indexed, hasDocValues, meta); } - - protected AbstractPointGeometryFieldType(AbstractPointGeometryFieldType ref) { - super(ref); - } } protected AbstractPointGeometryFieldMapper(String simpleName, FieldType fieldType, MappedFieldType mappedFieldType, diff --git a/server/src/main/java/org/elasticsearch/index/mapper/AbstractShapeGeometryFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/AbstractShapeGeometryFieldMapper.java index 942223bbe66c7..f34bd8715e22c 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/AbstractShapeGeometryFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/AbstractShapeGeometryFieldMapper.java @@ -33,7 +33,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Objects; /** * Base class for {@link GeoShapeFieldMapper} and {@link LegacyGeoShapeFieldMapper} @@ -162,23 +161,6 @@ protected AbstractShapeGeometryFieldType(String name, boolean isSearchable, bool super(name, isSearchable, hasDocValues, meta); } - protected AbstractShapeGeometryFieldType(AbstractShapeGeometryFieldType ref) { - super(ref); - this.orientation = ref.orientation; - } - - @Override - public boolean equals(Object o) { - if (!super.equals(o)) return false; - AbstractShapeGeometryFieldType that = (AbstractShapeGeometryFieldType) o; - return orientation == that.orientation; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), orientation); - } - public Orientation orientation() { return this.orientation; } public void setOrientation(Orientation orientation) { diff --git a/server/src/main/java/org/elasticsearch/index/mapper/AllFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/AllFieldMapper.java index 30c957cc00bf0..b3f5408883889 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/AllFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/AllFieldMapper.java @@ -102,15 +102,6 @@ static final class AllFieldType extends StringFieldType { super(NAME, false, false, TextSearchInfo.NONE, Collections.emptyMap()); } - protected AllFieldType(AllFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new AllFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/BinaryFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/BinaryFieldMapper.java index 54c1d280d64ae..3c36335346cbf 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/BinaryFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/BinaryFieldMapper.java @@ -103,16 +103,6 @@ public BinaryFieldType(String name) { this(name, true, Collections.emptyMap()); } - protected BinaryFieldType(BinaryFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new BinaryFieldType(this); - } - - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/BooleanFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/BooleanFieldMapper.java index 7ad22cfe2c6d3..6926aa2403e47 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/BooleanFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/BooleanFieldMapper.java @@ -123,15 +123,6 @@ public BooleanFieldType(String name) { this(name, true, true, Collections.emptyMap()); } - protected BooleanFieldType(BooleanFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new BooleanFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/CompletionFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/CompletionFieldMapper.java index e539043abea22..efb3a546a8c1b 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/CompletionFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/CompletionFieldMapper.java @@ -59,7 +59,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Objects; import java.util.Set; import static org.elasticsearch.index.mapper.TypeParsers.parseMultiField; @@ -208,13 +207,6 @@ public CompletionFieldType(String name) { Collections.emptyMap()); } - private CompletionFieldType(CompletionFieldType ref) { - super(ref); - this.contextMappings = ref.contextMappings; - this.preserveSep = ref.preserveSep; - this.preservePositionIncrements = ref.preservePositionIncrements; - } - public void setPreserveSep(boolean preserveSep) { this.preserveSep = preserveSep; } @@ -303,33 +295,6 @@ public CompletionQuery fuzzyQuery(String value, Fuzziness fuzziness, int nonFuzz unicodeAware, maxExpansions); } - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - if (!super.equals(o)) return false; - - CompletionFieldType that = (CompletionFieldType) o; - - if (preserveSep != that.preserveSep) return false; - if (preservePositionIncrements != that.preservePositionIncrements) return false; - return Objects.equals(contextMappings, that.contextMappings); - - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), - preserveSep, - preservePositionIncrements, - contextMappings); - } - - @Override - public CompletionFieldType clone() { - return new CompletionFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/ConstantFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/ConstantFieldType.java index e7f7503a50920..6d7b5847884bd 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/ConstantFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/ConstantFieldType.java @@ -45,10 +45,6 @@ public ConstantFieldType(String name, Map meta) { super(name, true, true, TextSearchInfo.SIMPLE_MATCH_ONLY, meta); } - public ConstantFieldType(ConstantFieldType other) { - super(other); - } - @Override public final boolean isSearchable() { return true; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/DateFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/DateFieldMapper.java index 9ea1162ac452b..c177b9f5e5ef4 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/DateFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/DateFieldMapper.java @@ -317,32 +317,6 @@ public DateFieldType(String name) { this(name, true, true, DEFAULT_DATE_TIME_FORMATTER, Resolution.MILLISECONDS, Collections.emptyMap()); } - DateFieldType(DateFieldType other) { - super(other); - this.dateTimeFormatter = other.dateTimeFormatter; - this.dateMathParser = other.dateMathParser; - this.resolution = other.resolution; - } - - @Override - public MappedFieldType clone() { - return new DateFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (!super.equals(o)) { - return false; - } - DateFieldType that = (DateFieldType) o; - return Objects.equals(dateTimeFormatter, that.dateTimeFormatter) && Objects.equals(resolution, that.resolution); - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), dateTimeFormatter, resolution); - } - @Override public String typeName() { return resolution.type(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/FieldNamesFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/FieldNamesFieldMapper.java index 2a5a47ce7e5ad..0d6d6d0b58b24 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/FieldNamesFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/FieldNamesFieldMapper.java @@ -38,7 +38,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Objects; /** * A mapper that indexes the field names of a document under _field_names. This mapper is typically useful in order @@ -135,28 +134,6 @@ public FieldNamesFieldType() { super(Defaults.NAME, true, false, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected FieldNamesFieldType(FieldNamesFieldType ref) { - super(ref); - this.enabled = ref.enabled; - } - - @Override - public FieldNamesFieldType clone() { - return new FieldNamesFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (!super.equals(o)) return false; - FieldNamesFieldType that = (FieldNamesFieldType) o; - return enabled == that.enabled; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), enabled); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/GeoPointFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/GeoPointFieldMapper.java index d8400ba75cdaf..482996d307e64 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/GeoPointFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/GeoPointFieldMapper.java @@ -172,20 +172,11 @@ public GeoPointFieldType(String name) { this(name, true, true, Collections.emptyMap()); } - GeoPointFieldType(GeoPointFieldType ref) { - super(ref); - } - @Override public String typeName() { return CONTENT_TYPE; } - @Override - public MappedFieldType clone() { - return new GeoPointFieldType(this); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/GeoShapeFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/GeoShapeFieldMapper.java index 9d01ec57c8099..6ad1de5b868cf 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/GeoShapeFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/GeoShapeFieldMapper.java @@ -91,15 +91,6 @@ public GeoShapeFieldType(String name, boolean indexed, boolean hasDocValues, Map super(name, indexed, hasDocValues, meta); } - protected GeoShapeFieldType(GeoShapeFieldType ref) { - super(ref); - } - - @Override - public GeoShapeFieldType clone() { - return new GeoShapeFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/IdFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/IdFieldMapper.java index a857a2789f68a..bf1e0ce618c28 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/IdFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/IdFieldMapper.java @@ -121,15 +121,6 @@ private IdFieldType() { setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - protected IdFieldType(IdFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new IdFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/IgnoredFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/IgnoredFieldMapper.java index 4a7cc78f1fe1a..92a0092905d2f 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/IgnoredFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/IgnoredFieldMapper.java @@ -87,15 +87,6 @@ private IgnoredFieldType() { super(NAME, true, false, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected IgnoredFieldType(IgnoredFieldType ref) { - super(ref); - } - - @Override - public IgnoredFieldType clone() { - return new IgnoredFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/IndexFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/IndexFieldMapper.java index 59b67e821f5b0..ba1c3182f1f84 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/IndexFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/IndexFieldMapper.java @@ -87,15 +87,6 @@ private IndexFieldType() { super(NAME, Collections.emptyMap()); } - protected IndexFieldType(IndexFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new IndexFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/IpFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/IpFieldMapper.java index 42dd60cff421c..ad18a1fa94b5e 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/IpFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/IpFieldMapper.java @@ -148,15 +148,6 @@ public IpFieldType(String name) { this(name, true, true, Collections.emptyMap()); } - IpFieldType(IpFieldType other) { - super(other); - } - - @Override - public MappedFieldType clone() { - return new IpFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java index ef1c8d9fca372..ee476631b2b86 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java @@ -256,18 +256,6 @@ public KeywordFieldType(String name, NamedAnalyzer analyzer) { super(name, true, true, new TextSearchInfo(Defaults.FIELD_TYPE, null, analyzer, analyzer), Collections.emptyMap()); } - protected KeywordFieldType(KeywordFieldType ref) { - super(ref); - this.hasNorms = ref.hasNorms; - setEagerGlobalOrdinals(ref.eagerGlobalOrdinals()); - setIndexAnalyzer(ref.indexAnalyzer()); - } - - @Override - public KeywordFieldType clone() { - return new KeywordFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldMapper.java index e088ee8789a98..cccf5754968a4 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldMapper.java @@ -52,7 +52,6 @@ import java.util.Collections; import java.util.List; import java.util.Map; -import java.util.Objects; /** * FieldMapper for indexing {@link org.locationtech.spatial4j.shape.Shape}s. @@ -306,44 +305,6 @@ public GeoShapeFieldType(String name) { this(name, true, true, Collections.emptyMap()); } - protected GeoShapeFieldType(GeoShapeFieldType ref) { - super(ref); - this.tree = ref.tree; - this.strategy = ref.strategy; - this.pointsOnly = ref.pointsOnly; - this.treeLevels = ref.treeLevels; - this.precisionInMeters = ref.precisionInMeters; - this.distanceErrorPct = ref.distanceErrorPct; - this.defaultDistanceErrorPct = ref.defaultDistanceErrorPct; - this.defaultPrefixTreeStrategy = ref.defaultPrefixTreeStrategy; - this.recursiveStrategy = ref.recursiveStrategy; - this.termStrategy = ref.termStrategy; - } - - @Override - public GeoShapeFieldType clone() { - return new GeoShapeFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (!super.equals(o)) return false; - GeoShapeFieldType that = (GeoShapeFieldType) o; - return treeLevels == that.treeLevels && - precisionInMeters == that.precisionInMeters && - defaultDistanceErrorPct == that.defaultDistanceErrorPct && - Objects.equals(tree, that.tree) && - Objects.equals(strategy, that.strategy) && - pointsOnly == that.pointsOnly && - Objects.equals(distanceErrorPct, that.distanceErrorPct); - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), tree, strategy, pointsOnly, treeLevels, precisionInMeters, distanceErrorPct, - defaultDistanceErrorPct); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java index 211554a6d5f26..48cb8cfc9997f 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java @@ -68,17 +68,6 @@ public abstract class MappedFieldType { private boolean eagerGlobalOrdinals; private Map meta; - protected MappedFieldType(MappedFieldType ref) { - this.name = ref.name(); - this.boost = ref.boost(); - this.isIndexed = ref.isIndexed; - this.docValues = ref.hasDocValues(); - this.indexAnalyzer = ref.indexAnalyzer(); - this.eagerGlobalOrdinals = ref.eagerGlobalOrdinals; - this.meta = ref.meta; - this.textSearchInfo = ref.textSearchInfo; - } - public MappedFieldType(String name, boolean isIndexed, boolean hasDocValues, TextSearchInfo textSearchInfo, Map meta) { setBoost(1.0f); this.name = Objects.requireNonNull(name); @@ -88,9 +77,6 @@ public MappedFieldType(String name, boolean isIndexed, boolean hasDocValues, Tex this.meta = meta; } - @Override - public abstract MappedFieldType clone(); - /** * Return a fielddata builder for this field * @@ -104,32 +90,9 @@ public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { throw new IllegalArgumentException("Fielddata is not supported on field [" + name() + "] of type [" + typeName() + "]"); } - @Override - public boolean equals(Object o) { - if (o == null || getClass() != o.getClass()) { - return false; - } - MappedFieldType fieldType = (MappedFieldType) o; - - return boost == fieldType.boost && - docValues == fieldType.docValues && - Objects.equals(name, fieldType.name) && - Objects.equals(indexAnalyzer, fieldType.indexAnalyzer) && - Objects.equals(eagerGlobalOrdinals, fieldType.eagerGlobalOrdinals) && - Objects.equals(meta, fieldType.meta); - } - - @Override - public int hashCode() { - return Objects.hash(name, boost, docValues, indexAnalyzer, - eagerGlobalOrdinals, meta); - } - - // TODO: we need to override freeze() and add safety checks that all settings are actually set - /** Returns the name of this type, as would be specified in mapping properties */ public abstract String typeName(); - + /** Returns the field family type, as used in field capabilities */ public String familyTypeName() { return typeName(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/NumberFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/NumberFieldMapper.java index 6b7bd4e374c12..fb29d207bca5d 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/NumberFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/NumberFieldMapper.java @@ -913,16 +913,6 @@ public NumberFieldType(String name, NumberType type) { this(name, type, true, true, Collections.emptyMap()); } - private NumberFieldType(NumberFieldType other) { - super(other); - this.type = other.type; - } - - @Override - public MappedFieldType clone() { - return new NumberFieldType(this); - } - @Override public String typeName() { return type.name; @@ -1001,20 +991,6 @@ public DocValueFormat docValueFormat(String format, ZoneId timeZone) { public Number parsePoint(byte[] value) { return type.parsePoint(value); } - - @Override - public boolean equals(Object o) { - if (super.equals(o) == false) { - return false; - } - NumberFieldType that = (NumberFieldType) o; - return type == that.type; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), type); - } } private Explicit ignoreMalformed; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/RangeFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/RangeFieldMapper.java index 8ae9e0465697a..1ee8be7cc4910 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/RangeFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/RangeFieldMapper.java @@ -217,35 +217,8 @@ public RangeFieldType(String name, DateFormatter formatter) { this(name, true, true, formatter, Collections.emptyMap()); } - RangeFieldType(RangeFieldType other) { - super(other); - this.rangeType = other.rangeType; - this.dateTimeFormatter = other.dateTimeFormatter; - this.dateMathParser = other.dateMathParser; - } - public RangeType rangeType() { return rangeType; } - @Override - public RangeFieldType clone() { - return new RangeFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (!super.equals(o)) return false; - RangeFieldType that = (RangeFieldType) o; - return Objects.equals(rangeType, that.rangeType) && - (rangeType == RangeType.DATE) ? - Objects.equals(dateTimeFormatter, that.dateTimeFormatter) - : dateTimeFormatter == null && that.dateTimeFormatter == null; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), rangeType, dateTimeFormatter); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/RoutingFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/RoutingFieldMapper.java index 615d1c911cdf9..f61463129b187 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/RoutingFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/RoutingFieldMapper.java @@ -114,15 +114,6 @@ private RoutingFieldType() { setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - protected RoutingFieldType(RoutingFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new RoutingFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/SeqNoFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/SeqNoFieldMapper.java index 66a0e581459a4..478a3753df8da 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/SeqNoFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/SeqNoFieldMapper.java @@ -125,15 +125,6 @@ static final class SeqNoFieldType extends SimpleMappedFieldType { super(NAME, true, true, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected SeqNoFieldType(SeqNoFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new SeqNoFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/SimpleMappedFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/SimpleMappedFieldType.java index 8253bd599bd98..918d5665df62d 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/SimpleMappedFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/SimpleMappedFieldType.java @@ -37,10 +37,6 @@ protected SimpleMappedFieldType(String name, boolean isSearchable, boolean hasDo super(name, isSearchable, hasDocValues, textSearchInfo, meta); } - protected SimpleMappedFieldType(MappedFieldType ref) { - super(ref); - } - @Override public final Query rangeQuery(Object lowerTerm, Object upperTerm, boolean includeLower, boolean includeUpper, ShapeRelation relation, ZoneId timeZone, DateMathParser parser, QueryShardContext context) { diff --git a/server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java index e9bdccab3f764..bbd3f0832035a 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java @@ -152,15 +152,6 @@ private SourceFieldType() { super(NAME, false, false, TextSearchInfo.NONE, Collections.emptyMap()); } - protected SourceFieldType(SourceFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new SourceFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/StringFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/StringFieldType.java index 94c329a6aa462..c6a7104973d55 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/StringFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/StringFieldType.java @@ -55,10 +55,6 @@ public StringFieldType(String name, boolean isSearchable, boolean hasDocValues, super(name, isSearchable, hasDocValues, textSearchInfo, meta); } - protected StringFieldType(MappedFieldType ref) { - super(ref); - } - @Override public Query fuzzyQuery(Object value, Fuzziness fuzziness, int prefixLength, int maxExpansions, boolean transpositions, QueryShardContext context) { diff --git a/server/src/main/java/org/elasticsearch/index/mapper/TermBasedFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/TermBasedFieldType.java index 5d6db99baf972..0101b68fb88c8 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/TermBasedFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/TermBasedFieldType.java @@ -39,10 +39,6 @@ abstract class TermBasedFieldType extends SimpleMappedFieldType { super(name, isSearchable, hasDocValues, textSearchInfo, meta); } - protected TermBasedFieldType(MappedFieldType ref) { - super(ref); - } - /** Returns the indexed value used to construct search "values". * This method is used for the default implementations of most * query factory methods such as {@link #termQuery}. */ diff --git a/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java index 72b2b4fd5e455..52db406d8a5ec 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java @@ -387,11 +387,6 @@ void setAnalyzer(String name, Analyzer delegate) { setIndexAnalyzer(new NamedAnalyzer(name, AnalyzerScope.INDEX, new PhraseWrappedAnalyzer(delegate))); } - @Override - public MappedFieldType clone() { - return new PhraseFieldType(parent); - } - @Override public String typeName() { return "phrase"; @@ -418,6 +413,13 @@ static final class PrefixFieldType extends StringFieldType { this.hasPositions = hasPositions; } + static boolean canMerge(PrefixFieldType first, PrefixFieldType second) { + if (first == null) { + return second == null; + } + return second != null && first.minChars == second.minChars && first.maxChars == second.maxChars; + } + void setAnalyzer(NamedAnalyzer delegate) { setIndexAnalyzer(new NamedAnalyzer(delegate.name(), AnalyzerScope.INDEX, new PrefixWrappedAnalyzer(delegate.analyzer(), minChars, maxChars))); @@ -471,11 +473,6 @@ public IntervalsSource intervals(BytesRef term) { return Intervals.or(Intervals.fixField(name(), Intervals.wildcard(new BytesRef(wildcardTerm))), Intervals.term(term)); } - @Override - public PrefixFieldType clone() { - return new PrefixFieldType(parentField, name(), minChars, maxChars, hasPositions); - } - @Override public String typeName() { return "prefix"; @@ -490,21 +487,6 @@ public String toString() { public Query existsQuery(QueryShardContext context) { throw new UnsupportedOperationException(); } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - if (!super.equals(o)) return false; - PrefixFieldType that = (PrefixFieldType) o; - return minChars == that.minChars && - maxChars == that.maxChars; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), minChars, maxChars); - } } private static final class PhraseFieldMapper extends FieldMapper { @@ -592,44 +574,6 @@ public TextFieldType(String name) { this(name, Defaults.FIELD_TYPE, null, Lucene.STANDARD_ANALYZER, Lucene.STANDARD_ANALYZER, Collections.emptyMap()); } - protected TextFieldType(TextFieldType ref) { - super(ref); - this.fielddata = ref.fielddata; - this.fielddataMinFrequency = ref.fielddataMinFrequency; - this.fielddataMaxFrequency = ref.fielddataMaxFrequency; - this.fielddataMinSegmentSize = ref.fielddataMinSegmentSize; - this.indexPhrases = ref.indexPhrases; - if (ref.prefixFieldType != null) { - this.prefixFieldType = ref.prefixFieldType.clone(); - } - this.indexedFieldType = ref.indexedFieldType; - } - - @Override - public TextFieldType clone() { - return new TextFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (super.equals(o) == false) { - return false; - } - TextFieldType that = (TextFieldType) o; - return fielddata == that.fielddata - && indexPhrases == that.indexPhrases - && Objects.equals(prefixFieldType, that.prefixFieldType) - && fielddataMinFrequency == that.fielddataMinFrequency - && fielddataMaxFrequency == that.fielddataMaxFrequency - && fielddataMinSegmentSize == that.fielddataMinSegmentSize; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), fielddata, indexPhrases, prefixFieldType, - fielddataMinFrequency, fielddataMaxFrequency, fielddataMinSegmentSize); - } - public boolean fielddata() { return fielddata; } @@ -913,7 +857,7 @@ protected void mergeOptions(FieldMapper other, List conflicts) { if (mw.fieldType().indexPhrases != this.fieldType().indexPhrases) { conflicts.add("mapper [" + name() + "] has different [index_phrases] settings"); } - if (Objects.equals(mw.fieldType().prefixFieldType, this.fieldType().prefixFieldType) == false) { + if (PrefixFieldType.canMerge(mw.fieldType().prefixFieldType, this.fieldType().prefixFieldType) == false) { conflicts.add("mapper [" + name() + "] has different [index_prefixes] settings"); } if (this.prefixFieldMapper != null && mw.prefixFieldMapper != null) { diff --git a/server/src/main/java/org/elasticsearch/index/mapper/TimestampFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/TimestampFieldMapper.java index a87adf29b46ff..61931a7d225fd 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/TimestampFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/TimestampFieldMapper.java @@ -63,11 +63,6 @@ public TimestampFieldType() { super(NAME, false, false, TextSearchInfo.NONE, Collections.emptyMap()); } - @Override - public MappedFieldType clone() { - return new TimestampFieldType(); - } - @Override public String typeName() { return NAME; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/TypeFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/TypeFieldMapper.java index 3ee32be7b34d4..73ac9026489cb 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/TypeFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/TypeFieldMapper.java @@ -104,15 +104,6 @@ private TypeFieldType() { super(NAME, true, false, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected TypeFieldType(TypeFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new TypeFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/main/java/org/elasticsearch/index/mapper/VersionFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/VersionFieldMapper.java index 56f7619569b30..5b6ec10bafa43 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/VersionFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/VersionFieldMapper.java @@ -75,15 +75,6 @@ private VersionFieldType() { super(NAME, false, true, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected VersionFieldType(VersionFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new VersionFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/BinaryFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/BinaryFieldTypeTests.java deleted file mode 100644 index 7f84a3d36f8ae..0000000000000 --- a/server/src/test/java/org/elasticsearch/index/mapper/BinaryFieldTypeTests.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.elasticsearch.index.mapper; - -import java.util.Map; - -public class BinaryFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new BinaryFieldMapper.BinaryFieldType(name, true, meta); - } -} diff --git a/server/src/test/java/org/elasticsearch/index/mapper/BooleanFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/BooleanFieldTypeTests.java index 0eb3b5776e630..d64f382209355 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/BooleanFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/BooleanFieldTypeTests.java @@ -22,13 +22,8 @@ import org.apache.lucene.search.TermQuery; import java.util.Collections; -import java.util.Map; -public class BooleanFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new BooleanFieldMapper.BooleanFieldType(name, true, true, meta); - } +public class BooleanFieldTypeTests extends FieldTypeTestCase { public void testValueFormat() { MappedFieldType ft = new BooleanFieldMapper.BooleanFieldType("field"); diff --git a/server/src/test/java/org/elasticsearch/index/mapper/DateFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/DateFieldTypeTests.java index b339bd8201305..a6415665865c4 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/DateFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/DateFieldTypeTests.java @@ -56,16 +56,8 @@ import java.time.Instant; import java.time.ZoneOffset; import java.util.Collections; -import java.util.Map; -public class DateFieldTypeTests extends FieldTypeTestCase { - - - @Override - protected DateFieldType createDefaultFieldType(String name, Map meta) { - return new DateFieldType(name, true, true, DateFieldMapper.DEFAULT_DATE_TIME_FORMATTER, - Resolution.MILLISECONDS, meta); - } +public class DateFieldTypeTests extends FieldTypeTestCase { private static final long nowInMillis = 0; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/DocumentFieldMapperTests.java b/server/src/test/java/org/elasticsearch/index/mapper/DocumentFieldMapperTests.java index d77db2bbcffe1..38db532d9fb0b 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/DocumentFieldMapperTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/DocumentFieldMapperTests.java @@ -76,15 +76,6 @@ static class FakeFieldType extends TermBasedFieldType { super(name, true, true, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - FakeFieldType(FakeFieldType other) { - super(other); - } - - @Override - public MappedFieldType clone() { - return new FakeFieldType(this); - } - @Override public String typeName() { return "fake"; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/ExternalMapper.java b/server/src/test/java/org/elasticsearch/index/mapper/ExternalMapper.java index 6fe26175effb1..de25bf52c5e1d 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/ExternalMapper.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/ExternalMapper.java @@ -130,15 +130,6 @@ static class ExternalFieldType extends TermBasedFieldType { super(name, indexed, hasDocValues, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected ExternalFieldType(ExternalFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new ExternalFieldType(this); - } - @Override public String typeName() { return "faketype"; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java b/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java index 7f191164fc34a..a86a4a6d63f77 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java @@ -91,14 +91,6 @@ public FakeStringFieldType(String name, TextSearchInfo textSearchInfo) { setIndexAnalyzer(Lucene.STANDARD_ANALYZER); } - protected FakeStringFieldType(FakeStringFieldType ref) { - super(ref); - } - - public FakeStringFieldType clone() { - return new FakeStringFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/FieldNamesFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/FieldNamesFieldTypeTests.java index d0b71cc2d5c46..f8293d2a18682 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/FieldNamesFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/FieldNamesFieldTypeTests.java @@ -28,7 +28,6 @@ import org.elasticsearch.index.IndexSettings; import org.elasticsearch.index.query.QueryShardContext; import org.elasticsearch.test.ESTestCase; -import org.elasticsearch.test.EqualsHashCodeTestUtils; import java.util.Collections; @@ -61,14 +60,4 @@ public void testTermQuery() { IllegalStateException e = expectThrows(IllegalStateException.class, () -> fieldNamesFieldType.termQuery("field_name", null)); assertEquals("Cannot run [exists] queries if the [_field_names] field is disabled", e.getMessage()); } - - public void testHashcodeAndEquals() { - EqualsHashCodeTestUtils.checkEqualsAndHashCode(new FieldNamesFieldMapper.FieldNamesFieldType(), - FieldNamesFieldMapper.FieldNamesFieldType::clone, - t -> { - FieldNamesFieldMapper.FieldNamesFieldType m = t.clone(); - m.setEnabled(false); - return m; - }); - } } diff --git a/server/src/test/java/org/elasticsearch/index/mapper/GeoPointFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/GeoPointFieldTypeTests.java deleted file mode 100644 index 30f361674c7e5..0000000000000 --- a/server/src/test/java/org/elasticsearch/index/mapper/GeoPointFieldTypeTests.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.elasticsearch.index.mapper; - -import org.elasticsearch.index.mapper.GeoPointFieldMapper.GeoPointFieldType; - -import java.util.Map; - -public class GeoPointFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new GeoPointFieldType(name, true, true, meta); - } -} diff --git a/server/src/test/java/org/elasticsearch/index/mapper/IgnoredFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/IgnoredFieldTypeTests.java index f321c25de070a..602287030dce9 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/IgnoredFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/IgnoredFieldTypeTests.java @@ -26,22 +26,8 @@ import org.apache.lucene.search.WildcardQuery; import org.apache.lucene.util.BytesRef; import org.elasticsearch.ElasticsearchException; -import org.elasticsearch.test.EqualsHashCodeTestUtils; -import java.util.Map; - -public class IgnoredFieldTypeTests extends FieldTypeTestCase { - - @Override - public void testEquals() { - EqualsHashCodeTestUtils.checkEqualsAndHashCode(IgnoredFieldMapper.IgnoredFieldType.INSTANCE, - IgnoredFieldMapper.IgnoredFieldType::clone); - } - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return IgnoredFieldMapper.IgnoredFieldType.INSTANCE; - } +public class IgnoredFieldTypeTests extends FieldTypeTestCase { public void testPrefixQuery() { MappedFieldType ft = IgnoredFieldMapper.IgnoredFieldType.INSTANCE; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/IndexFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/IndexFieldTypeTests.java index fb592b1d4d7da..11dcfe4f23fa8 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/IndexFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/IndexFieldTypeTests.java @@ -28,7 +28,6 @@ import org.elasticsearch.index.query.QueryShardContext; import org.elasticsearch.index.query.QueryShardException; import org.elasticsearch.test.ESTestCase; -import org.elasticsearch.test.EqualsHashCodeTestUtils; import java.util.function.Predicate; @@ -36,11 +35,6 @@ public class IndexFieldTypeTests extends ESTestCase { - public void testEqualsHashCode() { - EqualsHashCodeTestUtils.checkEqualsAndHashCode(IndexFieldMapper.IndexFieldType.INSTANCE, - IndexFieldMapper.IndexFieldType::new); - } - public void testPrefixQuery() { MappedFieldType ft = IndexFieldMapper.IndexFieldType.INSTANCE; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/IpFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/IpFieldTypeTests.java index fd7bc36e73fde..b075ed965ad85 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/IpFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/IpFieldTypeTests.java @@ -29,13 +29,8 @@ import java.net.InetAddress; import java.util.Arrays; import java.util.Collections; -import java.util.Map; -public class IpFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new IpFieldMapper.IpFieldType(name, true, true, meta); - } +public class IpFieldTypeTests extends FieldTypeTestCase { public void testValueFormat() throws Exception { MappedFieldType ft = new IpFieldMapper.IpFieldType("field"); diff --git a/server/src/test/java/org/elasticsearch/index/mapper/KeywordFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/KeywordFieldTypeTests.java index 80a6466038d6c..a6f0a7ee5f00b 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/KeywordFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/KeywordFieldTypeTests.java @@ -48,14 +48,8 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Map; -public class KeywordFieldTypeTests extends FieldTypeTestCase { - - @Override - protected KeywordFieldType createDefaultFieldType(String name, Map meta) { - return new KeywordFieldMapper.KeywordFieldType(name, true, true, meta); - } +public class KeywordFieldTypeTests extends FieldTypeTestCase { public void testIsFieldWithinQuery() throws IOException { KeywordFieldType ft = new KeywordFieldType("field"); diff --git a/server/src/test/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldTypeTests.java index 4fbfe92f9900e..b34c998656262 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/LegacyGeoShapeFieldTypeTests.java @@ -21,13 +21,7 @@ import org.elasticsearch.common.geo.SpatialStrategy; import org.elasticsearch.index.mapper.LegacyGeoShapeFieldMapper.GeoShapeFieldType; -import java.util.Map; - -public class LegacyGeoShapeFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new GeoShapeFieldType(name, true, true, meta); - } +public class LegacyGeoShapeFieldTypeTests extends FieldTypeTestCase { /** * Test for {@link LegacyGeoShapeFieldMapper.GeoShapeFieldType#setStrategy(SpatialStrategy)} that checks diff --git a/server/src/test/java/org/elasticsearch/index/mapper/NumberFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/NumberFieldTypeTests.java index 407fdca4d3b51..30b131d4f5ada 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/NumberFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/NumberFieldTypeTests.java @@ -61,14 +61,13 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Map; import java.util.function.Supplier; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.instanceOf; -public class NumberFieldTypeTests extends FieldTypeTestCase { +public class NumberFieldTypeTests extends FieldTypeTestCase { NumberType type; @@ -77,11 +76,6 @@ public void pickType() { type = RandomPicks.randomFrom(random(), NumberFieldMapper.NumberType.values()); } - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new NumberFieldMapper.NumberFieldType(name, type, true, true, meta); - } - public void testEqualsWithDifferentNumberTypes() { NumberType type = randomFrom(NumberType.values()); NumberFieldType fieldType = new NumberFieldType("foo", type); @@ -94,7 +88,7 @@ public void testEqualsWithDifferentNumberTypes() { } public void testIsFieldWithinQuery() throws IOException { - MappedFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + MappedFieldType ft = new NumberFieldType("field", NumberType.INTEGER); // current impl ignores args and should always return INTERSECTS assertEquals(Relation.INTERSECTS, ft.isFieldWithinQuery(null, randomDouble(), randomDouble(), randomBoolean(), randomBoolean(), null, null, null)); diff --git a/server/src/test/java/org/elasticsearch/index/mapper/RangeFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/RangeFieldTypeTests.java index 9dcdb4e32fc28..f9feb59700a42 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/RangeFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/RangeFieldTypeTests.java @@ -48,12 +48,11 @@ import java.net.InetAddress; import java.util.Collections; -import java.util.Map; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.instanceOf; -public class RangeFieldTypeTests extends FieldTypeTestCase { +public class RangeFieldTypeTests extends FieldTypeTestCase { RangeType type; protected static String FIELDNAME = "field"; protected static int DISTANCE = 10; @@ -65,17 +64,16 @@ public void setupProperties() { nowInMillis = randomNonNegativeLong(); } - @Override - protected RangeFieldType createDefaultFieldType(String name, Map meta) { + protected RangeFieldType createDefaultFieldType(String name) { if (type == RangeType.DATE) { - return new RangeFieldType(name, true, true, RangeFieldMapper.Defaults.DATE_FORMATTER, meta); + return new RangeFieldType(name, true, true, RangeFieldMapper.Defaults.DATE_FORMATTER, Collections.emptyMap()); } - return new RangeFieldType(name, type, true, true, meta); + return new RangeFieldType(name, type, true, true, Collections.emptyMap()); } public void testRangeQuery() throws Exception { QueryShardContext context = createContext(); - RangeFieldType ft = createDefaultFieldType(FIELDNAME, Collections.emptyMap()); + RangeFieldType ft = createDefaultFieldType(FIELDNAME); ShapeRelation relation = randomFrom(ShapeRelation.values()); boolean includeLower = randomBoolean(); @@ -97,7 +95,7 @@ public void testRangeQuery() throws Exception { public void testRangeQueryIntersectsAdjacentValues() throws Exception { QueryShardContext context = createContext(); ShapeRelation relation = randomFrom(ShapeRelation.values()); - RangeFieldType ft = createDefaultFieldType(FIELDNAME, Collections.emptyMap()); + RangeFieldType ft = createDefaultFieldType(FIELDNAME); Object from = null; Object to = null; @@ -154,7 +152,7 @@ public void testRangeQueryIntersectsAdjacentValues() throws Exception { */ public void testFromLargerToErrors() throws Exception { QueryShardContext context = createContext(); - RangeFieldType ft = createDefaultFieldType(FIELDNAME, Collections.emptyMap()); + RangeFieldType ft = createDefaultFieldType(FIELDNAME); final Object from; final Object to; @@ -474,7 +472,7 @@ public void testParseIp() { public void testTermQuery() throws Exception { // See https://github.com/elastic/elasticsearch/issues/25950 QueryShardContext context = createContext(); - RangeFieldType ft = createDefaultFieldType(FIELDNAME, Collections.emptyMap()); + RangeFieldType ft = createDefaultFieldType(FIELDNAME); Object value = nextFrom(); ShapeRelation relation = ShapeRelation.INTERSECTS; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/RoutingFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/RoutingFieldTypeTests.java index 8576c57a8bc01..49855b4096f81 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/RoutingFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/RoutingFieldTypeTests.java @@ -25,22 +25,8 @@ import org.apache.lucene.search.WildcardQuery; import org.apache.lucene.util.BytesRef; import org.elasticsearch.ElasticsearchException; -import org.elasticsearch.test.EqualsHashCodeTestUtils; -import java.util.Map; - -public class RoutingFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return RoutingFieldMapper.RoutingFieldType.INSTANCE; - } - - @Override - public void testEquals() { - EqualsHashCodeTestUtils.checkEqualsAndHashCode(RoutingFieldMapper.RoutingFieldType.INSTANCE, - RoutingFieldMapper.RoutingFieldType::new); - } +public class RoutingFieldTypeTests extends FieldTypeTestCase { public void testPrefixQuery() { MappedFieldType ft = RoutingFieldMapper.RoutingFieldType.INSTANCE; diff --git a/server/src/test/java/org/elasticsearch/index/mapper/TextFieldTypeTests.java b/server/src/test/java/org/elasticsearch/index/mapper/TextFieldTypeTests.java index 49223cd99d17b..43a1ff09314f1 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/TextFieldTypeTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/TextFieldTypeTests.java @@ -38,47 +38,16 @@ import org.elasticsearch.common.lucene.BytesRefs; import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.index.mapper.TextFieldMapper.TextFieldType; -import org.junit.Before; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Map; import static org.apache.lucene.search.MultiTermQuery.CONSTANT_SCORE_REWRITE; import static org.hamcrest.Matchers.equalTo; -public class TextFieldTypeTests extends FieldTypeTestCase { - - @Before - public void addModifiers() { - addModifier(t -> { - TextFieldType copy = t.clone(); - copy.setFielddata(t.fielddata() == false); - return copy; - }); - addModifier(t -> { - TextFieldType copy = t.clone(); - copy.setFielddataMaxFrequency(t.fielddataMaxFrequency() + 1); - return copy; - }); - addModifier(t -> { - TextFieldType copy = t.clone(); - copy.setFielddataMinFrequency(t.fielddataMinFrequency() + 1); - return copy; - }); - addModifier(t -> { - TextFieldType copy = t.clone(); - copy.setFielddataMinSegmentSize(t.fielddataMinSegmentSize() + 1); - return copy; - }); - } - - @Override - protected TextFieldType createDefaultFieldType(String name, Map meta) { - return new TextFieldType(name, true, meta); - } +public class TextFieldTypeTests extends FieldTypeTestCase { public void testTermQuery() { MappedFieldType ft = new TextFieldType("field"); diff --git a/server/src/test/java/org/elasticsearch/search/collapse/CollapseBuilderTests.java b/server/src/test/java/org/elasticsearch/search/collapse/CollapseBuilderTests.java index 55467cc3e27f6..ebd23a2f49920 100644 --- a/server/src/test/java/org/elasticsearch/search/collapse/CollapseBuilderTests.java +++ b/server/src/test/java/org/elasticsearch/search/collapse/CollapseBuilderTests.java @@ -198,11 +198,6 @@ public void testBuildWithExceptions() { { MappedFieldType fieldType = new MappedFieldType("field", true, true, TextSearchInfo.NONE, Collections.emptyMap()) { - @Override - public MappedFieldType clone() { - return null; - } - @Override public String typeName() { return null; diff --git a/server/src/test/java/org/elasticsearch/search/slice/SliceBuilderTests.java b/server/src/test/java/org/elasticsearch/search/slice/SliceBuilderTests.java index 4ba3e609100af..dc3047858ac9f 100644 --- a/server/src/test/java/org/elasticsearch/search/slice/SliceBuilderTests.java +++ b/server/src/test/java/org/elasticsearch/search/slice/SliceBuilderTests.java @@ -120,10 +120,6 @@ private ShardSearchRequest createRequest(int shardId, String[] routings, String private QueryShardContext createShardContext(Version indexVersionCreated, IndexReader reader, String fieldName, DocValuesType dvType, int numShards, int shardId) { MappedFieldType fieldType = new MappedFieldType(fieldName, true, dvType != null, TextSearchInfo.NONE, Collections.emptyMap()) { - @Override - public MappedFieldType clone() { - return null; - } @Override public String typeName() { diff --git a/test/framework/src/main/java/org/elasticsearch/index/mapper/FieldTypeTestCase.java b/test/framework/src/main/java/org/elasticsearch/index/mapper/FieldTypeTestCase.java index fb2bf8d99684d..fe6cbe3276614 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/mapper/FieldTypeTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/index/mapper/FieldTypeTestCase.java @@ -20,51 +20,16 @@ import org.elasticsearch.index.query.QueryShardContext; import org.elasticsearch.test.ESTestCase; -import org.elasticsearch.test.EqualsHashCodeTestUtils; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; /** Base test case for subclasses of MappedFieldType */ -public abstract class FieldTypeTestCase extends ESTestCase { +public abstract class FieldTypeTestCase extends ESTestCase { public static final QueryShardContext MOCK_QSC = createMockQueryShardContext(true); public static final QueryShardContext MOCK_QSC_DISALLOW_EXPENSIVE = createMockQueryShardContext(false); - /** Create a default constructed fieldtype */ - protected abstract T createDefaultFieldType(String name, Map meta); - - @SuppressWarnings("unchecked") - private final List> modifiers = new ArrayList<>(Arrays.asList( - t -> createDefaultFieldType(t.name() + "-mutated", t.meta()), - t -> { - MappedFieldType copy = t.clone(); - copy.setBoost(t.boost() + 1); - return (T) copy; - }, - t -> { - MappedFieldType copy = t.clone(); - copy.setEagerGlobalOrdinals(t.eagerGlobalOrdinals() == false); - return (T) copy; - }, - t -> { - Map meta = new HashMap<>(t.meta()); - meta.put("bogus", "bogus"); - return createDefaultFieldType(t.name(), meta); - } - )); - - protected void addModifier(EqualsHashCodeTestUtils.MutateFunction modifier) { - modifiers.add(modifier); - } - protected QueryShardContext randomMockShardContext() { return randomFrom(MOCK_QSC, MOCK_QSC_DISALLOW_EXPENSIVE); } @@ -75,17 +40,4 @@ static QueryShardContext createMockQueryShardContext(boolean allowExpensiveQueri return queryShardContext; } - public void testClone() { - MappedFieldType fieldType = createDefaultFieldType("foo", Collections.emptyMap()); - EqualsHashCodeTestUtils.checkEqualsAndHashCode(fieldType, MappedFieldType::clone); - } - - @SuppressWarnings("unchecked") - public void testEquals() { - for (EqualsHashCodeTestUtils.MutateFunction modifier : modifiers) { - EqualsHashCodeTestUtils.checkEqualsAndHashCode(createDefaultFieldType("foo", Collections.emptyMap()), - t -> (T) t.clone(), modifier); - } - } - } diff --git a/test/framework/src/main/java/org/elasticsearch/index/mapper/MockFieldMapper.java b/test/framework/src/main/java/org/elasticsearch/index/mapper/MockFieldMapper.java index 12130b5bf337b..223af014c955e 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/mapper/MockFieldMapper.java +++ b/test/framework/src/main/java/org/elasticsearch/index/mapper/MockFieldMapper.java @@ -52,15 +52,6 @@ public FakeFieldType(String name) { super(name, true, false, TextSearchInfo.SIMPLE_MATCH_ONLY, Collections.emptyMap()); } - protected FakeFieldType(FakeFieldType ref) { - super(ref); - } - - @Override - public MappedFieldType clone() { - return new FakeFieldType(this); - } - @Override public String typeName() { return "faketype"; diff --git a/x-pack/plugin/analytics/src/main/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldMapper.java b/x-pack/plugin/analytics/src/main/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldMapper.java index 67832936cfa3e..685eda193d0b9 100644 --- a/x-pack/plugin/analytics/src/main/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldMapper.java +++ b/x-pack/plugin/analytics/src/main/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldMapper.java @@ -170,20 +170,11 @@ public HistogramFieldType(String name, boolean hasDocValues, Map super(name, false, hasDocValues, TextSearchInfo.SIMPLE_MATCH_ONLY, meta); } - HistogramFieldType(HistogramFieldType ref) { - super(ref); - } - @Override public String typeName() { return CONTENT_TYPE; } - @Override - public MappedFieldType clone() { - return new HistogramFieldType(this); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/x-pack/plugin/analytics/src/test/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldTypeTests.java b/x-pack/plugin/analytics/src/test/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldTypeTests.java deleted file mode 100644 index 78acdb9fa7c73..0000000000000 --- a/x-pack/plugin/analytics/src/test/java/org/elasticsearch/xpack/analytics/mapper/HistogramFieldTypeTests.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - - -package org.elasticsearch.xpack.analytics.mapper; - -import org.elasticsearch.index.mapper.FieldTypeTestCase; -import org.elasticsearch.index.mapper.MappedFieldType; - -import java.util.Map; - -public class HistogramFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new HistogramFieldMapper.HistogramFieldType(name, true, meta); - } -} diff --git a/x-pack/plugin/mapper-constant-keyword/src/main/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldMapper.java b/x-pack/plugin/mapper-constant-keyword/src/main/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldMapper.java index f8dc530e26a5f..e034e2b4ae268 100644 --- a/x-pack/plugin/mapper-constant-keyword/src/main/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldMapper.java +++ b/x-pack/plugin/mapper-constant-keyword/src/main/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldMapper.java @@ -122,29 +122,6 @@ public ConstantKeywordFieldType(String name, String value) { this(name, value, Collections.emptyMap()); } - protected ConstantKeywordFieldType(ConstantKeywordFieldType ref) { - super(ref); - this.value = ref.value; - } - - public ConstantKeywordFieldType clone() { - return new ConstantKeywordFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (super.equals(o) == false) { - return false; - } - ConstantKeywordFieldType other = (ConstantKeywordFieldType) o; - return Objects.equals(value, other.value); - } - - @Override - public int hashCode() { - return 31 * super.hashCode() + Objects.hashCode(value); - } - /** Return the value that this field wraps. This may be {@code null} if the field is not configured yet. */ public String value() { return value; diff --git a/x-pack/plugin/mapper-constant-keyword/src/test/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldTypeTests.java b/x-pack/plugin/mapper-constant-keyword/src/test/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldTypeTests.java index 2baf48b802043..3952e33a730f6 100644 --- a/x-pack/plugin/mapper-constant-keyword/src/test/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldTypeTests.java +++ b/x-pack/plugin/mapper-constant-keyword/src/test/java/org/elasticsearch/xpack/constantkeyword/mapper/ConstantKeywordFieldTypeTests.java @@ -11,19 +11,12 @@ import org.apache.lucene.util.automaton.RegExp; import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.index.mapper.FieldTypeTestCase; -import org.elasticsearch.index.mapper.MappedFieldType; import org.elasticsearch.xpack.constantkeyword.mapper.ConstantKeywordFieldMapper.ConstantKeywordFieldType; import java.util.Arrays; import java.util.Collections; -import java.util.Map; -public class ConstantKeywordFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new ConstantKeywordFieldType(name, "foo", meta); - } +public class ConstantKeywordFieldTypeTests extends FieldTypeTestCase { public void testTermQuery() { ConstantKeywordFieldType ft = new ConstantKeywordFieldType("f", "foo"); diff --git a/x-pack/plugin/mapper-flattened/src/main/java/org/elasticsearch/xpack/flattened/mapper/FlatObjectFieldMapper.java b/x-pack/plugin/mapper-flattened/src/main/java/org/elasticsearch/xpack/flattened/mapper/FlatObjectFieldMapper.java index 2b77d7dbe3721..6fc8183bca421 100644 --- a/x-pack/plugin/mapper-flattened/src/main/java/org/elasticsearch/xpack/flattened/mapper/FlatObjectFieldMapper.java +++ b/x-pack/plugin/mapper-flattened/src/main/java/org/elasticsearch/xpack/flattened/mapper/FlatObjectFieldMapper.java @@ -237,34 +237,10 @@ public KeyedFlatObjectFieldType(String name, boolean indexed, boolean hasDocValu this.splitQueriesOnWhitespace = splitQueriesOnWhitespace; } - public KeyedFlatObjectFieldType clone() { - return new KeyedFlatObjectFieldType(this); - } - - private KeyedFlatObjectFieldType(KeyedFlatObjectFieldType ref) { - super(ref); - this.key = ref.key; - this.splitQueriesOnWhitespace = ref.splitQueriesOnWhitespace; - } - private KeyedFlatObjectFieldType(String name, String key, RootFlatObjectFieldType ref) { this(name, ref.isSearchable(), ref.hasDocValues(), key, ref.splitQueriesOnWhitespace, ref.meta()); } - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - if (!super.equals(o)) return false; - KeyedFlatObjectFieldType that = (KeyedFlatObjectFieldType) o; - return splitQueriesOnWhitespace == that.splitQueriesOnWhitespace; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), splitQueriesOnWhitespace); - } - @Override public String typeName() { return CONTENT_TYPE; @@ -483,29 +459,6 @@ public RootFlatObjectFieldType(String name, boolean indexed, boolean hasDocValue setIndexAnalyzer(Lucene.KEYWORD_ANALYZER); } - private RootFlatObjectFieldType(RootFlatObjectFieldType ref) { - super(ref); - this.splitQueriesOnWhitespace = ref.splitQueriesOnWhitespace; - } - - public RootFlatObjectFieldType clone() { - return new RootFlatObjectFieldType(this); - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - if (!super.equals(o)) return false; - RootFlatObjectFieldType that = (RootFlatObjectFieldType) o; - return splitQueriesOnWhitespace == that.splitQueriesOnWhitespace; - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), splitQueriesOnWhitespace); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/KeyedFlatObjectFieldTypeTests.java b/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/KeyedFlatObjectFieldTypeTests.java index 7622b4d2ad3f1..09d6afb6710e6 100644 --- a/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/KeyedFlatObjectFieldTypeTests.java +++ b/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/KeyedFlatObjectFieldTypeTests.java @@ -18,31 +18,19 @@ import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.index.mapper.FieldTypeTestCase; import org.elasticsearch.xpack.flattened.mapper.FlatObjectFieldMapper.KeyedFlatObjectFieldType; -import org.junit.Before; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Map; -public class KeyedFlatObjectFieldTypeTests extends FieldTypeTestCase { +public class KeyedFlatObjectFieldTypeTests extends FieldTypeTestCase { - @Before - public void addModifiers() { - addModifier(t -> { - KeyedFlatObjectFieldType copy = t.clone(); - copy.setSplitQueriesOnWhitespace(t.splitQueriesOnWhitespace() == false); - return copy; - }); - } - - @Override - protected KeyedFlatObjectFieldType createDefaultFieldType(String name, Map meta) { - return new KeyedFlatObjectFieldType(name, true, true, "key", false, meta); + protected KeyedFlatObjectFieldType createFieldType() { + return new KeyedFlatObjectFieldType("field", true, true, "key", false, Collections.emptyMap()); } public void testIndexedValueForSearch() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); BytesRef keywordValue = ft.indexedValueForSearch("value"); assertEquals(new BytesRef("key\0value"), keywordValue); @@ -55,7 +43,7 @@ public void testIndexedValueForSearch() { } public void testTermQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); Query expected = new TermQuery(new Term("field", "key\0value")); assertEquals(expected, ft.termQuery("value", null)); @@ -68,7 +56,7 @@ public void testTermQuery() { } public void testTermsQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); Query expected = new TermInSetQuery("field", new BytesRef("key\0value1"), @@ -83,14 +71,14 @@ public void testTermsQuery() { } public void testExistsQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); Query expected = new PrefixQuery(new Term("field", "key\0")); assertEquals(expected, ft.existsQuery(null)); } public void testPrefixQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); Query expected = new PrefixQuery(new Term("field", "key\0val")); assertEquals(expected, ft.prefixQuery("val", MultiTermQuery.CONSTANT_SCORE_REWRITE, MOCK_QSC)); @@ -102,7 +90,7 @@ public void testPrefixQuery() { } public void testFuzzyQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); UnsupportedOperationException e = expectThrows(UnsupportedOperationException.class, () -> ft.fuzzyQuery("value", Fuzziness.fromEdits(2), 1, 50, true, randomMockShardContext())); @@ -110,7 +98,7 @@ public void testFuzzyQuery() { } public void testRangeQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); TermRangeQuery expected = new TermRangeQuery("field", new BytesRef("key\0lower"), @@ -139,7 +127,7 @@ public void testRangeQuery() { } public void testRegexpQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); UnsupportedOperationException e = expectThrows(UnsupportedOperationException.class, () -> ft.regexpQuery("valu*", 0, 10, null, randomMockShardContext())); @@ -147,7 +135,7 @@ public void testRegexpQuery() { } public void testWildcardQuery() { - KeyedFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + KeyedFlatObjectFieldType ft = createFieldType(); UnsupportedOperationException e = expectThrows(UnsupportedOperationException.class, () -> ft.wildcardQuery("valu*", null, randomMockShardContext())); diff --git a/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/RootFlatObjectFieldTypeTests.java b/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/RootFlatObjectFieldTypeTests.java index b49fda1ea9fc3..3f049b003ddd6 100644 --- a/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/RootFlatObjectFieldTypeTests.java +++ b/x-pack/plugin/mapper-flattened/src/test/java/org/elasticsearch/xpack/flattened/mapper/RootFlatObjectFieldTypeTests.java @@ -20,29 +20,17 @@ import org.elasticsearch.index.mapper.FieldNamesFieldMapper; import org.elasticsearch.index.mapper.FieldTypeTestCase; import org.elasticsearch.xpack.flattened.mapper.FlatObjectFieldMapper.RootFlatObjectFieldType; -import org.junit.Before; import java.util.Collections; -import java.util.Map; -public class RootFlatObjectFieldTypeTests extends FieldTypeTestCase { +public class RootFlatObjectFieldTypeTests extends FieldTypeTestCase { - @Before - public void addModifiers() { - addModifier(t -> { - RootFlatObjectFieldType copy = t.clone(); - copy.setSplitQueriesOnWhitespace(t.splitQueriesOnWhitespace() == false); - return copy; - }); - } - - @Override - protected RootFlatObjectFieldType createDefaultFieldType(String name, Map meta) { - return new RootFlatObjectFieldType(name, true, true, meta, false); + protected RootFlatObjectFieldType createDefaultFieldType() { + return new RootFlatObjectFieldType("field", true, true, Collections.emptyMap(), false); } public void testValueForDisplay() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); String fieldValue = "{ \"key\": \"value\" }"; BytesRef storedValue = new BytesRef(fieldValue); @@ -50,7 +38,7 @@ public void testValueForDisplay() { } public void testTermQuery() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); Query expected = new TermQuery(new Term("field", "value")); assertEquals(expected, ft.termQuery("value", null)); @@ -73,7 +61,7 @@ public void testExistsQuery() { } public void testFuzzyQuery() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); Query expected = new FuzzyQuery(new Term("field", "value"), 2, 1, 50, true); Query actual = ft.fuzzyQuery("value", Fuzziness.fromEdits(2), 1, 50, true, MOCK_QSC); @@ -87,7 +75,7 @@ public void testFuzzyQuery() { } public void testRangeQuery() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); TermRangeQuery expected = new TermRangeQuery("field", new BytesRef("lower"), @@ -106,7 +94,7 @@ public void testRangeQuery() { } public void testRegexpQuery() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); Query expected = new RegexpQuery(new Term("field", "val.*")); Query actual = ft.regexpQuery("val.*", 0, 10, null, MOCK_QSC); @@ -119,7 +107,7 @@ public void testRegexpQuery() { } public void testWildcardQuery() { - RootFlatObjectFieldType ft = createDefaultFieldType("field", Collections.emptyMap()); + RootFlatObjectFieldType ft = createDefaultFieldType(); Query expected = new WildcardQuery(new Term("field", new BytesRef("valu*"))); assertEquals(expected, ft.wildcardQuery("valu*", null, MOCK_QSC)); diff --git a/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/GeoShapeWithDocValuesFieldMapper.java b/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/GeoShapeWithDocValuesFieldMapper.java index b1f4da8c521ce..5aa7cc16bd7bf 100644 --- a/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/GeoShapeWithDocValuesFieldMapper.java +++ b/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/GeoShapeWithDocValuesFieldMapper.java @@ -130,19 +130,10 @@ public GeoShapeWithDocValuesFieldType(String name, boolean indexed, boolean hasD super(name, indexed, hasDocValues, meta); } - protected GeoShapeWithDocValuesFieldType(GeoShapeWithDocValuesFieldType ref) { - super(ref); - } - public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); return new AbstractLatLonShapeIndexFieldData.Builder(GeoShapeValuesSourceType.instance()); } - - @Override - public GeoShapeWithDocValuesFieldType clone() { - return new GeoShapeWithDocValuesFieldType(this); - } } public static final class TypeParser extends AbstractShapeGeometryFieldMapper.TypeParser { diff --git a/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldMapper.java b/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldMapper.java index 0a3e5ed0ec3e6..3278911094f90 100644 --- a/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldMapper.java +++ b/x-pack/plugin/spatial/src/main/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldMapper.java @@ -131,19 +131,10 @@ public PointFieldType(String name, boolean indexed, boolean hasDocValues, Map { - - @Before - public void addModifiers() { - addModifier(t -> { - GeoShapeWithDocValuesFieldType copy = t.clone(); - if (copy.orientation() == ShapeBuilder.Orientation.RIGHT) { - copy.setOrientation(ShapeBuilder.Orientation.LEFT); - } else { - copy.setOrientation(ShapeBuilder.Orientation.RIGHT); - } - return copy; - }); - } - - @Override - protected GeoShapeWithDocValuesFieldType createDefaultFieldType(String name, Map meta) { - return new GeoShapeWithDocValuesFieldType(name, true, true, meta); - } -} diff --git a/x-pack/plugin/spatial/src/test/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldTypeTests.java b/x-pack/plugin/spatial/src/test/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldTypeTests.java deleted file mode 100644 index 9c851988e35f9..0000000000000 --- a/x-pack/plugin/spatial/src/test/java/org/elasticsearch/xpack/spatial/index/mapper/PointFieldTypeTests.java +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ -package org.elasticsearch.xpack.spatial.index.mapper; - -import org.elasticsearch.index.mapper.FieldTypeTestCase; -import org.elasticsearch.index.mapper.MappedFieldType; - -import java.util.Map; - -public class PointFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new PointFieldMapper.PointFieldType(name, true, true, meta); - } -} diff --git a/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldMapper.java b/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldMapper.java index 2e1140afa24a1..d3ef97804f38b 100644 --- a/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldMapper.java +++ b/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldMapper.java @@ -104,15 +104,6 @@ public DenseVectorFieldType(String name, int dims, Map meta) { this.dims = dims; } - protected DenseVectorFieldType(DenseVectorFieldType ref) { - super(ref); - this.dims = ref.dims; - } - - public DenseVectorFieldType clone() { - return new DenseVectorFieldType(this); - } - int dims() { return dims; } diff --git a/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldMapper.java b/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldMapper.java index 361fb9d19ecf2..a1cdd3aaf7383 100644 --- a/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldMapper.java +++ b/x-pack/plugin/vectors/src/main/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldMapper.java @@ -90,14 +90,6 @@ public SparseVectorFieldType(String name, Map meta) { super(name, false, false, TextSearchInfo.NONE, meta); } - protected SparseVectorFieldType(SparseVectorFieldType ref) { - super(ref); - } - - public SparseVectorFieldType clone() { - return new SparseVectorFieldType(this); - } - @Override public String typeName() { return CONTENT_TYPE; diff --git a/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldTypeTests.java b/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldTypeTests.java deleted file mode 100644 index 8a82208fb36cc..0000000000000 --- a/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/DenseVectorFieldTypeTests.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - - -package org.elasticsearch.xpack.vectors.mapper; - -import org.elasticsearch.index.mapper.FieldTypeTestCase; -import org.elasticsearch.index.mapper.MappedFieldType; - -import java.util.Map; - -public class DenseVectorFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new DenseVectorFieldMapper.DenseVectorFieldType(name, 4, meta); - } -} diff --git a/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldTypeTests.java b/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldTypeTests.java index 9ed02a4a5faa4..403ec3f38e2cb 100644 --- a/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldTypeTests.java +++ b/x-pack/plugin/vectors/src/test/java/org/elasticsearch/xpack/vectors/mapper/SparseVectorFieldTypeTests.java @@ -10,12 +10,12 @@ import org.elasticsearch.index.mapper.FieldTypeTestCase; import org.elasticsearch.index.mapper.MappedFieldType; -import java.util.Map; +import java.util.Collections; -public class SparseVectorFieldTypeTests extends FieldTypeTestCase { +public class SparseVectorFieldTypeTests extends FieldTypeTestCase { - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new SparseVectorFieldMapper.SparseVectorFieldType(name, meta); + public void testDocValuesDisabled() { + MappedFieldType fieldType = new SparseVectorFieldMapper.SparseVectorFieldType("field", Collections.emptyMap()); + expectThrows(IllegalArgumentException.class, () -> fieldType.fielddataBuilder("index")); } } diff --git a/x-pack/plugin/wildcard/src/main/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldMapper.java b/x-pack/plugin/wildcard/src/main/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldMapper.java index d98283850b9f4..a38ddbf40f70d 100644 --- a/x-pack/plugin/wildcard/src/main/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldMapper.java +++ b/x-pack/plugin/wildcard/src/main/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldMapper.java @@ -217,16 +217,6 @@ public WildcardFieldType(String name, FieldType fieldType, Map m setIndexAnalyzer(WILDCARD_ANALYZER); } - protected WildcardFieldType(WildcardFieldType ref) { - super(ref); - } - - public WildcardFieldType clone() { - WildcardFieldType result = new WildcardFieldType(this); - return result; - } - - @Override public Query wildcardQuery(String wildcardPattern, RewriteMethod method, QueryShardContext context) { @@ -849,12 +839,12 @@ public Query fuzzyQuery( public String typeName() { return CONTENT_TYPE; } - + @Override public String familyTypeName() { return KeywordFieldMapper.CONTENT_TYPE; } - + @Override public Query existsQuery(QueryShardContext context) { diff --git a/x-pack/plugin/wildcard/src/test/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldTypeTests.java b/x-pack/plugin/wildcard/src/test/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldTypeTests.java deleted file mode 100644 index 8f2b5b00b156a..0000000000000 --- a/x-pack/plugin/wildcard/src/test/java/org/elasticsearch/xpack/wildcard/mapper/WildcardFieldTypeTests.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - - -package org.elasticsearch.xpack.wildcard.mapper; - -import org.elasticsearch.index.mapper.FieldTypeTestCase; -import org.elasticsearch.index.mapper.MappedFieldType; - -import java.util.Map; - -public class WildcardFieldTypeTests extends FieldTypeTestCase { - - @Override - protected MappedFieldType createDefaultFieldType(String name, Map meta) { - return new WildcardFieldMapper.WildcardFieldType(name, WildcardFieldMapper.Defaults.FIELD_TYPE, meta); - } -}