public class JsonPaintTarget extends Object implements PaintTarget
PaintTarget.PaintStatus| Constructor and Description |
|---|
JsonPaintTarget(LegacyCommunicationManager manager,
Writer outWriter,
boolean cachingRequired)
Creates a new JsonPaintTarget.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addAttribute(String name,
boolean value)
Adds a boolean attribute to component.
|
void |
addAttribute(String name,
Component value)
Adds a Component type attribute.
|
void |
addAttribute(String name,
double value)
Adds a double attribute to component.
|
void |
addAttribute(String name,
float value)
Adds a float attribute to component.
|
void |
addAttribute(String name,
int value)
Adds a integer attribute to component.
|
void |
addAttribute(String name,
long value)
Adds a long attribute to component.
|
void |
addAttribute(String name,
Map<?,?> value)
TODO
|
void |
addAttribute(String name,
Object[] values) |
void |
addAttribute(String name,
Resource value)
Adds a resource attribute to component.
|
void |
addAttribute(String name,
String value)
Adds a string attribute to component.
|
void |
addCharacterData(String text)
Adds CDATA node to target UIDL-tree.
|
void |
addSection(String sectionTagName,
String sectionData)
Prints the single text section.
|
void |
addText(String str)
Prints XML-escaped text.
|
void |
addUIDL(String xml)
Adds XML directly to UIDL.
|
void |
addUploadStreamVariable(VariableOwner owner,
String name)
Adds a upload stream type variable.
|
void |
addVariable(VariableOwner owner,
String name,
boolean value)
Adds a boolean type variable.
|
void |
addVariable(VariableOwner owner,
String name,
Component value)
Adds a Component type variable.
|
void |
addVariable(VariableOwner owner,
String name,
double value)
Adds a double type variable.
|
void |
addVariable(VariableOwner owner,
String name,
float value)
Adds a float type variable.
|
void |
addVariable(VariableOwner owner,
String name,
int value)
Adds a int type variable.
|
void |
addVariable(VariableOwner owner,
String name,
long value)
Adds a long type variable.
|
void |
addVariable(VariableOwner owner,
String name,
StreamVariable value)
Adds details about
StreamVariable to the UIDL stream. |
void |
addVariable(VariableOwner owner,
String name,
String value)
Adds a string type variable.
|
void |
addVariable(VariableOwner owner,
String name,
String[] value)
Adds a string array type variable.
|
void |
addXMLSection(String sectionTagName,
String sectionData,
String namespace)
Adds XML section with namespace.
|
void |
close()
Closes the paint target.
|
void |
endPaintable(Component paintable)
Prints paintable element end tag.
|
void |
endTag(String tagName)
Prints the element end tag.
|
static String |
escapeJSON(String s)
Escapes the given string so it can safely be used as a JSON string.
|
static String |
escapeXML(String xml)
Substitutes the XML sensitive characters with predefined XML entities.
|
String |
getTag(ClientConnector clientConnector) |
String |
getUIDL()
Gets the UIDL already printed to stream.
|
Collection<Class<? extends ClientConnector>> |
getUsedClientConnectors() |
Set<Object> |
getUsedResources() |
boolean |
isFullRepaint() |
PaintTarget.PaintStatus |
startPaintable(Component connector,
String tagName)
Prints element start tag of a paintable section.
|
void |
startTag(String tagName)
Prints element start tag.
|
void |
startTag(String tagName,
boolean isChildNode)
Prints the element start tag.
|
public JsonPaintTarget(LegacyCommunicationManager manager, Writer outWriter, boolean cachingRequired) throws PaintException
manager - outWriter - A character-output stream.cachingRequired - true if this is not a full repaint, i.e. caches are to be
used.PaintException - if the paint operation failed.public void startTag(String tagName) throws PaintException
PaintTargetTodo: Checking of input values
startTag in interface PaintTargettagName - the name of the start tag.PaintException - if the paint operation failed.public void startTag(String tagName, boolean isChildNode) throws PaintException
Todo:
Checking of input values
tagName - the name of the start tag.PaintException - if the paint operation failed.public void endTag(String tagName) throws PaintException
endTag in interface PaintTargettag - the name of the end tag.PaintException - if the paint operation failed.public static String escapeXML(String xml)
xml - the String to be substituted.public static String escapeJSON(String s)
s - The string to escapepublic void addText(String str) throws PaintException
addText in interface PaintTargetstr - PaintException - if the paint operation failed.public void addAttribute(String name, boolean value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute name.value - the Attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, Resource value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute namevalue - the Attribute valuePaintException - if the paint operation failed.public void addAttribute(String name, int value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute name.value - the Attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, long value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute name.value - the Attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, float value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute name.value - the Attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, double value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Attribute name.value - the Attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, String value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the Boolean attribute name.value - the Boolean attribute value.PaintException - if the paint operation failed.public void addAttribute(String name, Component value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetname - the name of the attributevalue - the Component to be referenced on client sidePaintExceptionpublic void addAttribute(String name, Map<?,?> value) throws PaintException
PaintTargetaddAttribute in interface PaintTargetPaintExceptionpublic void addAttribute(String name, Object[] values)
addAttribute in interface PaintTargetpublic void addVariable(VariableOwner owner, String name, String value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, Component value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changesname - the name of the variablevalue - the initial value of the variablePaintException - if the paint oparation failspublic void addVariable(VariableOwner owner, String name, int value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, long value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, float value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, double value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, boolean value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addVariable(VariableOwner owner, String name, String[] value) throws PaintException
PaintTargetaddVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.value - the Variable initial value.PaintException - if the paint operation failed.public void addUploadStreamVariable(VariableOwner owner, String name) throws PaintException
addUploadStreamVariable in interface PaintTargetowner - the Listener for variable changes.name - the Variable name.PaintException - if the paint operation failed.public void addSection(String sectionTagName, String sectionData) throws PaintException
addSection in interface PaintTargetsectionTagName - the name of the tag.sectionData - the section data to be printed.PaintException - if the paint operation failed.public void addUIDL(String xml) throws PaintException
addUIDL in interface PaintTargetxml - the Xml to be added.PaintException - if the paint operation failed.public void addXMLSection(String sectionTagName, String sectionData, String namespace) throws PaintException
addXMLSection in interface PaintTargetsectionTagName - the name of the tag.sectionData - the section data.namespace - the namespace to be added.PaintException - if the paint operation failed.PaintTarget.addXMLSection(String, String, String)public String getUIDL()
getUIDL can be called.public void close()
throws PaintException
getUIDL can be called. Subsequent attempts to write to paint
target. If the target was already closed, call to this function is
ignored. will generate an exception.PaintException - if the paint operation failed.public PaintTarget.PaintStatus startPaintable(Component connector, String tagName) throws PaintException
PaintTarget
If the Component is found in cache and this function returns true
it may omit the content and close the tag, in which case cached content
should be used.
This method may also add only a reference to the paintable and queue the paintable to be painted separately.
Each paintable being painted should be closed by a matching
PaintTarget.endPaintable(Component) regardless of the PaintTarget.PaintStatus
returned.
startPaintable in interface PaintTargetconnector - the paintable to start.tagName - the name of the start tag.PaintTarget.PaintStatus - ready to paint or already cached on the
client (also used for sub paintables that are painted later
separately)PaintException - if the paint operation failed.PaintTarget.startTag(String)public void endPaintable(Component paintable) throws PaintException
PaintTargetPaintTarget.startPaintable(Component, String)should be matched by
PaintTarget.endPaintable(Component). If the parent tag is closed before
every child tag is closed a PaintException is raised.endPaintable in interface PaintTargetpaintable - the paintable to close.PaintException - if the paint operation failed.public void addCharacterData(String text) throws PaintException
PaintTargetaddCharacterData in interface PaintTargettext - the Character data to addPaintException - if the paint operation failed.public String getTag(ClientConnector clientConnector)
getTag in interface PaintTargetClientConnector type. Terminal may define how to present
the connector.public Collection<Class<? extends ClientConnector>> getUsedClientConnectors()
public void addVariable(VariableOwner owner, String name, StreamVariable value) throws PaintException
PaintTargetStreamVariable to the UIDL stream. Eg. in web
terminals Receivers are typically rendered for the client side as URLs,
where the client side implementation can do an http post request.
The urls in UIDL message may use Vaadin specific protocol. Before
actually using the urls on the client side, they should be passed via
com.vaadin.client.ApplicationConnection#translateVaadinUri(String).
Note that in current terminal implementation StreamVariables are cleaned from the terminal only when:
StreamVariable.StreamingStartEvent.disposeStreamVariable()
addVariable in interface PaintTargetowner - the ReceiverOwner that can track the progress of streaming to
the given StreamVariablename - an identifying name for the StreamVariablevalue - the StreamVariable to paintPaintException - if the paint operation failed.public boolean isFullRepaint()
isFullRepaint in interface PaintTargetCopyright © 2016 Vaadin Ltd. All rights reserved.