Package org.restlet.representation
Class WritableRepresentation
- java.lang.Object
 - 
- org.restlet.representation.Variant
 - 
- org.restlet.representation.RepresentationInfo
 - 
- org.restlet.representation.Representation
 - 
- org.restlet.representation.ChannelRepresentation
 - 
- org.restlet.representation.WritableRepresentation
 
 
 
 
 
 
- 
public abstract class WritableRepresentation extends ChannelRepresentation
Representation based on a writable NIO byte channel. This class is a good basis to write your own representations, especially for the dynamic and large ones.
For this you just need to create a subclass and override the abstract Representation.write(WritableByteChannel) method. This method will later be called back by the connectors when the actual representation's content is needed.- Author:
 - Jerome Louvel
 
 
- 
- 
Field Summary
- 
Fields inherited from class org.restlet.representation.Representation
UNKNOWN_SIZE 
 - 
 
- 
Constructor Summary
Constructors Constructor Description WritableRepresentation(MediaType mediaType)Constructor. 
- 
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.nio.channels.ReadableByteChannelgetChannel()Returns a channel with the representation's content.
If it is supported by a file, a read-only instance of FileChannel is returned.
This method is ensured to return a fresh channel for each invocation unless it is a transient representation, in which case null is returned.abstract voidwrite(java.nio.channels.WritableByteChannel writableChannel)Writes the representation to a byte channel.- 
Methods inherited from class org.restlet.representation.ChannelRepresentation
getReader, getStream, write, write 
- 
Methods inherited from class org.restlet.representation.Representation
append, exhaust, getAvailableSize, getDigest, getDisposition, getExpirationDate, getRange, getRegistration, getSize, getText, hasKnownSize, isAvailable, isEmpty, isSelectable, isTransient, release, setAvailable, setDigest, setDisposition, setExpirationDate, setListener, setRange, setSize, setTransient 
- 
Methods inherited from class org.restlet.representation.RepresentationInfo
getModificationDate, getTag, setModificationDate, setTag 
- 
Methods inherited from class org.restlet.representation.Variant
createClientInfo, equals, getCharacterSet, getEncodings, getLanguages, getLocationRef, getMediaType, hashCode, includes, isCompatible, setCharacterSet, setEncodings, setLanguages, setLocationRef, setLocationRef, setMediaType, toString 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
WritableRepresentation
public WritableRepresentation(MediaType mediaType)
Constructor.- Parameters:
 mediaType- The representation's media type.
 
 - 
 
- 
Method Detail
- 
getChannel
public java.nio.channels.ReadableByteChannel getChannel() throws java.io.IOExceptionDescription copied from class:RepresentationReturns a channel with the representation's content.
If it is supported by a file, a read-only instance of FileChannel is returned.
This method is ensured to return a fresh channel for each invocation unless it is a transient representation, in which case null is returned.- Specified by:
 getChannelin classRepresentation- Returns:
 - A channel with the representation's content.
 - Throws:
 java.io.IOException
 
- 
write
public abstract void write(java.nio.channels.WritableByteChannel writableChannel) throws java.io.IOExceptionDescription copied from class:RepresentationWrites the representation to a byte channel. This method is ensured to write the full content for each invocation unless it is a transient representation, in which case an exception is thrown.- Specified by:
 writein classRepresentation- Parameters:
 writableChannel- A writable byte channel.- Throws:
 java.io.IOException
 
 - 
 
 -