Package org.grails.encoder.impl
Class BasicXMLEncoder
- java.lang.Object
-
- org.grails.encoder.AbstractCharReplacementEncoder
-
- org.grails.encoder.impl.BasicXMLEncoder
-
- All Implemented Interfaces:
CodecIdentifierProvider,Encoder,EncodesToWriter,StreamingEncoder
- Direct Known Subclasses:
HTMLEncoder
public class BasicXMLEncoder extends AbstractCharReplacementEncoder
Encoder implementation that escapes some characters for inclusion in XML documents Currently ', ", <, > and & characters are replaced with XML entities. Additionally backslash (/), non-breaking space, backtick (`) and @ are also replaced for visibility/additional security.- Since:
- 2.3
-
-
Field Summary
Fields Modifier and Type Field Description static CodecIdentifierXML_CODEC_IDENTIFIER-
Fields inherited from class org.grails.encoder.AbstractCharReplacementEncoder
codecIdentifier
-
-
Constructor Summary
Constructors Modifier Constructor Description BasicXMLEncoder()protectedBasicXMLEncoder(CodecIdentifier codecIdentifier)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.ObjectdoEncode(java.lang.Object o)java.lang.Objectencode(java.lang.Object o)Encode given input objectprotected java.lang.ObjectencodeAsXmlObject(java.lang.Object o)protected java.lang.StringescapeCharacter(char ch, char previousChar)Escape the character, return null if no replacement has to be madeprotected static java.lang.StringxmlEscapeCharacter(char ch)-
Methods inherited from class org.grails.encoder.AbstractCharReplacementEncoder
convertToString, createChainingEncodesToWriter, doCharReplacementEncoding, encodeToStream, encodeToWriter, encodeToWriter, escapeCharSequence, getCodecIdentifier, isApplyToSafelyEncoded, isSafe, markEncoded
-
-
-
-
Field Detail
-
XML_CODEC_IDENTIFIER
public static final CodecIdentifier XML_CODEC_IDENTIFIER
-
-
Constructor Detail
-
BasicXMLEncoder
public BasicXMLEncoder()
-
BasicXMLEncoder
protected BasicXMLEncoder(CodecIdentifier codecIdentifier)
-
-
Method Detail
-
xmlEscapeCharacter
protected static final java.lang.String xmlEscapeCharacter(char ch)
-
escapeCharacter
protected java.lang.String escapeCharacter(char ch, char previousChar)Description copied from class:AbstractCharReplacementEncoderEscape the character, return null if no replacement has to be made- Specified by:
escapeCharacterin classAbstractCharReplacementEncoder- Parameters:
ch- the character to escapepreviousChar- the previous char- Returns:
- the replacement string, null if no replacement has to be made
-
encode
public final java.lang.Object encode(java.lang.Object o)
Description copied from interface:EncoderEncode given input object- Specified by:
encodein interfaceEncoder- Overrides:
encodein classAbstractCharReplacementEncoder- Parameters:
o- the input object- Returns:
- the encoded object
-
doEncode
protected java.lang.Object doEncode(java.lang.Object o)
-
encodeAsXmlObject
protected java.lang.Object encodeAsXmlObject(java.lang.Object o)
-
-