Sha256: 28b6ef8a06a6d6accba2adb1bc2fab51ff5f7cb1a5b0f940fd6ee70dba7cf890

Contents?: true

Size: 1.18 KB

Versions: 3

Compression:

Stored size: 1.18 KB

Contents

# frozen_string_literal: true

require_relative 'siba_api/version'
require 'savon'

# Base module for SIBA API Wrapper
module SIBAApi
  class Error < StandardError; end

  LIBNAME = 'siba_api'

  LIBDIR = File.expand_path(LIBNAME.to_s, __dir__)

  class << self
    # Alias for SIBAApi::Client.new
    #
    # @param [Hash] options
    #   the configuration options
    #
    # @return [SEFApi::Client]
    #
    # @api public
    def new(options = {}, &block)
      Client.new(options, &block)
    end

    # Default middleware stack that uses default adapter as specified
    # by configuration setup
    #
    # @return [Proc]
    #
    # @api private
    def default_middleware(options = {})
      Middleware.default(options)
    end

    # Delegate to SIBAApi::Client
    #
    # @api private
    def method_missing(method_name, *args, &block)
      if new.respond_to?(method_name)
        new.send(method_name, *args, &block)
      else
        super.respond_to_missing?
      end
    end

    def respond_to_missing?(method_name, include_private = false)
      new.respond_to?(method_name, include_private) || super(method_name, include_private)
    end
  end
end

require_relative 'siba_api/client'

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
siba_api-0.1.4 lib/siba_api.rb
siba_api-0.1.3 lib/siba_api.rb
siba_api-0.1.2 lib/siba_api.rb