Sha256: ee98ac0bdfaa4d52d145a2a51a2d1f8308b8011028a5e578249ee2564d58177f
Contents?: true
Size: 1.31 KB
Versions: 3
Compression:
Stored size: 1.31 KB
Contents
# frozen_string_literal: true require_relative '../truemail/client/version' require_relative '../truemail/client/configuration' require_relative '../truemail/client/http' module Truemail module Client INCOMPLETE_CONFIG = 'required args not passed' NOT_CONFIGURED = 'use Truemail::Client.configure before' class << self def configuration(&block) @configuration ||= begin return unless block_given? configuration = Truemail::Client::Configuration.new(&block) raise_unless(configuration.complete?, Truemail::Client::INCOMPLETE_CONFIG) configuration end end def configure(&block) configuration(&block) end def reset_configuration! @configuration = nil end def validate(email) raise_unless(Truemail::Client.configuration, Truemail::Client::NOT_CONFIGURED) Truemail::Client::Http.new(email: email).run end def server_healthy? raise_unless(Truemail::Client.configuration, Truemail::Client::NOT_CONFIGURED) Truemail::Client::Http.new(Truemail::Client::Http::HEALTHCHECK_ENDPOINT).run.empty? end private def raise_unless(condition, message) raise Truemail::Client::Configuration::Error, message unless condition end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
truemail-client-0.3.0 | lib/truemail/client.rb |
truemail-client-0.2.1 | lib/truemail/client.rb |
truemail-client-0.2.0 | lib/truemail/client.rb |