Module: MostOts

Defined in:
lib/most_ots.rb,
lib/most_ots/logging.rb,
lib/most_ots/service.rb,
lib/most_ots/version.rb,
lib/most_ots/models/base.rb,
lib/most_ots/errors/error.rb,
lib/most_ots/models/response.rb,
lib/most_ots/errors/client_error.rb,
lib/most_ots/errors/server_error.rb,
lib/most_ots/errors/authentication_error.rb

Defined Under Namespace

Modules: Logging Classes: AuthenticationError, Base, ClientError, Error, Response, ServerError, Service

Constant Summary collapse

ROOT =
File.expand_path('..', File.dirname(__dir__))
VERSION =
'0.1.3'.freeze

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggerLogger



11
12
13
# File 'lib/most_ots.rb', line 11

def self.logger
  @logger ||= rails_logger || default_logger
end

Instance Attribute Details

#loggerLogger



11
12
13
# File 'lib/most_ots.rb', line 11

def self.logger
  @logger ||= rails_logger || default_logger
end

Class Method Details

.default_loggerLogger

Create and configure a logger



21
22
23
24
25
# File 'lib/most_ots.rb', line 21

def self.default_logger
  logger = Logger.new($stdout)
  logger.level = Logger::WARN
  logger
end

.rails_loggerLogger

Check to see if client is being used in a Rails environment and get the logger if present. Setting the ENV variable ‘MOST_OTS’ to false will force the client to use its own logger.



32
33
34
35
36
37
38
39
# File 'lib/most_ots.rb', line 32

def self.rails_logger
  if ENV.fetch('MOST_OTS', 'true') == 'true' &&
     defined?(::Rails) &&
     ::Rails.respond_to?(:logger) &&
     !::Rails.logger.nil?
    ::Rails.logger
  end
end