Packages

  • package root
    Definition Classes
    root
  • package scala
    Definition Classes
    root
  • package xml

    This library provides support for the XML literal syntax in Scala programs.

    This library provides support for the XML literal syntax in Scala programs.

    val planets: scala.xml.Elem = <planets>
      <planet id="earth">
        <title>Earth</title>
        <mass unit="kg">5.9742e24</mass>
        <radius unit="m">6378.14e3</radius>
      </planet>
      <planet id="mars">
        <title>Mars</title>
        <mass unit="kg">0.64191e24</mass>
        <radius unit="m">3397.0e3</radius>
      </planet>
    </planets>

    Additionally, you can mix Scala expressions in your XML elements by using the curly brace notation:

    val sunMass = 1.99e30
    val sunRadius = 6.96e8
    val star = <star>
      <title>Sun</title>
      <mass unit="kg">{ sunMass }</mass>
      <radius unit="m">{ sunRadius }</radius>
      <surface unit="m²">{ 4 * Math.PI * Math.pow(sunRadius, 2) }</surface>
      <volume unit="m³">{ 4/3 * Math.PI * Math.pow(sunRadius, 3) }</volume>
    </star>

    An XML element, for example <star/> and <planet/>, is represented in this library as a case class, scala.xml.Elem.

    The sub-elements of XML values share a common base class, scala.xml.Node.

    However, the non-element declarations found in XML files share a different common base class, scala.xml.dtd.Decl. Additionally, document type declarations are represented by a different trait, scala.xml.dtd.DTD.

    For reading and writing XML data to and from files, see scala.xml.XML. The default parser of XML data is the Xerces parser and is provided in Java by javax.xml.parsers.SAXParser.

    A less greedy XML reader can return data as a sequential collection of events, see scala.xml.pull.XMLEventReader.

    For more control of the input, use the parser written in Scala that is provided, scala.xml.parsing.ConstructingParser.

    For working with XHTML input, use scala.xml.parsing.XhtmlParser.

    For more control of the output, use the scala.xml.PrettyPrinter.

    Utility methods for working with XML data are provided in scala.xml.Utility.

    XML values in Scala are immutable, but you can traverse and transform XML data with a scala.xml.transform.RuleTransformer.

    Definition Classes
    scala
  • package persistent
    Definition Classes
    xml
  • CachedFileStorage
  • Index
  • SetStorage
c

scala.xml.persistent

CachedFileStorage

abstract class CachedFileStorage extends Thread

Mutable storage of immutable xml trees. Everything is kept in memory, with a thread periodically checking for changes and writing to file.

To ensure atomicity, two files are used, filename1 and '$'+filename1. The implementation switches between the two, deleting the older one after a complete dump of the database has been written.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CachedFileStorage
  2. Thread
  3. Runnable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CachedFileStorage(file1: File)

Abstract Value Members

  1. abstract def +=(e: Node): Unit

    adds a node, setting this.dirty to true as a side effect

  2. abstract def -=(e: Node): Unit

    removes a tree, setting this.dirty to true as a side effect

  3. abstract def nodes: collection.Iterator[Node]

    returns an iterator over the nodes in this storage

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. final def checkAccess(): Unit
    Definition Classes
    Thread
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    Thread → AnyRef
    Annotations
    @throws( ... )
  7. var dirty: Boolean

    this storage modified since last modification check

    this storage modified since last modification check

    Attributes
    protected
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def flush(): Unit

    Force writing of contents to the file, even if there has not been any update.

  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def getContextClassLoader(): ClassLoader
    Definition Classes
    Thread
    Annotations
    @CallerSensitive()
  14. def getId(): Long
    Definition Classes
    Thread
  15. final def getName(): String
    Definition Classes
    Thread
  16. final def getPriority(): Int
    Definition Classes
    Thread
  17. def getStackTrace(): Array[StackTraceElement]
    Definition Classes
    Thread
  18. def getState(): State
    Definition Classes
    Thread
  19. final def getThreadGroup(): ThreadGroup
    Definition Classes
    Thread
  20. def getUncaughtExceptionHandler(): UncaughtExceptionHandler
    Definition Classes
    Thread
  21. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. def initialNodes: collection.Iterator[Node]

    finds and loads the storage file.

    finds and loads the storage file. subclasses should call this method prior to any other, but only once, to obtain the initial sequence of nodes.

    Attributes
    protected
  23. def interrupt(): Unit
    Definition Classes
    Thread
  24. val interval: Int

    period between modification checks, in milliseconds

    period between modification checks, in milliseconds

    Attributes
    protected
  25. final def isAlive(): Boolean
    Definition Classes
    Thread
    Annotations
    @native()
  26. final def isDaemon(): Boolean
    Definition Classes
    Thread
  27. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  28. def isInterrupted(): Boolean
    Definition Classes
    Thread
  29. final def join(): Unit
    Definition Classes
    Thread
    Annotations
    @throws( ... )
  30. final def join(arg0: Long, arg1: Int): Unit
    Definition Classes
    Thread
    Annotations
    @throws( ... )
  31. final def join(arg0: Long): Unit
    Definition Classes
    Thread
    Annotations
    @throws( ... )
  32. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  33. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  34. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  35. def run(): Unit

    Run method of the thread.

    Run method of the thread. remember to use start() to start a thread, not run.

    Definition Classes
    CachedFileStorage → Thread → Runnable
  36. def setContextClassLoader(arg0: ClassLoader): Unit
    Definition Classes
    Thread
  37. final def setDaemon(arg0: Boolean): Unit
    Definition Classes
    Thread
  38. final def setName(arg0: String): Unit
    Definition Classes
    Thread
  39. final def setPriority(arg0: Int): Unit
    Definition Classes
    Thread
  40. def setUncaughtExceptionHandler(arg0: UncaughtExceptionHandler): Unit
    Definition Classes
    Thread
  41. def start(): Unit
    Definition Classes
    Thread
  42. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  43. def toString(): String
    Definition Classes
    Thread → AnyRef → Any
  44. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Deprecated Value Members

  1. def countStackFrames(): Int
    Definition Classes
    Thread
    Annotations
    @native() @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  2. def destroy(): Unit
    Definition Classes
    Thread
    Annotations
    @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  3. def log(msg: String): Unit
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11) This method and its usages will be removed. Use a debugger to debug code.

  4. final def resume(): Unit
    Definition Classes
    Thread
    Annotations
    @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  5. final def stop(arg0: java.lang.Throwable): Unit
    Definition Classes
    Thread
    Annotations
    @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  6. final def stop(): Unit
    Definition Classes
    Thread
    Annotations
    @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  7. final def suspend(): Unit
    Definition Classes
    Thread
    Annotations
    @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Thread

Inherited from Runnable

Inherited from AnyRef

Inherited from Any

Ungrouped