scala.xml.persistent

CachedFileStorage

class CachedFileStorage extends Thread with Logged

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.

attributes: abstract
known subclasses: SetStorage

Inherits

  1. Logged
  2. Thread
  3. Runnable
  4. AnyRef
  5. Any

Value Members

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

    adds a node, setting this

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

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

    removes a tree, setting this

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

    attributes: abstract
  3. def countStackFrames(): Int

  4. def destroy(): Unit

  5. def equals(arg0: Any): Boolean

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    The default implementations of this method is an equivalence relation:

    • It is reflexive: for any instance x of type Any, x.equals(x) should return true.
    • It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true.
    • It is transitive: for any instances x, y, and z of type AnyRef if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

    If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is often necessary to override hashCode to ensure that objects that are "equal" (o1.equals(o2) returns true) hash to the same Int (o1.hashCode.equals(o2.hashCode)).

    arg0

    the object to compare against this object for equality.

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    definition classes: AnyRef ⇐ Any
  6. def flush: Unit

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

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

  7. def getContextClassLoader(): ClassLoader

  8. def getId(): Long

  9. def getStackTrace(): Array[StackTraceElement]

  10. def getState(): State

  11. def getUncaughtExceptionHandler(): UncaughtExceptionHandler

  12. def hashCode(): Int

    Returns a hash code value for the object

    Returns a hash code value for the object.

    The default hashing algorithm is platform dependent.

    Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.

    definition classes: AnyRef ⇐ Any
  13. def interrupt(): Unit

  14. def isInterrupted(): Boolean

  15. def log(msg: String): Unit

    This method should log the message given as argument somewhere as a side-effect

    This method should log the message given as argument somewhere as a side-effect.

    msg

    ...

    definition classes: Logged
  16. def nodes: Iterator[Node]

    returns an iterator over the nodes in this storage

    returns an iterator over the nodes in this storage

    attributes: abstract
  17. def run(): Unit

    run method of the thread

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

  18. def setContextClassLoader(arg0: ClassLoader): Unit

  19. def setUncaughtExceptionHandler(arg0: UncaughtExceptionHandler): Unit

  20. def start(): Unit

  21. def toString(): String

    Returns a string representation of the object

    Returns a string representation of the object.

    The default representation is platform dependent.

    definition classes: Thread ⇐ AnyRef ⇐ Any

Instance constructors

  1. new CachedFileStorage(file1: File)

  2. new CachedFileStorage(arg0: ThreadGroup, arg1: Runnable, arg2: String, arg3: Long)

  3. new CachedFileStorage(arg0: ThreadGroup, arg1: Runnable, arg2: String)

  4. new CachedFileStorage(arg0: Runnable, arg1: String)

  5. new CachedFileStorage(arg0: ThreadGroup, arg1: String)

  6. new CachedFileStorage(arg0: String)

  7. new CachedFileStorage(arg0: ThreadGroup, arg1: Runnable)

  8. new CachedFileStorage(arg0: Runnable)

  9. new CachedFileStorage()