class Agris::Client

Public Class Methods

new( context = Agris.context, credentials = Agris.credentials, options = {}, dataset: ) click to toggle source

Initializes the client

# File lib/agris/client.rb, line 17
def initialize(
  context = Agris.context,
  credentials = Agris.credentials,
  options = {},
  dataset:
)
  @context = context
  @logger = options[:logger] || Agris.logger
  @log_level = options[:log_level] || Agris.log_level
  @request_type = options[:request_type] || Agris.request_type
  @proxy_url = options.fetch(:proxy_url, Agris.proxy_url)
  @dataset = dataset || Agris.context.default_dataset
  @request = @request_type.new(
    @context.base_url, credentials, @logger, @log_level, @proxy_url
  )
end

Public Instance Methods

log(message) click to toggle source
# File lib/agris/client.rb, line 34
def log(message)
  logger.info(message)
end

Protected Instance Methods

logger() click to toggle source
# File lib/agris/client.rb, line 40
def logger
  # We may want to replace the Logger with some kind of NullLogger?
  @logger ||= Logger.new(STDOUT)
end