org.apache.http.entity

## Class ContentType

- java.lang.Object
- - org.apache.http.entity.ContentType

- All Implemented Interfaces:
    Serializable

      @Immutable
      public final class ContentType
      extends Object
      implements Serializable

  Content type information consisting of a MIME type and an optional charset.

  This class makes no attempts to verify validity of the MIME type. The input parameters of the `create(String, String)` method, however, may not contain characters <">, <;>, <,> reserved by the HTTP specification.
  Since:
    4.2
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static ContentType` | `APPLICATION_ATOM_XML`
    `static ContentType` | `APPLICATION_FORM_URLENCODED`
    `static ContentType` | `APPLICATION_JSON`
    `static ContentType` | `APPLICATION_OCTET_STREAM`
    `static ContentType` | `APPLICATION_SVG_XML`
    `static ContentType` | `APPLICATION_XHTML_XML`
    `static ContentType` | `APPLICATION_XML`
    `static ContentType` | `DEFAULT_BINARY`
    `static ContentType` | `DEFAULT_TEXT`
    `static ContentType` | `MULTIPART_FORM_DATA`
    `static ContentType` | `TEXT_HTML`
    `static ContentType` | `TEXT_PLAIN`
    `static ContentType` | `TEXT_XML`
    `static ContentType` | `WILDCARD`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static ContentType` | `create(String mimeType)` Creates a new instance of `ContentType` without a charset.
    `static ContentType` | `create(String mimeType, Charset charset)` Creates a new instance of `ContentType`.
    `static ContentType` | `create(String mimeType, String charset)` Creates a new instance of `ContentType`.
    `static ContentType` | `get(HttpEntity entity)` Extracts `Content-Type` value from `HttpEntity` exactly as specified by the `Content-Type` header of the entity.
    `Charset` | `getCharset()`
    `String` | `getMimeType()`
    `static ContentType` | `getOrDefault(HttpEntity entity)` Extracts `Content-Type` value from `HttpEntity` or returns the default value `DEFAULT_TEXT` if not explicitly specified.
    `String` | `getParameter(String name)`
    `static ContentType` | `parse(String s)` Parses textual representation of `Content-Type` value.
    `String` | `toString()` Generates textual representation of this content type which can be used as the value of a `Content-Type` header.
    `ContentType` | `withCharset(Charset charset)` Creates a new instance with this MIME type and the given Charset.
    `ContentType` | `withCharset(String charset)` Creates a new instance with this MIME type and the given Charset name.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### APPLICATION_ATOM_XML

          public static final ContentType APPLICATION_ATOM_XML

    - #### APPLICATION_FORM_URLENCODED

          public static final ContentType APPLICATION_FORM_URLENCODED

    - #### APPLICATION_JSON

          public static final ContentType APPLICATION_JSON

    - #### APPLICATION_OCTET_STREAM

          public static final ContentType APPLICATION_OCTET_STREAM

    - #### APPLICATION_SVG_XML

          public static final ContentType APPLICATION_SVG_XML

    - #### APPLICATION_XHTML_XML

          public static final ContentType APPLICATION_XHTML_XML

    - #### APPLICATION_XML

          public static final ContentType APPLICATION_XML

    - #### MULTIPART_FORM_DATA

          public static final ContentType MULTIPART_FORM_DATA

    - #### TEXT_HTML

          public static final ContentType TEXT_HTML

    - #### TEXT_PLAIN

          public static final ContentType TEXT_PLAIN

    - #### TEXT_XML

          public static final ContentType TEXT_XML

    - #### WILDCARD

          public static final ContentType WILDCARD

    - #### DEFAULT_TEXT

          public static final ContentType DEFAULT_TEXT

    - #### DEFAULT_BINARY

          public static final ContentType DEFAULT_BINARY

  - ### Method Detail

    - #### getMimeType

          public String getMimeType()

    - #### getCharset

          public Charset getCharset()

    - #### getParameter

          public String getParameter(String name)

      Since:
        4.3

    - #### toString

          public String toString()

      Generates textual representation of this content type which can be used as the value of a `Content-Type` header.
      Overrides:
        `toString` in class `Object`

    - #### create

          public static ContentType create(String mimeType,
                           Charset charset)

      Creates a new instance of `ContentType`.
      Parameters:
        `mimeType` - MIME type. It may not be `null` or empty. It may not contain characters <">, <;>, <,> reserved by the HTTP specification.
        `charset` - charset.
      Returns:
        content type

    - #### create

          public static ContentType create(String mimeType)

      Creates a new instance of `ContentType` without a charset.
      Parameters:
        `mimeType` - MIME type. It may not be `null` or empty. It may not contain characters <">, <;>, <,> reserved by the HTTP specification.
      Returns:
        content type

    - #### create

          public static ContentType create(String mimeType,
                           String charset)
                                    throws UnsupportedCharsetException

      Creates a new instance of `ContentType`.
      Parameters:
        `mimeType` - MIME type. It may not be `null` or empty. It may not contain characters <">, <;>, <,> reserved by the HTTP specification.
        `charset` - charset. It may not contain characters <">, <;>, <,> reserved by the HTTP specification. This parameter is optional.
      Returns:
        content type
      Throws:
        `UnsupportedCharsetException` - Thrown when the named charset is not available in this instance of the Java virtual machine

    - #### parse

          public static ContentType parse(String s)
                                   throws ParseException,
                                          UnsupportedCharsetException

      Parses textual representation of `Content-Type` value.
      Parameters:
        `s` - text
      Returns:
        content type
      Throws:
        `ParseException` - if the given text does not represent a valid `Content-Type` value.
        `UnsupportedCharsetException` - Thrown when the named charset is not available in this instance of the Java virtual machine

    - #### get

          public static ContentType get(HttpEntity entity)
                                 throws ParseException,
                                        UnsupportedCharsetException

      Extracts `Content-Type` value from `HttpEntity` exactly as specified by the `Content-Type` header of the entity. Returns `null` if not specified.
      Parameters:
        `entity` - HTTP entity
      Returns:
        content type
      Throws:
        `ParseException` - if the given text does not represent a valid `Content-Type` value.
        `UnsupportedCharsetException` - Thrown when the named charset is not available in this instance of the Java virtual machine

    - #### getOrDefault

          public static ContentType getOrDefault(HttpEntity entity)
                                          throws ParseException,
                                                 UnsupportedCharsetException

      Extracts `Content-Type` value from `HttpEntity` or returns the default value `DEFAULT_TEXT` if not explicitly specified.
      Parameters:
        `entity` - HTTP entity
      Returns:
        content type
      Throws:
        `ParseException` - if the given text does not represent a valid `Content-Type` value.
        `UnsupportedCharsetException` - Thrown when the named charset is not available in this instance of the Java virtual machine

    - #### withCharset

          public ContentType withCharset(Charset charset)

      Creates a new instance with this MIME type and the given Charset.
      Parameters:
        `charset` - charset
      Returns:
        a new instance with this MIME type and the given Charset.
      Since:
        4.3

    - #### withCharset

          public ContentType withCharset(String charset)

      Creates a new instance with this MIME type and the given Charset name.
      Parameters:
        `charset` - name
      Returns:
        a new instance with this MIME type and the given Charset name.
      Throws:
        `UnsupportedCharsetException` - Thrown when the named charset is not available in this instance of the Java virtual machine
      Since:
        4.3

Copyright © 2005–2013 The Apache Software Foundation. All rights reserved.