Class 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.
    • Constructor Summary

      Constructors 
      Constructor Description
      ParseField​(java.lang.String name, 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 by getPreferredName()
        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 returned ParseField
        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 with allReplacedWith.
      • match

        public boolean match​(java.lang.String fieldName,
                             DeprecationHandler deprecationHandler)
        Does fieldName match this field?
        Parameters:
        fieldName - the field name to match against this ParseField
        deprecationHandler - called if fieldName is deprecated
        Returns:
        true if fieldName matches any of the acceptable names for this ParseField.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.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 return null 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.