Package org.elasticsearch.common
Class ParseField
- java.lang.Object
-
- org.elasticsearch.common.ParseField
-
public class ParseField extends java.lang.Object
Holds a field that can be found in a request while parsing and its different variants, which may be deprecated.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ParseField.CommonFields
-
Constructor Summary
Constructors Constructor Description ParseField(java.lang.String name, java.lang.String... deprecatedNames)
-
Method Summary
Modifier and Type Method Description java.lang.String[]
getAllNamesIncludedDeprecated()
java.lang.String
getAllReplacedWith()
java.lang.String[]
getDeprecatedNames()
java.lang.String
getPreferredName()
boolean
match(java.lang.String fieldName, DeprecationHandler deprecationHandler)
DoesfieldName
match this field?java.lang.String
toString()
ParseField
withAllDeprecated(java.lang.String allReplacedWith)
Return a new ParseField where all field names are deprecated and replaced withallReplacedWith
.ParseField
withDeprecation(java.lang.String... deprecatedNames)
-
-
-
Constructor Detail
-
ParseField
public ParseField(java.lang.String name, java.lang.String... deprecatedNames)
- Parameters:
name
- the primary name for this field. This will be returned bygetPreferredName()
deprecatedNames
- names for this field which are deprecated and will not be accepted when strict matching is used.
-
-
Method Detail
-
getPreferredName
public java.lang.String getPreferredName()
- Returns:
- the preferred name used for this field
-
getAllNamesIncludedDeprecated
public java.lang.String[] getAllNamesIncludedDeprecated()
- Returns:
- All names for this field regardless of whether they are deprecated
-
withDeprecation
public ParseField withDeprecation(java.lang.String... deprecatedNames)
- Parameters:
deprecatedNames
- deprecated names to include with the returnedParseField
- Returns:
- a new
ParseField
using the preferred name from this one but with the specified deprecated names
-
withAllDeprecated
public ParseField withAllDeprecated(java.lang.String allReplacedWith)
Return a new ParseField where all field names are deprecated and replaced withallReplacedWith
.
-
match
public boolean match(java.lang.String fieldName, DeprecationHandler deprecationHandler)
DoesfieldName
match this field?- Parameters:
fieldName
- the field name to match against thisParseField
deprecationHandler
- called iffieldName
is deprecated- Returns:
- true if
fieldName
matches any of the acceptable names for thisParseField
.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
getAllReplacedWith
public java.lang.String getAllReplacedWith()
- Returns:
- the message to use if this
ParseField
has been entirely deprecated in favor of something else. This method will returnnull
if the ParseField has not been completely deprecated.
-
getDeprecatedNames
public java.lang.String[] getDeprecatedNames()
- Returns:
- an array of the names for the
ParseField
which are deprecated.
-
-