Module: NbApiClient

Defined in:
lib/nb_api_client.rb,
lib/nb_api_client/request.rb,
lib/nb_api_client/version.rb,
lib/nb_api_client/url_builder.rb,
lib/nb_api_client/rate_limiter.rb,
lib/nb_api_client/configuration.rb

Defined Under Namespace

Classes: Configuration, RateLimiter, Request, UrlBuilder

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.configurationObject



24
25
26
# File 'lib/nb_api_client.rb', line 24

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



28
29
30
# File 'lib/nb_api_client.rb', line 28

def configure
  yield(configuration)
end

.connection_poolObject

Lazily built so it always reflects the redis_url/pool_size in effect the first time a request needs it (i.e. after any NbApiClient.configure block has run).



35
36
37
38
39
# File 'lib/nb_api_client.rb', line 35

def connection_pool
  @connection_pool ||= ConnectionPool.new(size: configuration.rate_limit_pool_size, timeout: 3) {
    Redis.new(url: configuration.redis_url)
  }
end