com.twitter

storehaus

package storehaus

Visibility
  1. Public
  2. All

Type Members

  1. abstract class AbstractReadableStore[-K, +V] extends ReadableStore[K, V]

    Abstract extension of the defined trait to minimize trait bloat.

  2. class CacheStore[K, V] extends Store[K, V]

    Generates a Store backed by a MutableCache.

  3. class CachedReadableStore[K, V] extends ReadableStore[K, V]

  4. class ComposedStore[-K, V, V2, V3 >: V] extends AbstractReadableStore[K, V2]

    A store that is made from looking up values in the first store, then using that as the key in the second When used with ConvertedStore you can do some powerful sequential processing of stores

  5. class ConcurrentHashMapStore[K, V] extends JMapStore[K, V]

    A simple JMapStore whose underlying store is a Java ConcurrentHashMap useful if you are going to be modifying a store from many threads, something you in general cannot do unless the docs specifically say that a store is safe for that.

  6. sealed trait ConsistencyLevel extends AnyRef

    N - total replicas One - 1 successful operation is sufficient to consider the operation as complete Quorum - N/2 + 1 successful operations are sufficient to consider the operation as complete All - N successful operations are required

  7. class ConvertedReadableStore[K1, -K2, V1, +V2] extends AbstractReadableStore[K2, V2]

    Convert the keys/values of a store.

  8. class ConvertedStore[K1, -K2, V1, V2] extends ConvertedReadableStore[K1, K2, V1, V2] with Store[K2, V2]

    Use an injection on V2,V1 to convert a store of values V2.

  9. class EnrichedReadableStore[-K, +V] extends AnyRef

    Enrichment on the ReadableStore trait.

  10. class EnrichedStore[-K, V] extends AnyRef

    Enrichment on the Store[K, V] trait.

  11. trait FutureCollector[-T] extends Serializable

    A type to represent how Seq of futures are collected into a future of Seq[T]

  12. class IndexedSeqReadableStore[+V] extends ReadableStore[Int, V]

    Simple wrapper on IndexedSeq[V] to make it accessible as a ReadableStore

  13. class JMapStore[K, V] extends Store[K, V]

    A Store instance which is backed by a Java Map (by default JHashMap) Obviously, there is no optimization of the multiGet/multiPut methods on this store and these are just implemented using the default implementation from Store.

  14. class MapStore[K, +V] extends ReadableStore[K, V]

    MapStore is a ReadableStore backed by a scala immutable Map.

  15. class MissingShardException[K] extends RuntimeException

    This is only thrown when a shard is expected but somehow absent.

  16. class MissingValueException[K] extends RuntimeException

    This is only thrown when a value is expected but somehow absent.

  17. class ReadFailedException[K] extends RuntimeException

    Thrown when a read operation fails due to unsatisfied consistency level

  18. trait ReadableStore[-K, +V] extends Closeable

    Main trait to represent asynchronous readable stores Here you see the tri-state logic:

  19. class ReplicatedReadableStore[-K, +V] extends AbstractReadableStore[K, V]

    Replicates reads to a seq of stores and returns the first successful value (empty or not)

  20. class ReplicatedStore[-K, V] extends ReplicatedReadableStore[K, V] with Store[K, V]

    Replicates writes to all stores, and takes the first successful read.

  21. class RetryingReadableStore[-K, +V] extends ReadableStore[K, V]

    Use the ReadableStore abstraction when each read from the backend store involves a time-taking task.

  22. class RetryingStore[-K, V] extends RetryingReadableStore[K, V] with Store[K, V]

    Delegate put to the underlying store and allow retriable semantics for get.

  23. class SearchingReadableStore[-K, +V] extends ReadableStore[K, V]

    Returns a ReadableStore that attempts reads out of the supplied Seq[ReadableStore] in order and returns the first non-exceptional value that satisfies the supplied predicate.

  24. class ShardedReadableStore[-K1, -K2, +V, +S <: ReadableStore[K2, V]] extends ReadableStore[(K1, K2), V]

    combines a mapping of ReadableStores into one ReadableStore that internally routes Note: if K1 is absent from the routes, you will always get Future.

  25. class ShardedStore[-K1, -K2, V, +S <: Store[K2, V]] extends ShardedReadableStore[K1, K2, V, S] with Store[(K1, K2), V]

    combines a mapping of Stores into one Store that internally routes Note: if a K1 is absent from the routes, any put will give a

  26. trait Store[-K, V] extends ReadableStore[K, V]

    Main trait for mutable stores.

  27. class TunableReplicatedReadableStore[-K, +V] extends AbstractReadableStore[K, V]

    Replicates reads to a seq of stores and returns the value based on picked read consistency.

  28. class TunableReplicatedStore[-K, V] extends TunableReplicatedReadableStore[K, V] with Store[K, V]

    Replicates writes to a seq of stores, and returns after picked write consistency is satisfied.

  29. class UnpivotedReadableStore[-K, OuterK, InnerK, +V] extends ReadableStore[K, V]

    ReadableStore enrichment which presents a ReadableStore[K, V] over top of a packed ReadableStore[OuterK, Map[InnerK, V]].

  30. class UnpivotedStore[-K, OuterK, InnerK, V] extends UnpivotedReadableStore[K, OuterK, InnerK, V] with Store[K, V]

    Store enrichment which presents a Store[K, V] over top of a packed Store[OuterK, Map[InnerK, V]].

  31. trait WithPutTtl[K, V, S <: Store[K, V]] extends AnyRef

    Trait for building mutable store with TTL.

  32. class WriteFailedException[K] extends RuntimeException

    Thrown when a write operation fails due to unsatisfied consistency level

Value Members

  1. object CollectionOps extends AnyRef

    Helpful transformations on maps and collections.

  2. object ConsistencyLevel extends AnyRef

  3. object EmptyReadableStore extends AbstractReadableStore[Any, Nothing]

    Concrete empty store implementation.

  4. object FutureCollector extends Serializable

    Some factory methods and instances of FutureCollector that are used in storehaus

  5. object FutureOps extends AnyRef

    Some combinators on Futures or Seqs of Futures that are used internally These should arguably exist in util-core.

  6. object PivotOps extends AnyRef

    Methods used in the various unpivot stores.

  7. object ReadableStore extends AnyRef

    Holds various factory and transformation functions for ReadableStore instances

  8. object ShardedReadableStore extends AnyRef

    Factory methods to create ShardedReadableStore instances

  9. object ShardedStore extends AnyRef

    Factory methods to create ShardedStore instances

  10. object Store extends AnyRef

    Factory methods and some combinators on Stores

  11. object TunableReplicatedStore extends AnyRef

    Factory method to create TunableReplicatedStore instances

  12. package algebra

  13. package asynchbase

  14. package cache

  15. package dynamodb

  16. package hbase

  17. package memcache

  18. package mysql

  19. package redis

  20. package testing