Class TransformerBase

  • Direct Known Subclasses:
    FeatureTransformer, FeatureTypeTransformer, FilterTransformer, GeometryTransformer, SLDTransformer

    public abstract class TransformerBase
    extends Object
    TransformerBase provides support for writing Object->XML encoders. The basic pattern for usage is to extend TransformerBase and implement the createTranslator(ContentHandler) method. This is easiest done by extending the inner class TranslatorSupport. A Translator uses a ContentHandler to issue SAX events to a javax.xml.transform.Transformer. If possible, make the translator public so it can be used by others as well.
    Author:
    Ian Schneider
    • Constructor Detail

      • TransformerBase

        public TransformerBase()
    • Method Detail

      • createTranslator

        public abstract Translator createTranslator​(ContentHandler handler)
        Create a Translator to issue SAXEvents to a ContentHandler.
      • transform

        public String transform​(Object object)
                         throws TransformerException
        Perform the XML encoding of the given object into an internal buffer and return the resulting String. Calls transform(Object,Writer). It should be noted the most efficient mechanism of encoding is using the OutputStream or Writer methods
        Throws:
        TransformerException
      • getIndentation

        public int getIndentation()
        Get the number of spaces to indent the output xml. Defaults to -1.
        Returns:
        The number of spaces to indent, or -1, to disable.
      • setIndentation

        public void setIndentation​(int amt)
        Set the number of spaces to indent the output xml. Default to -1.
        Parameters:
        amt - The number of spaces to indent if > 0, otherwise disable.
      • getEncoding

        public Charset getEncoding()
        Gets the charset to declare in the header of the response.
        Returns:
        the charset to encode with.
      • setEncoding

        public void setEncoding​(Charset charset)
        Sets the charset to declare in the xml header returned.
        Parameters:
        charset - A charset object of the desired encoding
      • isOmitXMLDeclaration

        public boolean isOmitXMLDeclaration()
        Will this transformation omit the standard XML declaration. Defaults to false
        Returns:
        true if the XML declaration will be omitted, false otherwise.
      • setOmitXMLDeclaration

        public void setOmitXMLDeclaration​(boolean xmlDecl)
        Set this transformer to omit/include the XML declaration. Defaults to false
        Parameters:
        xmlDecl - Omit/include the XML declaration.
      • isNamespaceDeclartionEnabled

        public boolean isNamespaceDeclartionEnabled()
        Should this transformer declare namespace prefixes in the first element it outputs? Defaults to true.
        Returns:
        true if namespaces will be declared, false otherwise
      • setNamespaceDeclarationEnabled

        public void setNamespaceDeclarationEnabled​(boolean enabled)
        Enable declaration of namespace prefixes in the first element. Defaults to true;
        Parameters:
        enabled - Enable namespace declaration.