Class: ThriftClient

### Home Classes Methods

### In Files

- lib/thrift_client.rb
- lib/thrift_client/simple.rb

### Parent

AbstractThriftClient

### Namespace

- MODULE ThriftClient::Simple
- CLASS ThriftClient::NoServersAvailable

### Methods

- ::new

### Files

- CHANGELOG
- LICENSE
- README.rdoc

### Class/Module Index

Quicksearch

- ThriftClient
- ThriftClient::NoServersAvailable
- ThriftClient::Simple
- ThriftClient::Simple::ComplexType
- ThriftClient::Simple::ComplexType::Extends
- ThriftClient::Simple::ComplexType::Includes
- ThriftClient::Simple::Field
- ThriftClient::Simple::ThriftException
- ThriftClient::Simple::ThriftService
- ThriftClient::Simple::ThriftStruct
- ThriftClient::Simple::ThriftStruct::Extend
- ThriftClient::Simple::ThriftStruct::Include
- Thrift
- Thrift::BaseTransport
- Thrift::BufferedTransport
- Thrift::Client
- Thrift::EventMachineConnection
- Thrift::EventMachineTransport
- Thrift::FramedTransport
- Connection
- Connection::Base
- Connection::Factory
- Connection::HTTP
- Connection::Socket
- AbstractThriftClient
- AbstractThriftClient::Server

No matching classes.

# ThriftClient

### Public Class Methods

new(client_class, servers, options = {}) click to toggle source

Create a new ThriftClient instance. Accepts an internal Thrift client class (such as CassandraRb::Client), a list of servers with ports, and optional parameters.

Valid optional parameters are:

`:protocol` | Which Thrift protocol to use. Defaults to `Thrift::BinaryProtocol`.
`:protocol_extra_params` | An array of additional parameters to pass to the protocol initialization call. Defaults to `[]`.
`:transport` | Which Thrift transport to use. Defaults to `Thrift::Socket`.
`:transport_wrapper` | Which Thrift transport wrapper to use. Defaults to `Thrift::FramedTransport`.
`:exception_classes` | Which exceptions to catch and retry when sending a request. Defaults to `[IOError, Thrift::Exception, Thrift::ApplicationException, Thrift::TransportException, NoServersAvailable]`
`:exception_class_overrides` | For specifying children of classes in exception_classes for which you don't want to retry or reconnect.
`:raise` | Whether to reraise errors if no responsive servers are found. Defaults to `true`.
`:retries` | How many times to retry a request. Defaults to 0.
`:server_retry_period` | How many seconds to wait before trying to reconnect to a dead server. Defaults to `1`. Set to `nil` to disable.
`:server_max_requests` | How many requests to perform before moving on to the next server in the pool, regardless of error status. Defaults to `nil` (no limit).
`:timeout` | Specify the default timeout in seconds. Defaults to `1`.
`:connect_timeout` | Specify the connection timeout in seconds. Defaults to `0.1`.
`:timeout_overrides` | Specify additional timeouts on a per-method basis, in seconds. Only works with `Thrift::BufferedTransport`.
`:defaults` | Specify default values to return on a per-method basis, if `:raise` is set to false.

    # File lib/thrift_client.rb, line 30
    def initialize(client_class, servers, options = {})
      super
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.