eu.cdevreeze.yaidom.print

DocumentPrinterUsingDomLS

final class DocumentPrinterUsingDomLS extends DocumentPrinter

DOM-LS-based Document printer.

To pretty-print a Document, create a DocumentPrinterUsingDomLS instance as follows:

val printer = DocumentPrinterUsingDomLS.newInstance() withSerializerCreator { domImpl =>
  val writer = domImpl.createLSSerializer()
  writer.getDomConfig.setParameter("format-pretty-print", java.lang.Boolean.TRUE)
  writer
}

If more flexibility is needed in configuring the DocumentPrinter than offered by this class, consider writing a wrapper DocumentPrinter which wraps a DocumentPrinterUsingDomLS, but adapts the print method. This would make it possible to adapt the serialization, for example.

A DocumentPrinterUsingDomLS instance can be re-used multiple times, from the same thread. If the DocumentBuilderFactory and DOMImplementationLS are thread-safe, it can even be re-used from multiple threads. Typically a DocumentBuilderFactory or DOMImplementationLS cannot be trusted to be thread-safe, however. In a web application, one (safe) way to deal with that is to use one DocumentBuilderFactory and DOMImplementationLS instance per request.

Self Type
DocumentPrinterUsingDomLS
Linear Supertypes
DocumentPrinter, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. DocumentPrinterUsingDomLS
  2. DocumentPrinter
  3. AnyRef
  4. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DocumentPrinterUsingDomLS(docBuilderFactory: DocumentBuilderFactory, docBuilderCreator: (DocumentBuilderFactory) ⇒ DocumentBuilder, domImplementation: DOMImplementationLS, serializerCreator: (DOMImplementationLS) ⇒ LSSerializer)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  8. val docBuilderCreator: (DocumentBuilderFactory) ⇒ DocumentBuilder

  9. val docBuilderFactory: DocumentBuilderFactory

  10. val domImplementation: DOMImplementationLS

  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  14. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  20. def omittingXmlDeclaration: DocumentPrinterUsingDomLS

    Returns a copy of this DocumentPrinter that omits XML declarations

    Returns a copy of this DocumentPrinter that omits XML declarations

    Definition Classes
    DocumentPrinterUsingDomLSDocumentPrinter
  21. def print(doc: Document): String

    Converts the Document to a String.

    Converts the Document to a String. May use a lot of memory for large XML documents. The output encoding is UTF-8.

    Definition Classes
    DocumentPrinterUsingDomLSDocumentPrinter
  22. def print(doc: Document, encoding: String): Array[Byte]

    Converts the Document to a byte array, using the given encoding.

    Converts the Document to a byte array, using the given encoding. May use a lot of memory for large XML documents.

    Definition Classes
    DocumentPrinterUsingDomLSDocumentPrinter
  23. final def print(elm: Elem): String

    Converts the Elem to a String, omitting the XML declaration

    Converts the Elem to a String, omitting the XML declaration

    Definition Classes
    DocumentPrinter
  24. final def print(elm: Elem, encoding: String): Array[Byte]

    Converts the Elem to a byte array, omitting the XML declaration

    Converts the Elem to a byte array, omitting the XML declaration

    Definition Classes
    DocumentPrinter
  25. val serializerCreator: (DOMImplementationLS) ⇒ LSSerializer

  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  27. def toString(): String

    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  29. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  30. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  31. def withSerializerCreator(newSerializerCreator: (DOMImplementationLS) ⇒ LSSerializer): DocumentPrinterUsingDomLS

Inherited from DocumentPrinter

Inherited from AnyRef

Inherited from Any