Packages

t

lightdb

LightDB

trait LightDB extends Initializable with Disposable with FeatureSupport[DBFeatureKey]

The database to be implemented. stores *may* be used without a LightDB instance, but with drastically diminished functionality. It is always ideal for stores to be associated with a database.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LightDB
  2. FeatureSupport
  3. Disposable
  4. Initializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. type S[Doc <: Document[Doc], Model <: DocumentModel[Doc]] = SM.S[Doc, Model]
  2. abstract type SM <: StoreManager

Abstract Value Members

  1. abstract def directory: Option[Path]

    The base directory for this database.

    The base directory for this database. If None, the database is expected to operate entirely in memory.

  2. abstract val storeManager: SM

    Default StoreManager to use for stores that do not specify a Store.

  3. abstract def upgrades: List[DatabaseUpgrade]

    List of upgrades that should be applied at the start of this database.

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. lazy val appliedUpgrades: StoredValue[Set[String]]
    Attributes
    protected
  5. def apply[T](key: DBFeatureKey[T]): T
    Definition Classes
    FeatureSupport
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. lazy val backingStore: Store[KeyValue, KeyValue.type]

    Backing key/value store used for persistent internal settings, StoredValues, and general key/value storage.

  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  9. lazy val databaseInitialized: StoredValue[Boolean]
    Attributes
    protected
  10. lazy val dispose: Task[Unit]

    Calls doDispose() exactly one time.

    Calls doDispose() exactly one time. Safe to call multiple times.

    Definition Classes
    Disposable
  11. def disposed: Boolean

    True if this database has been disposed.

  12. def doDispose(): Task[Unit]
    Attributes
    protected
    Definition Classes
    LightDBDisposable
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. def featureMap: Map[DBFeatureKey[Any], Any]
    Definition Classes
    FeatureSupport
  16. def features: Iterable[Any]
    Definition Classes
    FeatureSupport
  17. def get[T](key: DBFeatureKey[T]): Option[T]
    Definition Classes
    FeatureSupport
  18. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  19. def getOrCreate[T](key: DBFeatureKey[T], create: => T): T
    Definition Classes
    FeatureSupport
  20. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  21. lazy val init: Task[Unit]

    Calls initialize() exactly one time.

    Calls initialize() exactly one time. Safe to call multiple times.

    Definition Classes
    Initializable
  22. def initialize(): Task[Unit]

    Define initialization functionality here, but never call directly.

    Define initialization functionality here, but never call directly.

    Attributes
    protected
    Definition Classes
    LightDBInitializable
  23. def isDisposes: Boolean
    Definition Classes
    Disposable
  24. def isInitialized: Boolean
    Definition Classes
    Initializable
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def multiStore[Key, Doc <: Document[Doc], Model <: DocumentModel[Doc]](model: Model, nameFromKey: (Key) => String = (k: Key) => k.toString): MultiStore[Key, Doc, Model, SM]
  27. def multiStoreCustom[Key, Doc <: Document[Doc], Model <: DocumentModel[Doc], SM <: StoreManager](model: Model, storeManager: SM, nameFromKey: (Key) => String = (k: Key) => k.toString): MultiStore[Key, Doc, Model, SM]
  28. def name: String

    Identifiable name for this database.

    Identifiable name for this database. Defaults to using the class name.

  29. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  30. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  31. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  32. def optimize(stores: List[Store[_, _]] = stores): Task[Unit]

    Offers each store the ability to optimize the store.

  33. def put[T](key: DBFeatureKey[T], value: T): Unit
    Definition Classes
    FeatureSupport
  34. def reIndex(stores: List[Store[_, _]] = stores): Task[Int]

    Offers each store the ability to re-index data if supported.

    Offers each store the ability to re-index data if supported. Only stores that separate storage and indexing (like SplitStore) will do any work. Returns the number of stores that were re-indexed. Provide the list of the stores to re-index or all stores will be invoked.

  35. def reverseStore[E <: EdgeDocument[E, F, T], F <: Document[F], T <: Document[T], M <: DocumentModel[E], RM <: EdgeModel[ReverseEdgeDocument[E, F, T], T, F]](model: RM, forward: S[E, M]): S[ReverseEdgeDocument[E, F, T], RM]
  36. def store[Doc <: Document[Doc], Model <: DocumentModel[Doc]](model: Model, name: Option[String] = None): SM.S[Doc, Model]

    Create a new store and associate it with this database.

    Create a new store and associate it with this database. It is preferable that all stores be created before the database is initialized, but stores that are added after init will automatically be initialized during this method call.

    model

    the model to use for this store

    name

    the store's name (defaults to None meaning it will be generated based on the model name)

  37. def storeCustom[Doc <: Document[Doc], Model <: DocumentModel[Doc], SM <: StoreManager](model: Model, storeManager: SM, name: Option[String] = None): storeCustom.SM.S[Doc, Model]

    Create a new store and associate it with this database.

    Create a new store and associate it with this database. It is preferable that all stores be created before the database is initialized, but stores that are added after init will automatically be initialized during this method call.

    model

    the model to use for this store

    storeManager

    specify the StoreManager

    name

    the store's name (defaults to None meaning it will be generated based on the model name)

  38. def stores: List[Store[_, _ <: DocumentModel[_]]]

    All stores registered with this database

  39. def storesByNames(storeNames: String*): List[Store[_, _]]

    Returns a list of matching store names based on the provided names

  40. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  41. def toString(): String
    Definition Classes
    AnyRef → Any
  42. lazy val transactions: TransactionManager
  43. def truncate(): Task[Unit]
  44. def truncateOnInit: Boolean

    Automatically truncates all stores in the database during initialization if this is set to true.

    Automatically truncates all stores in the database during initialization if this is set to true. Defaults to false.

    Attributes
    protected
  45. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  46. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  47. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  48. object stored

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from Disposable

Inherited from Initializable

Inherited from AnyRef

Inherited from Any

Ungrouped