org.restlet.representation
Class StringRepresentation

java.lang.Object
  extended by org.restlet.representation.Variant
      extended by org.restlet.representation.RepresentationInfo
          extended by org.restlet.representation.Representation
              extended by org.restlet.representation.CharacterRepresentation
                  extended by org.restlet.representation.StringRepresentation
Direct Known Subclasses:
AppendableRepresentation

public class StringRepresentation
extends CharacterRepresentation

Represents an Unicode string that can be converted to any character set supported by Java.

Author:
Jerome Louvel

Field Summary
 
Fields inherited from class org.restlet.representation.Representation
UNKNOWN_SIZE
 
Constructor Summary
StringRepresentation(char[] chars)
          Constructor.
StringRepresentation(CharSequence text)
          Constructor.
StringRepresentation(CharSequence text, Language language)
          Constructor.
StringRepresentation(CharSequence text, MediaType mediaType)
          Constructor.
StringRepresentation(CharSequence text, MediaType mediaType, Language language)
          Constructor.
StringRepresentation(CharSequence text, MediaType mediaType, Language language, CharacterSet characterSet)
          Constructor.
 
Method Summary
 Reader getReader()
          Returns a characters reader with the representation's content.
 InputStream getStream()
          Returns a stream with the representation's content.
 String getText()
          Converts the representation to a string value.
 void release()
          Closes and releases the input stream.
 void setCharacterSet(CharacterSet characterSet)
          Sets the character set or null if not applicable.

Note that when used with HTTP connectors, this property maps to the "Content-Type" header.
 void setText(CharSequence text)
          Sets the string value.
 void setText(String text)
          Sets the string value.
 String toString()
           
protected  void updateSize()
          Updates the expected size according to the current string value.
 void write(Writer writer)
          Writes the representation to a characters writer.
 
Methods inherited from class org.restlet.representation.CharacterRepresentation
getChannel, write, write
 
Methods inherited from class org.restlet.representation.Representation
append, exhaust, getAvailableSize, getDigest, getDisposition, getExpirationDate, getRange, getRegistration, getSize, hasKnownSize, isAvailable, isEmpty, isSelectable, isTransient, 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, includes, isCompatible, setEncodings, setLanguages, setLocationRef, setLocationRef, setMediaType
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StringRepresentation

public StringRepresentation(char[] chars)
Constructor. The following metadata are used by default: "text/plain" media type, no language and the UTF-8 character set.

Parameters:
chars - The characters array.

StringRepresentation

public StringRepresentation(CharSequence text)
Constructor. The following metadata are used by default: "text/plain" media type, no language and the UTF-8 character set.

Parameters:
text - The string value.

StringRepresentation

public StringRepresentation(CharSequence text,
                            Language language)
Constructor. The following metadata are used by default: "text/plain" media type, no language and the UTF-8 character set.

Parameters:
text - The string value.
language - The language.

StringRepresentation

public StringRepresentation(CharSequence text,
                            MediaType mediaType)
Constructor. The following metadata are used by default: no language and the UTF-8 character set.

Parameters:
text - The string value.
mediaType - The media type.

StringRepresentation

public StringRepresentation(CharSequence text,
                            MediaType mediaType,
                            Language language)
Constructor. The following metadata are used by default: UTF-8 character set.

Parameters:
text - The string value.
mediaType - The media type.
language - The language.

StringRepresentation

public StringRepresentation(CharSequence text,
                            MediaType mediaType,
                            Language language,
                            CharacterSet characterSet)
Constructor.

Parameters:
text - The string value.
mediaType - The media type.
language - The language.
characterSet - The character set.
Method Detail

getReader

public Reader getReader()
                 throws IOException
Description copied from class: Representation
Returns 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.

Specified by:
getReader in class Representation
Returns:
A reader with the representation's content.
Throws:
IOException

getStream

public InputStream getStream()
                      throws IOException
Description copied from class: Representation
Returns a stream with the representation's content. This method is ensured to return a fresh stream for each invocation unless it is a transient representation, in which case null is returned.

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

getText

public String getText()
Description copied from class: Representation
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 Representation
Returns:
The representation as a string value.

release

public void release()
Closes and releases the input stream.

Overrides:
release in class Representation

setCharacterSet

public void setCharacterSet(CharacterSet characterSet)
Description copied from class: Variant
Sets the character set or null if not applicable.

Note that when used with HTTP connectors, this property maps to the "Content-Type" header.

Overrides:
setCharacterSet in class Variant
Parameters:
characterSet - The character set or null if not applicable.

setText

public void setText(CharSequence text)
Sets the string value.

Parameters:
text - The string value.

setText

public void setText(String text)
Sets the string value.

Parameters:
text - The string value.

toString

public String toString()
Overrides:
toString in class Variant

updateSize

protected void updateSize()
Updates the expected size according to the current string value.


write

public void write(Writer writer)
           throws IOException
Description copied from class: Representation
Writes the representation to a characters writer. 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.

Note that the class implementing this method shouldn't flush or close the given Writer after writing to it as this will be handled by the Restlet connectors automatically.

Specified by:
write in class Representation
Parameters:
writer - The characters writer.
Throws:
IOException


Copyright © 2005-2013 Restlet.