public abstract class TemplateProcessor
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
ESCAPE_BACK_SLASH_WITH_SIXTEEN_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_BACKSPACE_WITH_EIGHT_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_CRETURN_WITH_EIGHT_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_DOLLAR_WITH_SIX_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_DOLLAR_WITH_TEN_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_DOUBLE_QUOTE_WITH_FIVE_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_DOUBLE_QUOTE_WITH_NINE_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_FORMFEED_WITH_EIGHT_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_NEWLINE_WITH_EIGHT_BACK_SLASHES |
protected static java.lang.String |
ESCAPE_TAB_WITH_EIGHT_BACK_SLASHES |
protected javax.xml.stream.XMLInputFactory |
inputFactory |
protected static java.lang.String |
JSON_TYPE |
protected static java.lang.String |
STRING_TYPE |
protected static java.lang.String |
TEXT_TYPE |
protected static java.lang.String |
XML_TYPE |
Constructor and Description |
---|
TemplateProcessor() |
Modifier and Type | Method and Description |
---|---|
void |
addPathArgument(Argument arg) |
protected org.apache.axiom.om.OMElement |
convertStringToOM(java.lang.String value)
Converts String to OMElement
|
protected java.lang.String |
escapeSpecialCharactersOfJson(java.lang.String jsonString)
Replace special characters of a JSON string.
|
protected java.lang.String |
escapeSpecialCharactersOfXml(java.lang.String xmlString)
Replace special characters of a XML string.
|
protected java.lang.String |
escapeSpecialChars(java.lang.String replaceString)
Helper method to replace required char values with escape characters.
|
protected java.lang.String |
escapeXMLSpecialChars(java.lang.String replaceString)
Helper method to replace required char values with escape characters for XML.
|
protected java.util.HashMap<java.lang.String,ArgumentDetails>[] |
getArgValues(java.lang.String mediaType,
MessageContext synCtx)
Goes through SynapsePath argument list, evaluating each by calling stringValueOf and returns a HashMap String, String
array where each item will contain a hash map with key "evaluated expression" and value "SynapsePath type".
|
java.lang.String |
getFormat() |
java.lang.String |
getMediaType() |
java.util.List<Argument> |
getPathArgumentList() |
protected void |
handleException(java.lang.String msg) |
protected java.lang.String |
inferReplacementType(java.util.Map.Entry<java.lang.String,ArgumentDetails> entry)
Helper function that takes a Map of String, ArgumentDetails where key contains the value of an evaluated
SynapsePath expression and value contains the type of SynapsePath + deepcheck status in use.
|
abstract void |
init()
Execute pre-processing steps if needed
|
protected boolean |
isEscapeXmlChars() |
protected boolean |
isJson(java.lang.String value)
Helper function that returns true if value passed is of JSON type.
|
protected boolean |
isXML(java.lang.String value)
Helper function that returns true if value passed is of XML Type.
|
protected java.lang.String |
prepareReplacementValue(java.lang.String mediaType,
MessageContext synCtx,
java.util.Map.Entry<java.lang.String,ArgumentDetails> replacementEntry)
Preprocess and converty types of the given arg value.
|
abstract java.lang.String |
processTemplate(java.lang.String template,
java.lang.String mediaType,
MessageContext synCtx)
Process the given template and return the output as String
|
void |
setEscapeXmlChars(boolean escapeXmlChars) |
void |
setFormat(java.lang.String format) |
void |
setMediaType(java.lang.String mediaType) |
protected static final java.lang.String JSON_TYPE
protected static final java.lang.String XML_TYPE
protected static final java.lang.String TEXT_TYPE
protected static final java.lang.String STRING_TYPE
protected static final java.lang.String ESCAPE_DOUBLE_QUOTE_WITH_FIVE_BACK_SLASHES
protected static final java.lang.String ESCAPE_DOUBLE_QUOTE_WITH_NINE_BACK_SLASHES
protected static final java.lang.String ESCAPE_BACK_SLASH_WITH_SIXTEEN_BACK_SLASHES
protected static final java.lang.String ESCAPE_DOLLAR_WITH_SIX_BACK_SLASHES
protected static final java.lang.String ESCAPE_DOLLAR_WITH_TEN_BACK_SLASHES
protected static final java.lang.String ESCAPE_BACKSPACE_WITH_EIGHT_BACK_SLASHES
protected static final java.lang.String ESCAPE_FORMFEED_WITH_EIGHT_BACK_SLASHES
protected static final java.lang.String ESCAPE_NEWLINE_WITH_EIGHT_BACK_SLASHES
protected static final java.lang.String ESCAPE_CRETURN_WITH_EIGHT_BACK_SLASHES
protected static final java.lang.String ESCAPE_TAB_WITH_EIGHT_BACK_SLASHES
protected final javax.xml.stream.XMLInputFactory inputFactory
public abstract java.lang.String processTemplate(java.lang.String template, java.lang.String mediaType, MessageContext synCtx)
template
- Template stringmediaType
- Output media typesynCtx
- MessageContextpublic abstract void init()
protected java.util.HashMap<java.lang.String,ArgumentDetails>[] getArgValues(java.lang.String mediaType, MessageContext synCtx)
synCtx
- MessageContextprotected java.lang.String prepareReplacementValue(java.lang.String mediaType, MessageContext synCtx, java.util.Map.Entry<java.lang.String,ArgumentDetails> replacementEntry)
mediaType
- Output media typesynCtx
- Message contextreplacementEntry
- Argumentprotected java.lang.String inferReplacementType(java.util.Map.Entry<java.lang.String,ArgumentDetails> entry)
It returns the type of conversion required (XML | JSON | String) based on the actual returned value and the path type.
entry
- protected boolean isJson(java.lang.String value)
value
- protected boolean isXML(java.lang.String value)
value
- protected org.apache.axiom.om.OMElement convertStringToOM(java.lang.String value) throws javax.xml.stream.XMLStreamException, org.apache.axiom.om.OMException
value
- String value to convertjavax.xml.stream.XMLStreamException
org.apache.axiom.om.OMException
protected java.lang.String escapeSpecialChars(java.lang.String replaceString)
replaceString
- protected java.lang.String escapeSpecialCharactersOfJson(java.lang.String jsonString)
jsonString
- JSON string.protected java.lang.String escapeSpecialCharactersOfXml(java.lang.String xmlString)
xmlString
- XML string.protected java.lang.String escapeXMLSpecialChars(java.lang.String replaceString)
replaceString
- protected boolean isEscapeXmlChars()
public void setEscapeXmlChars(boolean escapeXmlChars)
public void addPathArgument(Argument arg)
public java.util.List<Argument> getPathArgumentList()
public java.lang.String getFormat()
public void setFormat(java.lang.String format)
public java.lang.String getMediaType()
public void setMediaType(java.lang.String mediaType)
protected void handleException(java.lang.String msg)
Copyright © 2005-2021 Apache Software Foundation. All Rights Reserved.