|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.restlet.client.representation.Variant
org.restlet.client.representation.RepresentationInfo
org.restlet.client.representation.Representation
public abstract class Representation
Current or intended state of a resource. The content of a representation can
be retrieved several times if there is a stable and accessible source, like a
local file or a string. When the representation is obtained via a temporary
source like a network socket, its content can only be retrieved once. The
"transient" and "available" properties are available to help you figure out
those aspects at runtime.
For performance purpose, it is essential that a minimal overhead occurs upon
initialization. The main overhead must only occur during invocation of
content processing methods (write, getStream, getChannel and toString).
"REST components perform actions on a resource by using a representation to
capture the current or intended state of that resource and transferring that
representation between components. A representation is a sequence of bytes,
plus representation metadata to describe those bytes. Other commonly used but
less precise names for a representation include: document, file, and HTTP
message entity, instance, or variant." Roy T. Fielding
Field Summary | |
---|---|
static long |
UNKNOWN_SIZE
Indicates that the size of the representation can't be known in advance. |
Constructor Summary | |
---|---|
Representation()
Default constructor. |
|
Representation(MediaType mediaType)
Constructor. |
|
Representation(MediaType mediaType,
java.util.Date modificationDate)
Constructor. |
|
Representation(MediaType mediaType,
java.util.Date modificationDate,
Tag tag)
Constructor. |
|
Representation(MediaType mediaType,
Tag tag)
Constructor. |
|
Representation(Variant variant,
java.util.Date modificationDate)
Constructor from a variant. |
|
Representation(Variant variant,
java.util.Date modificationDate,
Tag tag)
Constructor from a variant. |
|
Representation(Variant variant,
Tag tag)
Constructor from a variant. |
Method Summary | |
---|---|
static Representation |
createEmpty()
Deprecated. Use EmptyRepresentation instead. |
long |
exhaust()
Exhaust the content of the representation by reading it and silently discarding anything read. |
long |
getAvailableSize()
Returns the size effectively available. |
Disposition |
getDisposition()
Returns the disposition characteristics of the representation. |
java.lang.String |
getDownloadName()
Deprecated. Use the "disposition" attribute instead. |
java.util.Date |
getExpirationDate()
Returns the future date when this representation expire. |
Range |
getRange()
Returns the range where in the full content the partial content available should be applied. Note that when used with HTTP connectors, this property maps to the "Content-Range" header. |
abstract java.io.Reader |
getReader()
Returns a characters reader with the representation's content. |
long |
getSize()
Returns the size in bytes if known, UNKNOWN_SIZE (-1) otherwise. Note that when used with HTTP connectors, this property maps to the "Content-Length" header. |
abstract java.io.InputStream |
getStream()
Returns a stream with the representation's content. |
abstract java.lang.String |
getText()
Converts the representation to a string value. |
boolean |
isAvailable()
Indicates if some fresh content is potentially available, without having to actually call one of the content manipulation method like getStream() that would actually consume it. |
boolean |
isDownloadable()
Deprecated. Use the "disposition" attribute instead. |
boolean |
isTransient()
Indicates if the representation's content is transient, which means that it can be obtained only once. |
void |
release()
Releases the representation and all associated objects like streams, channels or files which are used to produce its content, transient or not. |
void |
setAvailable(boolean available)
Indicates if some fresh content is available. |
void |
setDisposition(Disposition disposition)
Sets the disposition characteristics of the representation. |
void |
setDownloadable(boolean downloadable)
Deprecated. Use the "disposition" attribute instead. |
void |
setDownloadName(java.lang.String fileName)
Deprecated. Use the "disposition" attribute instead. |
void |
setExpirationDate(java.util.Date expirationDate)
Sets the future date when this representation expire. |
void |
setRange(Range range)
Sets the range where in the full content the partial content available should be applied. Note that when used with HTTP connectors, this property maps to the "Content-Range" header. |
void |
setSize(long expectedSize)
Sets the expected size in bytes if known, -1 otherwise. Note that when used with HTTP connectors, this property maps to the "Content-Length" header. |
void |
setTransient(boolean isTransient)
Indicates if the representation's content is transient. |
Methods inherited from class org.restlet.client.representation.RepresentationInfo |
---|
getModificationDate, getTag, setModificationDate, setTag |
Methods inherited from class org.restlet.client.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 |
Field Detail |
---|
public static final long UNKNOWN_SIZE
Constructor Detail |
---|
public Representation()
public Representation(MediaType mediaType)
mediaType
- The media type.public Representation(MediaType mediaType, java.util.Date modificationDate)
mediaType
- The media type.modificationDate
- The modification date.public Representation(MediaType mediaType, java.util.Date modificationDate, Tag tag)
mediaType
- The media type.modificationDate
- The modification date.tag
- The tag.public Representation(MediaType mediaType, Tag tag)
mediaType
- The media type.tag
- The tag.public Representation(Variant variant, java.util.Date modificationDate)
variant
- The variant to copy.modificationDate
- The modification date.public Representation(Variant variant, java.util.Date modificationDate, Tag tag)
variant
- The variant to copy.modificationDate
- The modification date.tag
- The tag.public Representation(Variant variant, Tag tag)
variant
- The variant to copy.tag
- The tag.Method Detail |
---|
@Deprecated public static Representation createEmpty()
EmptyRepresentation
instead.
public long exhaust() throws java.io.IOException
getStream()
and closes the retrieved stream in the end.
java.io.IOException
public long getAvailableSize()
getSize()
if no range is defined, otherwise it returns the size
of the range using Range.getSize()
.
public Disposition getDisposition()
@Deprecated public java.lang.String getDownloadName()
public java.util.Date getExpirationDate()
public Range getRange()
public abstract java.io.Reader getReader() throws java.io.IOException
java.io.IOException
public long getSize()
public abstract java.io.InputStream getStream() throws java.io.IOException
java.io.IOException
public boolean isAvailable()
public abstract java.lang.String getText() throws java.io.IOException
java.io.IOException
@Deprecated public boolean isDownloadable()
public boolean isTransient()
public void release()
setAvailable(boolean)
method
with "false" as a value.exhaust()
method or if this
could be too costly, you should instead explicitly abort the parent
request and the underlying connections using the Request#abort()
method or a shortcut one like ServerResource#abort()
or
Response#abort()
.
public void setAvailable(boolean available)
available
- True if some fresh content is available.public void setDisposition(Disposition disposition)
disposition
- The disposition characteristics of the representation.@Deprecated public void setDownloadable(boolean downloadable)
downloadable
- True if the representation's content is downloadable.@Deprecated public void setDownloadName(java.lang.String fileName)
fileName
- The suggested file name.public void setExpirationDate(java.util.Date expirationDate)
expirationDate
- The expiration date.public void setRange(Range range)
range
- The content range.public void setSize(long expectedSize)
expectedSize
- The expected size in bytes if known, -1 otherwise.public void setTransient(boolean isTransient)
isTransient
- True if the representation's content is transient.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |