com.noelios.restlet.application
Class DecodeRepresentation

java.lang.Object
  extended by org.restlet.resource.Variant
      extended by org.restlet.resource.Representation
          extended by org.restlet.util.WrapperRepresentation
              extended by com.noelios.restlet.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.resource.Representation
UNKNOWN_SIZE
 
Constructor Summary
DecodeRepresentation(Representation wrappedRepresentation)
          Constructor.
 
Method Summary
 boolean canDecode()
          Indicates if the decoding can happen.
 java.nio.channels.ReadableByteChannel getChannel()
          Returns a readable byte channel.
 java.util.List<Encoding> getEncodings()
          Returns the encodings applied to the entity.
 long getSize()
          Returns the size in bytes of the decoded representation if known, UNKNOWN_SIZE (-1) otherwise.
 java.io.InputStream getStream()
          Returns a stream with the representation's content.
static java.util.List<Encoding> getSupportedEncodings()
          Returns the list of supported encodings.
 java.lang.String getText()
          Converts the representation to a string value.
 void write(java.io.OutputStream outputStream)
          Writes the representation to a byte stream.
 void write(java.nio.channels.WritableByteChannel writableChannel)
          Writes the representation to a byte channel.
 
Methods inherited from class org.restlet.util.WrapperRepresentation
checkDigest, checkDigest, computeDigest, exhaust, getAvailableSize, getCharacterSet, getDigest, getDownloadName, getExpirationDate, getIdentifier, getLanguages, getMediaType, getModificationDate, getRange, getReader, getTag, getWrappedRepresentation, isAvailable, isDownloadable, isTransient, release, setAvailable, setCharacterSet, setDigest, setDownloadable, setDownloadName, setEncodings, setExpirationDate, setIdentifier, setIdentifier, setLanguages, setMediaType, setModificationDate, setRange, setSize, setTag, setTransient, write
 
Methods inherited from class org.restlet.resource.Representation
createEmpty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DecodeRepresentation

public DecodeRepresentation(Representation wrappedRepresentation)
Constructor.

Parameters:
wrappedRepresentation - The wrapped representation.
Method Detail

getSupportedEncodings

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

Returns:
The list of supported encodings.

canDecode

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

Returns:
True if the decoding can happen.

getChannel

public java.nio.channels.ReadableByteChannel getChannel()
                                                 throws java.io.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:
java.io.IOException

getEncodings

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

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

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 java.io.InputStream getStream()
                              throws java.io.IOException
Returns a stream with the representation's content.

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

getText

public java.lang.String getText()
                         throws java.io.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:
java.io.IOException

write

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

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

write

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

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


Copyright © 2005-2008 Noelios Technologies.