package serializers
- Alphabetic
- Public
- All
Type Members
-
case class
CDataCannotBeEncoded(what: String) extends CannotBeEncoded with Product with Serializable
The CData content must be split due to encoding issues, which isn't supported (due to bad CData handling on Sun JRE and differences with Xalan.
The CData content must be split due to encoding issues, which isn't supported (due to bad CData handling on Sun JRE and differences with Xalan.
NOTE The Xalan behaviour follows the DOMConfiguration behaviour but will split on encoding issues, which breaks the point of using CData, so if you need that, don't use it, let your sax / pull parser handle proper serilization and escaping for you in a normal text field.
- class CannotBeEncoded extends SerializationException
-
case class
CannotSerialize(what: String) extends SerializationException with Product with Serializable
For a given content it could not be serialized in the document.
-
case class
CommentCannotBeEncoded(what: String) extends CannotBeEncoded with Product with Serializable
Comments don't support & recognition, which means you can't escape the encoding, either they encode or they do not
-
case class
IncompatibleQNameVersions(what: String) extends SerializationException with Product with Serializable
Result of trying to serialize a 1.1 ncname into a 1.0 document
-
case class
InvalidCharacterInMarkup(what: String) extends SerializationException with Product with Serializable
The serialization encoding cannot support the characters in a given markup (attribute name or element name.
The serialization encoding cannot support the characters in a given markup (attribute name or element name. ächtung in UTF-8 works but not in US-ASCII.
-
trait
LSSerializer extends Serializer
Default serializer, correctness first.
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.
- trait LSSerializerConcurrentCacheFactory extends LSSerializerFactoryBase
- trait LSSerializerConcurrentCacheFactoryXHTML extends LSSerializerConcurrentCacheFactory
-
trait
LSSerializerFactoryBase extends SerializerFactory
Base implementation for a correct serializer using LSSerializer to provide escape character references.
Base implementation for a correct serializer using LSSerializer to provide escape character references.
Developers can override this directly implementing encF, or choose to override createSerializer to further change serialization behaviour
-
trait
LSSerializerNoCacheFactoryT extends LSSerializerFactoryBase
This variety does not use a thread safe global cache, use when your data is progressivly radically different for each run.
This variety does not use a thread safe global cache, use when your data is progressivly radically different for each run.
If you don't like this scheme either simply implement LSSerializerFactoryBase with your own caching needs.
-
case class
NamespaceContext(mappings: Map[String, String], declMap: Map[String, String], addDefault: Option[String]) extends Product with Serializable
A NamespaceContext represents the prefix->namespace mappings for a given elements children.
A NamespaceContext represents the prefix->namespace mappings for a given elements children. It is only valid for the time of serialization (or comparison).
- mappings
prefix -> namespace
- declMap
prefix -> namespace (these should be declared for a given element)
- addDefault
should a new xmlns="" default be added, if so Some(String)
-
case class
NoDataInStream() extends SerializationException with Product with Serializable
The stream of PullTypes was empty.
-
case class
PICannotBeEncoded(what: String) extends CannotBeEncoded with Product with Serializable
PIs also suffer a bad specification
-
class
SerializationException extends RuntimeException
Base exception marker for serialization
-
trait
SerializeableXml[T] extends AnyRef
Type class for choosing a serializing algo
-
trait
Serializer extends AnyRef
Interface used for serializing the XML events, same for both stream and tree.
Interface used for serializing the XML events, same for both stream and tree.
The default implementation validates the output via LSSerializer against a given encoding.
An alternative FastSerializer simply outputs strings and is in no way correct but at least faster then going to StreamWriter for incorrectness.
Serializers should use qName.ncName for serialization purposes of both attributes and elements, the QName is provided to allow for validation of ouput.
If a function returns Some it should signal the termination of the serializing. Implementations are expected to respect this approach, its for the benefit of all developers.
List[QName] is provided to help if path relevant information is needed for serialization. For example if a use case requires that a particular path is filtered out. Purely for performance reasons the list is in reverse order with the current QName at the top and root at the bottom.
- case class SerializerData(out: Writer, version: XmlVersion = ScalesXml.defaultVersion, encoding: Charset = defaultCharset) extends Product with Serializable
-
trait
SerializerFactory extends AnyRef
Serializer factories are responsible for the life cycle of serializers and their resources.
-
trait
SerializerImplicits extends AnyRef
SerializeableXml instances for the core types
-
trait
SerializingIter extends AnyRef
Provide push based serializing Iteratee
-
trait
SimpleSerializer extends Serializer
Performs no validation, sorting of attributes, extra spaces on the end of empty element declarations and uses the short form for empty elements.
Performs no validation, sorting of attributes, extra spaces on the end of empty element declarations and uses the short form for empty elements.
Basically its good for non-pretty printing debugging only
-
class
StreamSerializer[T] extends SerializeableXml[T]
Provides a base class for steam handling
-
case class
StreamStatus(output: XmlOutput, thrown: Option[Throwable] = None, isEmpty: Boolean = false) extends Product with Serializable
Status of stream processing
-
case class
WriteTo[T](it: T, version: Option[XmlVersion] = None, encoding: Option[Charset] = None)(implicit evidence$1: SerializeableXml[T]) extends Product with Serializable
Wraps the use of writeTo allowing: xml writeTo output
-
trait
XHTMLLSSerializer extends LSSerializer
Adds an extra space after an empty element
-
case class
XmlOutput(data: SerializerData, currentMappings: List[Map[String, String]] = ..., path: List[QName] = List())(implicit serializerFI: SerializerFactory) extends Product with Serializable
This class represents state during a serialization
- trait XmlPrinter extends AnyRef
- trait XmlPrinterImplicits extends AnyRef
Value Members
-
object
LSSerializerFactory extends LSSerializerConcurrentCacheFactory
Default implmementation of serialization
-
object
LSSerializerFactoryXHTML extends LSSerializerConcurrentCacheFactoryXHTML
XHTML serialization extra touches
- object LSSerializerNoCacheFactory extends LSSerializerNoCacheFactoryT
- object SerializerHelpers
- object SimpleSerializerFactory extends SerializerFactory
-
object
StreamSerializer
Provides basis for serialisation of streams.