Packages

t

scales.xml.serializers

LSSerializer

trait LSSerializer extends Serializer

Default serializer, correctness first. Uses the LSSerializer present in each DOM L3 impl. XmlItems are always serialized with the LS, elements and attributes are however for speed reasons, verified for encoding once per QName; the attribute values themselves are written via Text nodes and LS.

Linear Supertypes
Serializer, AnyRef, Any
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LSSerializer
  2. Serializer
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract val data: SerializerData
  2. abstract val doc: Document
  3. abstract val docBuilderF: DocumentBuilderFactory
  4. abstract val encMap: (String) ⇒ Option[Throwable]

    Can the ncName be mapped for a given encoding

  5. abstract val impl: DOMImplementationLS
  6. abstract val lsaout: LSOutput
  7. abstract val lsout: LSOutput
  8. abstract val lss: org.w3c.dom.ls.LSSerializer

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. lazy val canEncode: (String) ⇒ Boolean

    See default SF for logic on this, however faulty :-)

  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  7. def ct(t: ⇒ Boolean, s: ⇒ String): Option[Throwable]
  8. def doElem(qName: QName, attribs: Traversable[Attribute], ns: Map[String, String], declareDefaultNS: Option[String]): Option[Throwable]

    Override this to order the attributes.

  9. def emptyElement(qName: QName, attributes: Traversable[Attribute], namespaces: Map[String, String], declareDefaultNS: Option[String], path: List[QName]): Option[Throwable]
    Definition Classes
    LSSerializerSerializer
  10. lazy val encoder: CharsetEncoder
  11. def endElement(qName: QName, path: List[QName]): Option[Throwable]
    Definition Classes
    LSSerializerSerializer
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def item(item: XmlItem, path: List[QName]): Option[Throwable]

    LSSerializer in 6_24 is garbage, but the xalan one isn't much better.

    LSSerializer in 6_24 is garbage, but the xalan one isn't much better. jre uses hex, xalan numberic character refs. And jre is totally useless for cdata, writing no end part, both ignore the split-cdata-sections option when escaping, choosing to split, I assume this is only being done for character refs but follows the DOMConfiguration (instead of the load and save spec) for end sequence splitting.

    As such there only seems to be one safe way to handle this: # Use the encoder to check if a CData or Comment can be written without splitting, throw if it can't. # Write the start and end CData directly

    Definition Classes
    LSSerializerSerializer
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. def startElement(qName: QName, attributes: Traversable[Attribute], namespaces: Map[String, String], declareDefaultNS: Option[String], path: List[QName]): Option[Throwable]
    Definition Classes
    LSSerializerSerializer
  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. lazy val textNode: org.w3c.dom.Text
  25. def toString(): String
    Definition Classes
    AnyRef → Any
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  29. def writeAttr(before: ⇒ String, toCt: ⇒ String, after: ⇒ String): Option[Throwable]
  30. def writeNonText(item: XmlItem, path: List[QName]): Option[Throwable]

    Performs the actual write for Comments/CData/PI, due to LSSerializer issues this function is seperated for easy overriding, should anyone really trust their DOM/JAXP versions.

    Performs the actual write for Comments/CData/PI, due to LSSerializer issues this function is seperated for easy overriding, should anyone really trust their DOM/JAXP versions.

    For this method to be called the encoding has already been verified.

  31. def xmlDeclaration(encoding: Charset, version: XmlVersion): Option[Throwable]
    Definition Classes
    LSSerializerSerializer

Inherited from Serializer

Inherited from AnyRef

Inherited from Any

Ungrouped