Class EntityTag


  • public class EntityTag
    extends Object
    An abstraction for the value of a HTTP Entity Tag, used as the value of an ETag response header.
    See Also:
    HTTP/1.1 section 3.11
    • Constructor Detail

      • EntityTag

        public EntityTag​(String value)
        Creates a new instance of a strong EntityTag.
        Parameters:
        value - the value of the tag, quotes not included.
        Throws:
        IllegalArgumentException - if value is null
      • EntityTag

        public EntityTag​(String value,
                         boolean weak)
        Creates a new instance of an EntityTag
        Parameters:
        value - the value of the tag, quotes not included.
        weak - true if this represents a weak tag, false otherwise
        Throws:
        IllegalArgumentException - if value is null
    • Method Detail

      • valueOf

        public static EntityTag valueOf​(String value)
                                 throws IllegalArgumentException
        Creates a new instance of EntityTag by parsing the supplied string.
        Parameters:
        value - the entity tag string
        Returns:
        the newly created EntityTag
        Throws:
        IllegalArgumentException - if the supplied string cannot be parsed or is null
      • isWeak

        public boolean isWeak()
        Check the strength of an EntityTag
        Returns:
        true if this represents a weak tag, false otherwise
      • getValue

        public String getValue()
        Get the value of an EntityTag
        Returns:
        the value of the tag
      • equals

        public boolean equals​(Object obj)
        Compares obj to this tag to see if they are the same considering weakness and value.
        Overrides:
        equals in class Object
        Parameters:
        obj - the object to compare to
        Returns:
        true if the two tags are the same, false otherwise.
      • hashCode

        public int hashCode()
        Generate hashCode based on value and weakness.
        Overrides:
        hashCode in class Object
        Returns:
        the hashCode
      • toString

        public String toString()
        Convert the entity tag to a string suitable for use as the value of the corresponding HTTP header.
        Overrides:
        toString in class Object
        Returns:
        a stringified entity tag