javax.ws.rs.core
Class Variant

java.lang.Object
  extended by 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 © 2009 Sun Microsystems, Inc. All Rights Reserved.