org.restlet.engine.application
Class DecodeRepresentation

java.lang.Object
  extended by org.restlet.representation.Variant
      extended by org.restlet.representation.RepresentationInfo
          extended by org.restlet.representation.Representation
              extended by org.restlet.util.WrapperRepresentation
                  extended by org.restlet.engine.application.DecodeRepresentation

public class DecodeRepresentation
extends WrapperRepresentation

Representation that decodes a wrapped representation if its encoding is supported. If at least one encoding of the wrapped representation is not supported, then the wrapped representation is not decoded.

Author:
Jerome Louvel

Field Summary
 
Fields inherited from class org.restlet.representation.Representation
UNKNOWN_SIZE
 
Constructor Summary
DecodeRepresentation(Representation wrappedRepresentation)
          Constructor.
 
Method Summary
 ReadableByteChannel getChannel()
          Returns a readable byte channel.
 List<Encoding> getEncodings()
          Returns the encodings applied to the entity.
 Reader getReader()
           
 long getSize()
          Returns the size in bytes of the decoded representation if known, UNKNOWN_SIZE (-1) otherwise.
 InputStream getStream()
          Returns a stream with the representation's content.
static List<Encoding> getSupportedEncodings()
          Returns the list of supported encodings.
 String getText()
          Converts the representation to a string value.
 boolean isDecoding()
          Indicates if the decoding can happen.
 void write(OutputStream outputStream)
          Writes the representation to a byte stream.
 void write(WritableByteChannel writableChannel)
          Writes the representation to a byte channel.
 void write(Writer writer)
           
 
Methods inherited from class org.restlet.util.WrapperRepresentation
exhaust, getAvailableSize, getCharacterSet, getDigest, getDisposition, getExpirationDate, getLanguages, getLocationRef, getMediaType, getModificationDate, getRange, getRegistration, getTag, getWrappedRepresentation, isAvailable, isSelectable, isTransient, release, setAvailable, setCharacterSet, setDigest, setDisposition, setEncodings, setExpirationDate, setLanguages, setLocationRef, setLocationRef, setMediaType, setModificationDate, setRange, setSize, setTag, setTransient
 
Methods inherited from class org.restlet.representation.Representation
append, hasKnownSize, isEmpty, setListener
 
Methods inherited from class org.restlet.representation.Variant
createClientInfo, equals, includes, isCompatible, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DecodeRepresentation

public DecodeRepresentation(Representation wrappedRepresentation)
Constructor.

Parameters:
wrappedRepresentation - The wrapped representation.
Method Detail

getSupportedEncodings

public static List<Encoding> getSupportedEncodings()
Returns the list of supported encodings.

Returns:
The list of supported encodings.

getChannel

public ReadableByteChannel getChannel()
                               throws IOException
Returns a readable byte channel. If it is supported by a file a read-only instance of FileChannel is returned.

Overrides:
getChannel in class WrapperRepresentation
Returns:
A readable byte channel.
Throws:
IOException

getEncodings

public List<Encoding> getEncodings()
Returns the encodings applied to the entity.

Overrides:
getEncodings in class WrapperRepresentation
Returns:
The encodings applied to the entity.

getReader

public Reader getReader()
                 throws IOException
Overrides:
getReader in class WrapperRepresentation
Throws:
IOException

getSize

public long getSize()
Returns the size in bytes of the decoded representation if known, UNKNOWN_SIZE (-1) otherwise.

Overrides:
getSize in class WrapperRepresentation
Returns:
The size in bytes if known, UNKNOWN_SIZE (-1) otherwise.

getStream

public InputStream getStream()
                      throws IOException
Returns a stream with the representation's content.

Overrides:
getStream in class WrapperRepresentation
Returns:
A stream with the representation's content.
Throws:
IOException

getText

public String getText()
               throws IOException
Converts the representation to a string value. Be careful when using this method as the conversion of large content to a string fully stored in memory can result in OutOfMemoryErrors being thrown.

Overrides:
getText in class WrapperRepresentation
Returns:
The representation as a string value.
Throws:
IOException

isDecoding

public boolean isDecoding()
Indicates if the decoding can happen.

Returns:
True if the decoding can happen.

write

public void write(OutputStream outputStream)
           throws IOException
Writes the representation to a byte stream.

Overrides:
write in class WrapperRepresentation
Parameters:
outputStream - The output stream.
Throws:
IOException

write

public void write(WritableByteChannel writableChannel)
           throws IOException
Writes the representation to a byte channel.

Overrides:
write in class WrapperRepresentation
Parameters:
writableChannel - A writable byte channel.
Throws:
IOException

write

public void write(Writer writer)
           throws IOException
Overrides:
write in class WrapperRepresentation
Throws:
IOException


Copyright © 2005-2013 Restlet.