## javax.ws.rs.core
Class Variant

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

    public class Variant

extends java.lang.Object

Abstraction for a resource representation variant.

Nested Class Summary
`static class` | `Variant.VariantListBuilder` A builder for a list of representation variants.

Constructor Summary
`Variant(MediaType mediaType, java.util.Locale language, java.lang.String encoding)` Create a new instance of Variant

Method Summary
`static Variant.VariantListBuilder` | `encodings(java.lang.String... encodings)` Create a `Variant.VariantListBuilder` initialized with a set of supported encodings.
`boolean` | `equals(java.lang.Object obj)` Compares obj to this variant to see if they are the same considering all property values.
`java.lang.String` | `getEncoding()` Get the encoding of the variant
`java.util.Locale` | `getLanguage()` Get the language of the variant
`MediaType` | `getMediaType()` Get the media type of the variant
`int` | `hashCode()` Generate hash code from variant properties.
`static Variant.VariantListBuilder` | `languages(java.util.Locale... languages)` Create a `Variant.VariantListBuilder` initialized with a set of supported languages.
`static Variant.VariantListBuilder` | `mediaTypes(MediaType... mediaTypes)` Create a `Variant.VariantListBuilder` initialized with a set of supported media types.
`java.lang.String` | `toString()`

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

Constructor Detail

### Variant

    public Variant(MediaType mediaType,
                   java.util.Locale language,
                   java.lang.String encoding)

  Create a new instance of Variant

  Parameters:
    `mediaType` - the media type of the variant - may be null
    `language` - the language of the variant - may be null
    `encoding` - the content encoding of the variant - may be null
  Throws:
    `java.lang.IllegalArgumentException` - if all three parameters are null

Method Detail

### getLanguage

    public java.util.Locale getLanguage()

  Get the language of the variant

  Returns:
    the language or null if none set

### getMediaType

    public MediaType getMediaType()

  Get the media type of the variant

  Returns:
    the media type or null if none set

### getEncoding

    public java.lang.String getEncoding()

  Get the encoding of the variant

  Returns:
    the encoding or null if none set

### mediaTypes

    public static Variant.VariantListBuilder mediaTypes(MediaType... mediaTypes)

  Create a `Variant.VariantListBuilder` initialized with a set of supported media types.

  Parameters:
    `mediaTypes` - the available mediaTypes. If specific charsets are supported they should be included as parameters of the respective media type.
  Returns:
    the initailized builder
  Throws:
    `java.lang.IllegalArgumentException` - if mediaTypes is null or contains no elements.

### languages

    public static Variant.VariantListBuilder languages(java.util.Locale... languages)

  Create a `Variant.VariantListBuilder` initialized with a set of supported languages.

  Parameters:
    `languages` - the available languages.
  Returns:
    the initailized builder
  Throws:
    `java.lang.IllegalArgumentException` - if languages is null or contains no elements.

### encodings

    public static Variant.VariantListBuilder encodings(java.lang.String... encodings)

  Create a `Variant.VariantListBuilder` initialized with a set of supported encodings.

  Parameters:
    `encodings` - the available encodings.
  Returns:
    the initailized builder
  Throws:
    `java.lang.IllegalArgumentException` - if encodings is null or contains no elements.

### hashCode

    public int hashCode()

  Generate hash code from variant properties.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    the hash code

### equals

    public boolean equals(java.lang.Object obj)

  Compares obj to this variant to see if they are the same considering all property values.

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

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

Copyright © 2017 Oracle Corporation. All Rights Reserved.