Package

scales.xml

impl

Permalink

package impl

This package is not intended for direct usage, however it provides much of the functionality that is used throughout scales.xml, and as such may be of use to those extending it.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. impl
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait DefaultXmlVersion extends AnyRef

    Permalink
  2. case class DocsUp[WHAT](what: WHAT, docroot: DocumentRoot) extends Product with Serializable

    Permalink

    exists only to provide Jaxen and JXPath with the same document root

  3. case class DocumentRoot(xmlPath: xml.XmlPath) extends Product with Serializable

    Permalink

    exists only to provide Jaxen and JXPath with a document "root"

  4. class ElemKey extends AnyRef

    Permalink

    Allows quick lookups without creating elements, only use via copy and then don't change it

  5. sealed trait FromParser extends AnyRef

    Permalink

    Indicates if the Scales code is being called from within a parser or not.

    Indicates if the Scales code is being called from within a parser or not. Only fromParserDefault is available with type NotFromParser and the NotFromParser object itself from outside of scales.xml

  6. final class FullEqualQNameKey extends AnyRef

    Permalink

    Provides a key that also checks ===, used in caching where you want to remove all collision possibilities.

    Provides a key that also checks ===, used in caching where you want to remove all collision possibilities.

    Note to reduce allocation costs its very mutable, use QName directly when possible. Note here the allocation costs refer more to the gc hit of the extra allocations that are then directly thrown away.

    No QNames were hurt during the use of this class.

  7. trait QNameImplicits extends AnyRef

    Permalink
  8. trait ScalesXmlImplicits extends XmlTypesImplicits with DefaultXmlVersion with QNameImplicits with XmlUtilsImplicits with DslImplicits with OptionalDslBuilderImplicits with XmlParserImplicits with OptimisingStrategiesImplicits with TraxConversionImplicits with SerializerImplicits with XmlPrinterImplicits with FunctionImplicits with XmlPathImplicits with PullTypeConversionImplicits with DefaultXmlEquals with StreamComparableImplicits with ComparisonContextImplicits with FromEqualsImplicit

    Permalink
  9. class StringToNSBuilder extends AnyRef

    Permalink

    Pimps a string for namespace handling

  10. class TreeProxies extends AnyRef

    Permalink

    Mutable list that keeps the item creation to a minimum, no extra garbage here until the parse is done...

    Mutable list that keeps the item creation to a minimum, no extra garbage here until the parse is done...

    NOTE this is effectively an internal structure, but is provided for user land performance tweaks

  11. final class TreeProxy extends AnyRef

    Permalink
  12. trait Whitespace extends AnyRef

    Permalink

    A collection of whitespace related functions

  13. trait XmlFactories extends AnyRef

    Permalink

    Most of the JAXP, STAX and DOM apis don't mention much about thread safety but the dominant xerces is completely unsafe with regards to threads.

    Most of the JAXP, STAX and DOM apis don't mention much about thread safety but the dominant xerces is completely unsafe with regards to threads. In fact only the 1.4.2 apis mention anything about thread safety expectations.

    The process of getting a factory is very expensive and are not thread safe (you can't trust it to create a document in parallel). See MUSE 270 for an example of why.

    As such we must use a pool for all handling. A thread/piece of code grabs a factory from the pool, creating if necessary.

    To aid the user the parsing code uses the Loaner interface (for SAX and DOM factories) and uses the Pool interface directly for Pull Parsers, as using them does not imply a given scope.

    By default no validating is performed

  14. trait XmlTypes extends AnyRef

    Permalink
  15. trait XmlTypesImplicits extends AnyRef

    Permalink
  16. trait XmlUtils extends AnyRef

    Permalink
  17. trait XmlUtilsImplicits extends AnyRef

    Permalink

Value Members

  1. object DefaultDOMFactoryPool extends SimpleUnboundedPool[DocumentBuilderFactory]

    Permalink

    Default DOMFactory impl

  2. object DefaultHashes

    Permalink
  3. object DefaultSAXParserFactoryPool extends SimpleUnboundedPool[SAXParserFactory]

    Permalink

    Default SAXParser Factory

  4. object DefaultStaxInputFactoryPool extends SimpleUnboundedPool[XMLInputFactory]

    Permalink

    Default StaxInputFactory impl

  5. object DefaultXMLReaderFactoryPool extends SimpleUnboundedPool[XMLReader] with DefaultSaxSupport

    Permalink

    Default XMLReader Factory

  6. object DefaultXSDSchemaFactoryPool extends SimpleUnboundedPool[SchemaFactory]

    Permalink

    Default XSD SchemaFactory impl

  7. object EqualsHelpers extends DefaultQNameEquals

    Permalink

    Needed to help with cyclic issues in multi threaded MODULE$ access, after startup no problem, but we can't gaurantee that.

  8. object ExtraTypesImplicits

    Permalink
  9. object NameCreators

    Permalink

    Given an optimisation strategy create QNames for elements and attributes.

    Given an optimisation strategy create QNames for elements and attributes.

    These are primarily of use from parsers and handle 0 length uris and qNames with ":" in them.

  10. object NamespaceDefaults

    Permalink
  11. object NoVersionSAXParserFactoryPool extends SimpleUnboundedPool[SAXParserFactory]

    Permalink

    SAXParser Factory without version support

  12. object NoVersionXmlReaderFactoryPool extends SimpleUnboundedPool[XMLReader] with DefaultSaxSupport

    Permalink

    Aalto and others don't support getting the xml version, if your parser doesn't you could use loadXmlReader with this pool directly.

  13. object NotFromParser extends FromParser with Product with Serializable

    Permalink

    NotFromParser may be used explicitly to provide a FromParser instance in user code.

    NotFromParser may be used explicitly to provide a FromParser instance in user code. Alternatively use the implciit ScalesXml.fromParserDefault.

  14. object QNameCharUtils

    Permalink

    Follows the XML 1.0 spec and XML 1.1 spec, all underlying code provided by a copied version of the Xerces libs.

    Follows the XML 1.0 spec and XML 1.1 spec, all underlying code provided by a copied version of the Xerces libs.

    Throughout user QName code we default to XML 1.0, as all XML 1.0 docs are valid XML 1.1's but the reverse is not true.

    Also note that we do not accept :, we are namespace compliant first and foremost

    The reason I'm simply copying to another package is that the utils.XMLChar functions aren't then forcing a JAXP or xerces version.

  15. object Versions

    Permalink

    Lazy val needed to trap impl, need pluggable (slf4j style) to swap out different logic, defaulting to sun jaxp ? For a future version, env property is enough for now.

Inherited from AnyRef

Inherited from Any

Ungrouped