Class MimeType

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable

    public class MimeType
    extends java.lang.Object
    implements java.io.Externalizable
    A Multipurpose Internet Mail Extension (MIME) type, as defined in RFC 2045 and 2046.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      MimeType()
      Default constructor.
      MimeType​(java.lang.String rawdata)
      Constructor that builds a MimeType from a String.
      MimeType​(java.lang.String primary, java.lang.String sub)
      Constructor that builds a MimeType with the given primary and sub type but has an empty parameter list.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getBaseType()
      Return a String representation of this object without the parameter list.
      java.lang.String getParameter​(java.lang.String name)
      Retrieve the value associated with the given name, or null if there is no current association.
      MimeTypeParameterList getParameters()
      Retrieve this object's parameter list.
      java.lang.String getPrimaryType()
      Retrieve the primary type of this object.
      java.lang.String getSubType()
      Retrieve the subtype of this object.
      boolean match​(MimeType type)
      Determine if the primary and sub type of this object is the same as what is in the given type.
      boolean match​(java.lang.String rawdata)
      Determine if the primary and sub type of this object is the same as the content type described in rawdata.
      void readExternal​(java.io.ObjectInput in)
      The object implements the readExternal method to restore its contents by calling the methods of DataInput for primitive types and readObject for objects, strings and arrays.
      void removeParameter​(java.lang.String name)
      Remove any value associated with the given name.
      void setParameter​(java.lang.String name, java.lang.String value)
      Set the value to be associated with the given name, replacing any previous association.
      void setPrimaryType​(java.lang.String primary)
      Set the primary type for this object to the given String.
      void setSubType​(java.lang.String sub)
      Set the subtype for this object to the given String.
      java.lang.String toString()
      Return the String representation of this object.
      void writeExternal​(java.io.ObjectOutput out)
      The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings and arrays.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • MimeType

        public MimeType()
        Default constructor.
      • MimeType

        public MimeType​(java.lang.String rawdata)
                 throws MimeTypeParseException
        Constructor that builds a MimeType from a String.
        Parameters:
        rawdata - the MIME type string
        Throws:
        MimeTypeParseException - if the MIME type can't be parsed
      • MimeType

        public MimeType​(java.lang.String primary,
                        java.lang.String sub)
                 throws MimeTypeParseException
        Constructor that builds a MimeType with the given primary and sub type but has an empty parameter list.
        Parameters:
        primary - the primary MIME type
        sub - the MIME sub-type
        Throws:
        MimeTypeParseException - if the primary type or subtype is not a valid token
    • Method Detail

      • getPrimaryType

        public java.lang.String getPrimaryType()
        Retrieve the primary type of this object.
        Returns:
        the primary MIME type
      • setPrimaryType

        public void setPrimaryType​(java.lang.String primary)
                            throws MimeTypeParseException
        Set the primary type for this object to the given String.
        Parameters:
        primary - the primary MIME type
        Throws:
        MimeTypeParseException - if the primary type is not a valid token
      • getSubType

        public java.lang.String getSubType()
        Retrieve the subtype of this object.
        Returns:
        the MIME subtype
      • setSubType

        public void setSubType​(java.lang.String sub)
                        throws MimeTypeParseException
        Set the subtype for this object to the given String.
        Parameters:
        sub - the MIME subtype
        Throws:
        MimeTypeParseException - if the subtype is not a valid token
      • getParameters

        public MimeTypeParameterList getParameters()
        Retrieve this object's parameter list.
        Returns:
        a MimeTypeParameterList object representing the parameters
      • getParameter

        public java.lang.String getParameter​(java.lang.String name)
        Retrieve the value associated with the given name, or null if there is no current association.
        Parameters:
        name - the parameter name
        Returns:
        the paramter's value
      • setParameter

        public void setParameter​(java.lang.String name,
                                 java.lang.String value)
        Set the value to be associated with the given name, replacing any previous association.
        Parameters:
        name - the parameter name
        value - the paramter's value
      • removeParameter

        public void removeParameter​(java.lang.String name)
        Remove any value associated with the given name.
        Parameters:
        name - the parameter name
      • toString

        public java.lang.String toString()
        Return the String representation of this object.
        Overrides:
        toString in class java.lang.Object
      • getBaseType

        public java.lang.String getBaseType()
        Return a String representation of this object without the parameter list.
        Returns:
        the MIME type and sub-type
      • match

        public boolean match​(MimeType type)
        Determine if the primary and sub type of this object is the same as what is in the given type.
        Parameters:
        type - the MimeType object to compare with
        Returns:
        true if they match
      • match

        public boolean match​(java.lang.String rawdata)
                      throws MimeTypeParseException
        Determine if the primary and sub type of this object is the same as the content type described in rawdata.
        Parameters:
        rawdata - the MIME type string to compare with
        Returns:
        true if they match
        Throws:
        MimeTypeParseException - if the MIME type can't be parsed
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings and arrays.
        Specified by:
        writeExternal in interface java.io.Externalizable
        Parameters:
        out - the ObjectOutput object to write to
        Throws:
        java.io.IOException - Includes any I/O exceptions that may occur
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        The object implements the readExternal method to restore its contents by calling the methods of DataInput for primitive types and readObject for objects, strings and arrays. The readExternal method must read the values in the same sequence and with the same types as were written by writeExternal.
        Specified by:
        readExternal in interface java.io.Externalizable
        Parameters:
        in - the ObjectInput object to read from
        Throws:
        java.lang.ClassNotFoundException - If the class for an object being restored cannot be found.
        java.io.IOException