Class

com.avsystem.commons.redis

RedisConnectionClient

Related Doc: package redis

Permalink

final class RedisConnectionClient extends RedisConnectionExecutor with Closeable

Redis client that uses a single, non-reconnectable connection. This is the most "raw" client implementation and the only one capable of directly executing connection state changing commands like AUTH, CLIENT SETNAME, WATCH, etc.

However, note that connection-setup commands like AUTH may also be specified in ConnectionConfig (which may also be specified for connections used by RedisNodeClient and RedisClusterClient).

This type of client should only be used when requiring capability of manual handling of connection state. If you simply need a single-connection, reconnectable client, use RedisNodeClient with connection pool size configured to 1.

Self Type
RedisConnectionClient
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RedisConnectionClient
  2. Closeable
  3. AutoCloseable
  4. RedisConnectionExecutor
  5. RedisNodeExecutor
  6. RedisOpExecutor
  7. RedisKeyedExecutor
  8. RedisExecutor
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RedisConnectionClient(address: NodeAddress = NodeAddress.Default, config: ConnectionConfig = ConnectionConfig())(implicit system: ActorSystem)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val address: NodeAddress

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def close(): Unit

    Permalink
    Definition Classes
    RedisConnectionClient → Closeable → AutoCloseable
  8. val config: ConnectionConfig

    Permalink
  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  11. def executeBatch[A](batch: RedisBatch[A], config: ExecutionConfig): commons.Future[A]

    Permalink

    Executes a RedisBatch.

    Executes a RedisBatch. Redis client implementations (e.g. RedisNodeClient) implement this method by actually sending the batch to Redis server and receving and decoding the response.

    WARNING: Even though the signature of this method indicates that any batch can be executed, every client type supports only a subset of commands. For example, you can't execute CLIENT SETNAME (clientSetname) on a RedisNodeClient because it's a connection state changing command and RedisNodeClient uses a pool of reusable connections. If you try to do this, you'll get a ForbiddenCommandException.

    Definition Classes
    RedisConnectionClientRedisExecutor
  12. def executeOp[A](op: RedisOp[A], executionConfig: ExecutionConfig): commons.Future[A]

    Permalink

    Executes a RedisOp, i.e.

    Executes a RedisOp, i.e. a sequence of RedisBatches where each batch may be created based on a result of previous batch and may use WATCH and UNWATCH commands for the purpose of performing transactions with optimistic locking. Redis client implementations (e.g. RedisNodeClient) implement execution of RedisOp by reserving a single connection so that entire RedisOp is executed on that single connection without any other concurrent commands executing in between. This is necessary for WATCH and UNWATCH commands to work as expected.

    Definition Classes
    RedisConnectionClientRedisOpExecutor
  13. def executionContext: commons.ExecutionContext

    Permalink
    Definition Classes
    RedisConnectionClientRedisExecutor
  14. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  17. def initialized: commons.Future[RedisConnectionClient.this.type]

    Permalink

    Waits until Redis connection is initialized.

    Waits until Redis connection is initialized. Note that you can call executeBatch and executeOp even if the connection is not yet initialized - requests will be internally queued and executed after initialization is complete.

  18. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Closeable

Inherited from AutoCloseable

Inherited from RedisConnectionExecutor

Inherited from RedisNodeExecutor

Inherited from RedisOpExecutor

Inherited from RedisKeyedExecutor

Inherited from RedisExecutor

Inherited from AnyRef

Inherited from Any

Ungrouped