trait DurableCacheMapImpl[S <: Sys[S], K] extends Durable[S, K, DurablePersistentMap[S, K]] with CacheMapImpl[S, K, DurablePersistentMap[S, K]]
- Alphabetic
- By Inheritance
- DurableCacheMapImpl
- CacheMapImpl
- Durable
- CacheMap
- Cache
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def store: DurablePersistentMap[S, K]
The persistent map to which the data is flushed or from which it is retrieved when not residing in cache.
The persistent map to which the data is flushed or from which it is retrieved when not residing in cache.
- Definition Classes
- CacheMap
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def cacheContains(key: K, path: Access[S])(implicit tx: S.Tx): Boolean
- Definition Classes
- CacheMapImpl → CacheMap
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def flushCache(term: Long)(implicit tx: S.Tx): Unit
This method should be invoked from the implementations flush hook after it has determined the terminal version at which the entries in the cache are written to the persistent store.
This method should be invoked from the implementations flush hook after it has determined the terminal version at which the entries in the cache are written to the persistent store. If this method is not called, the cache will just vanish and not be written out to the
persistentstore.- term
the new version to append to the paths in the cache (using the
PathLike'saddTermmethod)- tx
the current transaction (should be in commit or right-before commit phase)
- Definition Classes
- CacheMapImpl → CacheMap → Cache
- final def getCacheNonTxn[A](key: K, path: Access[S])(implicit tx: S.Tx, serializer: ImmutableSerializer[A]): Option[A]
Retrieves a value from the cache _or_ the underlying store (if not found in the cache), where a non-transactional serializer exists.
Retrieves a value from the cache _or_ the underlying store (if not found in the cache), where a non-transactional serializer exists.
If no value is found for the current path, this will try to read the most recent entry along the path.
- A
the type of value stored
- key
key at which the entry is stored
- path
access path for the read
- tx
the current transaction
- serializer
the serializer to use for the value
- returns
the most recent value found, or
Noneif a value cannot be found for the given path, neither in the cache nor in the persistent store.
- Definition Classes
- DurableCacheMapImpl → Durable
- final def getCacheOnly[A](key: K, path: Access[S])(implicit tx: S.Tx): Option[A]
- Definition Classes
- CacheMapImpl → CacheMap
- final def getCacheTxn[A](key: K, path: Access[S])(implicit tx: S.Tx, serializer: Serializer[S.Tx, Access[S], A]): Option[A]
Retrieves a value from the cache _or_ the underlying store (if not found in the cache), where 'only' a transactional serializer exists.
Retrieves a value from the cache _or_ the underlying store (if not found in the cache), where 'only' a transactional serializer exists.
If no value is found for the current path, this will try to read the most recent entry along the path.
- A
the type of value stored
- key
key at which the entry is stored
- path
access path for the read
- tx
the current transaction
- serializer
the serializer to use for the value
- returns
the most recent value found, or
Noneif a value cannot be found for the given path, neither in the cache nor in the persistent store.
- Definition Classes
- DurableCacheMapImpl → Durable
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def putCacheNonTxn[A](key: K, path: Access[S], value: A)(implicit tx: S.Tx, serializer: ImmutableSerializer[A]): Unit
Stores an entry in the cache for which a non-transactional serializer exists.
Stores an entry in the cache for which a non-transactional serializer exists.
Note that the caller is responsible for monitoring this call, and if necessary installing a before-commit handler which will call into the abstract method
flushCache().- A
the type of value stored
- key
key at which the entry will be stored
- path
write path when persisting
- value
value to be stored (entry)
- tx
the current transaction
- serializer
the serializer to use for the value
- Definition Classes
- DurableCacheMapImpl → Durable
- final def putCacheOnly(key: K, e: Entry[S, K, DurablePersistentMap[S, K]])(implicit tx: S.Tx): Unit
- Attributes
- protected
- Definition Classes
- CacheMapImpl
- final def putCacheTxn[A](key: K, path: Access[S], value: A)(implicit tx: S.Tx, serializer: Serializer[S.Tx, Access[S], A]): Unit
Stores an entry in the cache for which 'only' a transactional serializer exists.
Stores an entry in the cache for which 'only' a transactional serializer exists.
Note that the caller is responsible for monitoring this call, and if necessary installing a before-commit handler which will call into the abstract method
flushCache().- A
the type of value stored
- key
key at which the entry will be stored
- path
write path when persisting
- value
value to be stored (entry)
- tx
the current transaction
- serializer
the serializer to use for the value
- Definition Classes
- DurableCacheMapImpl → Durable
- final def removeCache(key: K, path: Access[S])(implicit tx: S.Tx): Boolean
- Definition Classes
- DurableCacheMapImpl → CacheMap
- final def removeCacheOnly(key: K, path: Access[S])(implicit tx: S.Tx): Boolean
Removes an entry from the cache, and only the cache.
Removes an entry from the cache, and only the cache. This will not affect any values also persisted to
persistent! If the cache does not contain an entry at the givenkey, this method simply returns.- key
key at which the entry is stored
- tx
the current transaction
- Definition Classes
- CacheMapImpl → CacheMap
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()