[][src]Trait redis::ConnectionLike

pub trait ConnectionLike {
    pub fn req_packed_command(&mut self, cmd: &[u8]) -> RedisResult<Value>;
pub fn req_packed_commands(
        &mut self,
        cmd: &[u8],
        offset: usize,
        count: usize
    ) -> RedisResult<Vec<Value>>;
pub fn get_db(&self) -> i64;
pub fn check_connection(&mut self) -> bool;
pub fn is_open(&self) -> bool; }

Implements the "stateless" part of the connection interface that is used by the different objects in redis-rs. Primarily it obviously applies to Connection object but also some other objects implement the interface (for instance whole clients or certain redis results).

Generally clients and connections (as well as redis results of those) implement this trait. Actual connections provide more functionality which can be used to implement things like PubSub but they also can modify the intrinsic state of the TCP connection. This is not possible with ConnectionLike implementors because that functionality is not exposed.

Required methods

pub fn req_packed_command(&mut self, cmd: &[u8]) -> RedisResult<Value>[src]

Sends an already encoded (packed) command into the TCP socket and reads the single response from it.

pub fn req_packed_commands(
    &mut self,
    cmd: &[u8],
    offset: usize,
    count: usize
) -> RedisResult<Vec<Value>>
[src]

Sends multiple already encoded (packed) command into the TCP socket and reads count responses from it. This is used to implement pipelining.

pub fn get_db(&self) -> i64[src]

Returns the database this connection is bound to. Note that this information might be unreliable because it's initially cached and also might be incorrect if the connection like object is not actually connected.

pub fn check_connection(&mut self) -> bool[src]

Check that all connections it has are available (PING internally).

pub fn is_open(&self) -> bool[src]

Returns the connection status.

The connection is open until any read_response call recieved an invalid response from the server (most likely a closed or dropped connection, otherwise a Redis protocol error). When using unix sockets the connection is open until writing a command failed with a BrokenPipe error.

Loading content...

Implementors

impl ConnectionLike for ClusterConnection[src]

This is supported on crate feature cluster only.

impl ConnectionLike for Client[src]

impl ConnectionLike for Connection[src]

Loading content...