org.restlet.representation

## Class OutputRepresentation

- java.lang.Object
- - org.restlet.representation.Variant
  - - org.restlet.representation.RepresentationInfo
    - - org.restlet.representation.Representation
      - - org.restlet.representation.StreamRepresentation
        - - org.restlet.representation.OutputRepresentation

Direct Known Subclasses:
  ObjectRepresentation

    public abstract class OutputRepresentation
    extends StreamRepresentation

Representation based on a BIO output stream. 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(OutputStream) 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 and Description
`OutputRepresentation(MediaType mediaType)` Constructor.
`OutputRepresentation(MediaType mediaType, long expectedSize)` Constructor.

### Method Summary

Methods
`java.io.InputStream` `getStream()` Returns a stream with the representation's content.

### Methods inherited from class org.restlet.representation.StreamRepresentation

`getChannel, getReader, write, write`

### Methods inherited from class org.restlet.representation.Representation

`checkDigest, checkDigest, computeDigest, createEmpty, exhaust, getAvailableSize, getDigest, getDisposition, getDownloadName, getExpirationDate, getRange, getSize, getText, isAvailable, isDownloadable, isTransient, release, setAvailable, setDigest, setDisposition, setDownloadable, setDownloadName, setExpirationDate, setRange, setSize, setTransient, write`

### Methods inherited from class org.restlet.representation.RepresentationInfo

`getModificationDate, getTag, setModificationDate, setTag`

### Methods inherited from class org.restlet.representation.Variant

`createClientInfo, equals, getCharacterSet, getEncodings, getIdentifier, getLanguages, getLocationRef, getMediaType, includes, isCompatible, setCharacterSet, setEncodings, setIdentifier, setIdentifier, setLanguages, setLocationRef, setLocationRef, setMediaType, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### OutputRepresentation

    public OutputRepresentation(MediaType mediaType)

Constructor.

Parameters:
  `mediaType` - The representation's mediaType.

#### OutputRepresentation

    public OutputRepresentation(MediaType mediaType,
                        long expectedSize)

Constructor.

Parameters:
  `mediaType` - The representation's mediaType.
  `expectedSize` - The expected input stream size.

### Method Detail

#### getStream

    public java.io.InputStream getStream()
                                  throws java.io.IOException

Returns a stream with the representation's content. Internally, it uses a writer thread and a pipe stream.

Specified by:
  `getStream` in class `Representation`
Returns:
  A stream with the representation's content.
Throws:
  `java.io.IOException`