Package org.restlet.engine.application
Class DecodeRepresentation
- java.lang.Object
-
- org.restlet.representation.Variant
-
- org.restlet.representation.RepresentationInfo
-
- org.restlet.representation.Representation
-
- org.restlet.util.WrapperRepresentation
-
- org.restlet.engine.application.DecodeRepresentation
-
public class DecodeRepresentation extends org.restlet.util.WrapperRepresentationRepresentation 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
-
-
Constructor Summary
Constructors Constructor Description DecodeRepresentation(org.restlet.representation.Representation wrappedRepresentation)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description longgetAvailableSize()Returns the size effectively available.java.nio.channels.ReadableByteChannelgetChannel()Returns a readable byte channel.java.util.List<org.restlet.data.Encoding>getEncodings()Returns the encodings applied to the entity.java.io.ReadergetReader()Returns a characters reader with the representation's content.longgetSize()Returns the size in bytes of the decoded representation if known, UNKNOWN_SIZE (-1) otherwise.java.io.InputStreamgetStream()Returns a stream with the representation's content.static java.util.List<org.restlet.data.Encoding>getSupportedEncodings()Returns the list of supported encodings.java.lang.StringgetText()Converts the representation to a string value.booleanisDecoding()Indicates if the decoding can happen.voidwrite(java.io.OutputStream outputStream)Writes the representation to a byte stream.voidwrite(java.nio.channels.WritableByteChannel writableChannel)Writes the representation to a byte channel.-
Methods inherited from class org.restlet.util.WrapperRepresentation
exhaust, 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, write
-
Methods inherited from class org.restlet.representation.Representation
append, hasKnownSize, isEmpty, setListener
-
-
-
-
Method Detail
-
getSupportedEncodings
public static java.util.List<org.restlet.data.Encoding> getSupportedEncodings()
Returns the list of supported encodings.- Returns:
- The list of supported encodings.
-
getAvailableSize
public long getAvailableSize()
Description copied from class:org.restlet.representation.RepresentationReturns the size effectively available. This returns the same value asRepresentation.getSize()if no range is defined, otherwise it returns the size of the range usingRange.getSize().- Overrides:
getAvailableSizein classorg.restlet.util.WrapperRepresentation- Returns:
- The available size.
-
getChannel
public java.nio.channels.ReadableByteChannel getChannel() throws java.io.IOExceptionReturns a readable byte channel. If it is supported by a file a read-only instance of FileChannel is returned.- Overrides:
getChannelin classorg.restlet.util.WrapperRepresentation- Returns:
- A readable byte channel.
- Throws:
java.io.IOException
-
getEncodings
public java.util.List<org.restlet.data.Encoding> getEncodings()
Returns the encodings applied to the entity.- Overrides:
getEncodingsin classorg.restlet.util.WrapperRepresentation- Returns:
- The encodings applied to the entity.
-
getReader
public java.io.Reader getReader() throws java.io.IOExceptionDescription copied from class:org.restlet.representation.RepresentationReturns a characters reader with the representation's content. This method is ensured to return a fresh reader for each invocation unless it is a transient representation, in which case null is returned. If the representation has no character set defined, the system's default one will be used.- Overrides:
getReaderin classorg.restlet.util.WrapperRepresentation- Returns:
- A reader with the representation's content.
- Throws:
java.io.IOException
-
getSize
public long getSize()
Returns the size in bytes of the decoded representation if known, UNKNOWN_SIZE (-1) otherwise.- Overrides:
getSizein classorg.restlet.util.WrapperRepresentation- Returns:
- The size in bytes if known, UNKNOWN_SIZE (-1) otherwise.
- See Also:
Representation.isEmpty()
-
getStream
public java.io.InputStream getStream() throws java.io.IOExceptionReturns a stream with the representation's content.- Overrides:
getStreamin classorg.restlet.util.WrapperRepresentation- Returns:
- A stream with the representation's content.
- Throws:
java.io.IOException
-
getText
public java.lang.String getText() throws java.io.IOExceptionConverts 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:
getTextin classorg.restlet.util.WrapperRepresentation- Returns:
- The representation as a string value.
- Throws:
java.io.IOException
-
isDecoding
public boolean isDecoding()
Indicates if the decoding can happen.- Returns:
- True if the decoding can happen.
-
write
public void write(java.io.OutputStream outputStream) throws java.io.IOExceptionWrites the representation to a byte stream.- Overrides:
writein classorg.restlet.util.WrapperRepresentation- Parameters:
outputStream- The output stream.- Throws:
java.io.IOException
-
write
public void write(java.nio.channels.WritableByteChannel writableChannel) throws java.io.IOExceptionWrites the representation to a byte channel.- Overrides:
writein classorg.restlet.util.WrapperRepresentation- Parameters:
writableChannel- A writable byte channel.- Throws:
java.io.IOException
-
-