## javax.ws.rs.core
Class MediaType

    java.lang.Object
      javax.ws.rs.core.MediaType

Direct Known Subclasses:
  AcceptableMediaType, QualitySourceMediaType

    public class MediaType

extends java.lang.Object

An abstraction for a media type. Instances are immutable.

See Also:
  HTTP/1.1 section 3.7

Field Summary
`static java.lang.String` | `APPLICATION_ATOM_XML` "application/atom+xml"
`static MediaType` | `APPLICATION_ATOM_XML_TYPE` "application/atom+xml"
`static java.lang.String` | `APPLICATION_FORM_URLENCODED` "application/x-www-form-urlencoded"
`static MediaType` | `APPLICATION_FORM_URLENCODED_TYPE` "application/x-www-form-urlencoded"
`static java.lang.String` | `APPLICATION_JSON` "application/json"
`static MediaType` | `APPLICATION_JSON_TYPE` "application/json"
`static java.lang.String` | `APPLICATION_OCTET_STREAM` "application/octet-stream"
`static MediaType` | `APPLICATION_OCTET_STREAM_TYPE` "application/octet-stream"
`static java.lang.String` | `APPLICATION_SVG_XML` "application/svg+xml"
`static MediaType` | `APPLICATION_SVG_XML_TYPE` "application/svg+xml"
`static java.lang.String` | `APPLICATION_XHTML_XML` "application/xhtml+xml"
`static MediaType` | `APPLICATION_XHTML_XML_TYPE` "application/xhtml+xml"
`static java.lang.String` | `APPLICATION_XML` "application/xml"
`static MediaType` | `APPLICATION_XML_TYPE` "application/xml"
`static java.lang.String` | `MEDIA_TYPE_WILDCARD` The value of a type or subtype wildcard: "*"
`static java.lang.String` | `MULTIPART_FORM_DATA` "multipart/form-data"
`static MediaType` | `MULTIPART_FORM_DATA_TYPE` "multipart/form-data"
`static java.lang.String` | `TEXT_HTML` "text/html"
`static MediaType` | `TEXT_HTML_TYPE` "text/html"
`static java.lang.String` | `TEXT_PLAIN` "text/plain"
`static MediaType` | `TEXT_PLAIN_TYPE` "text/plain"
`static java.lang.String` | `TEXT_XML` "text/xml"
`static MediaType` | `TEXT_XML_TYPE` "text/xml"
`static java.lang.String` | `WILDCARD` "*/*"
`static MediaType` | `WILDCARD_TYPE` "*/*"

Constructor Summary
`MediaType()` Creates a new instance of MediaType, both type and subtype are wildcards.
`MediaType(java.lang.String type, java.lang.String subtype)` Creates a new instance of MediaType with the supplied type and subtype.
`MediaType(java.lang.String type, java.lang.String subtype, java.util.Map<java.lang.String,java.lang.String> parameters)` Creates a new instance of MediaType with the supplied type, subtype and parameters.

Method Summary
`boolean` | `equals(java.lang.Object obj)` Compares obj to this media type to see if they are the same by comparing type, subtype and parameters.
`java.util.Map<java.lang.String,java.lang.String>` | `getParameters()` Getter for a read-only parameter map.
`java.lang.String` | `getSubtype()` Getter for subtype.
`java.lang.String` | `getType()` Getter for primary type.
`int` | `hashCode()` Generate a hashcode from the type, subtype and parameters.
`boolean` | `isCompatible(MediaType other)` Check if this media type is compatible with another media type.
`boolean` | `isWildcardSubtype()` Checks if the subtype is a wildcard
`boolean` | `isWildcardType()` Checks if the primary type is a wildcard.
`java.lang.String` | `toString()` Convert the media type to a string suitable for use as the value of a corresponding HTTP header.
`static MediaType` | `valueOf(java.lang.String type)` Creates a new instance of MediaType by parsing the supplied string.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### MEDIA_TYPE_WILDCARD

    public static final java.lang.String MEDIA_TYPE_WILDCARD

  The value of a type or subtype wildcard: "*"

  See Also:
    Constant Field Values

### WILDCARD

    public static final java.lang.String WILDCARD

  "*/*"

  See Also:
    Constant Field Values

### WILDCARD_TYPE

    public static final MediaType WILDCARD_TYPE

  "*/*"

### APPLICATION_XML

    public static final java.lang.String APPLICATION_XML

  "application/xml"

  See Also:
    Constant Field Values

### APPLICATION_XML_TYPE

    public static final MediaType APPLICATION_XML_TYPE

  "application/xml"

### APPLICATION_ATOM_XML

    public static final java.lang.String APPLICATION_ATOM_XML

  "application/atom+xml"

  See Also:
    Constant Field Values

### APPLICATION_ATOM_XML_TYPE

    public static final MediaType APPLICATION_ATOM_XML_TYPE

  "application/atom+xml"

### APPLICATION_XHTML_XML

    public static final java.lang.String APPLICATION_XHTML_XML

  "application/xhtml+xml"

  See Also:
    Constant Field Values

### APPLICATION_XHTML_XML_TYPE

    public static final MediaType APPLICATION_XHTML_XML_TYPE

  "application/xhtml+xml"

### APPLICATION_SVG_XML

    public static final java.lang.String APPLICATION_SVG_XML

  "application/svg+xml"

  See Also:
    Constant Field Values

### APPLICATION_SVG_XML_TYPE

    public static final MediaType APPLICATION_SVG_XML_TYPE

  "application/svg+xml"

### APPLICATION_JSON

    public static final java.lang.String APPLICATION_JSON

  "application/json"

  See Also:
    Constant Field Values

### APPLICATION_JSON_TYPE

    public static final MediaType APPLICATION_JSON_TYPE

  "application/json"

### APPLICATION_FORM_URLENCODED

    public static final java.lang.String APPLICATION_FORM_URLENCODED

  "application/x-www-form-urlencoded"

  See Also:
    Constant Field Values

### APPLICATION_FORM_URLENCODED_TYPE

    public static final MediaType APPLICATION_FORM_URLENCODED_TYPE

  "application/x-www-form-urlencoded"

### MULTIPART_FORM_DATA

    public static final java.lang.String MULTIPART_FORM_DATA

  "multipart/form-data"

  See Also:
    Constant Field Values

### MULTIPART_FORM_DATA_TYPE

    public static final MediaType MULTIPART_FORM_DATA_TYPE

  "multipart/form-data"

### APPLICATION_OCTET_STREAM

    public static final java.lang.String APPLICATION_OCTET_STREAM

  "application/octet-stream"

  See Also:
    Constant Field Values

### APPLICATION_OCTET_STREAM_TYPE

    public static final MediaType APPLICATION_OCTET_STREAM_TYPE

  "application/octet-stream"

### TEXT_PLAIN

    public static final java.lang.String TEXT_PLAIN

  "text/plain"

  See Also:
    Constant Field Values

### TEXT_PLAIN_TYPE

    public static final MediaType TEXT_PLAIN_TYPE

  "text/plain"

### TEXT_XML

    public static final java.lang.String TEXT_XML

  "text/xml"

  See Also:
    Constant Field Values

### TEXT_XML_TYPE

    public static final MediaType TEXT_XML_TYPE

  "text/xml"

### TEXT_HTML

    public static final java.lang.String TEXT_HTML

  "text/html"

  See Also:
    Constant Field Values

### TEXT_HTML_TYPE

    public static final MediaType TEXT_HTML_TYPE

  "text/html"

Constructor Detail

### MediaType

    public MediaType(java.lang.String type,
                     java.lang.String subtype,
                     java.util.Map<java.lang.String,java.lang.String> parameters)

  Creates a new instance of MediaType with the supplied type, subtype and parameters.

  Parameters:
    `type` - the primary type, null is equivalent to `MEDIA_TYPE_WILDCARD`.
    `subtype` - the subtype, null is equivalent to `MEDIA_TYPE_WILDCARD`.
    `parameters` - a map of media type parameters, null is the same as an empty map.

### MediaType

    public MediaType(java.lang.String type,
                     java.lang.String subtype)

  Creates a new instance of MediaType with the supplied type and subtype.

  Parameters:
    `type` - the primary type, null is equivalent to `MEDIA_TYPE_WILDCARD`
    `subtype` - the subtype, null is equivalent to `MEDIA_TYPE_WILDCARD`

### MediaType

    public MediaType()

  Creates a new instance of MediaType, both type and subtype are wildcards. Consider using the constant `WILDCARD_TYPE` instead.

Method Detail

### valueOf

    public static MediaType valueOf(java.lang.String type)
                             throws java.lang.IllegalArgumentException

  Creates a new instance of MediaType by parsing the supplied string.

  Parameters:
    `type` - the media type string
  Returns:
    the newly created MediaType
  Throws:
    `java.lang.IllegalArgumentException` - if the supplied string cannot be parsed or is null

### getType

    public java.lang.String getType()

  Getter for primary type.

  Returns:
    value of primary type.

### isWildcardType

    public boolean isWildcardType()

  Checks if the primary type is a wildcard.

  Returns:
    true if the primary type is a wildcard

### getSubtype

    public java.lang.String getSubtype()

  Getter for subtype.

  Returns:
    value of subtype.

### isWildcardSubtype

    public boolean isWildcardSubtype()

  Checks if the subtype is a wildcard

  Returns:
    true if the subtype is a wildcard

### getParameters

    public java.util.Map<java.lang.String,java.lang.String> getParameters()

  Getter for a read-only parameter map. Keys are case-insensitive.

  Returns:
    an immutable map of parameters.

### isCompatible

    public boolean isCompatible(MediaType other)

  Check if this media type is compatible with another media type. E.g. image/* is compatible with image/jpeg, image/png, etc. Media type parameters are ignored. The function is commutative.

  Parameters:
    `other` - the media type to compare with
  Returns:
    true if the types are compatible, false otherwise.

### equals

    public boolean equals(java.lang.Object obj)

  Compares obj to this media type to see if they are the same by comparing type, subtype and parameters. Note that the case-sensitivity of parameter values is dependent on the semantics of the parameter name, see HTTP/1.1. This method assumes that values are case-sensitive.

  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `obj` - the object to compare to
  Returns:
    true if the two media types are the same, false otherwise.

### hashCode

    public int hashCode()

  Generate a hashcode from the type, subtype and parameters.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    a hashcode

### toString

    public java.lang.String toString()

  Convert the media type to a string suitable for use as the value of a corresponding HTTP header.

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    a stringified media type

Copyright © 2017 Oracle Corporation. All Rights Reserved.