Sha256: d884d7320d5c3d08987b66a83c9b1be7a4b9784c5a92ffb8cc5a7248f7fb5bb6

Contents?: true

Size: 1.29 KB

Versions: 1

Compression:

Stored size: 1.29 KB

Contents

# frozen_string_literal: true

require 'net/http'
require 'net/https'
require 'cgi'
require 'openssl'
require 'base64'
require 'forwardable'
require 'time'
require 'json'

require 'gupshup-rb/version' unless defined?(Gupshup::VERSION)
# require 'rack/gupshup_webhook_authentication' if defined?(Rack) && defined?(Rack::MediaType)

# require 'gupshup-rb/util'
require 'gupshup-rb/util/configuration'
require 'gupshup-rb/security/request_validator'

Dir[File.join(__dir__, 'gupshup-rb/framework/*.rb')].sort.each do |file|
  require file
end

module Gupshup
  extend SingleForwardable

  autoload :JWT, File.join(__dir__, 'gupshup-rb', 'jwt', 'jwt.rb')
  autoload :TwiML, File.join(__dir__, 'gupshup-rb', 'twiml', 'twiml.rb')
  autoload :HTTP, File.join(__dir__, 'gupshup-rb', 'http.rb')
  autoload :REST, File.join(__dir__, 'gupshup-rb', 'rest.rb')

  def_delegators :configuration, :src_name, :api_key, :http_client, :region, :edge, :logger

  ##
  # Pre-configure with account SID and auth token so that you don't need to
  # pass them to various initializers each time.
  def self.configure(&block)
    yield configuration
  end

  ##
  # Returns an existing or instantiates a new configuration object.
  def self.configuration
    @configuration ||= Util::Configuration.new
  end

  private_class_method :configuration
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gupshup-rb-0.1.8.2 lib/gupshup-rb.rb