Sha256: 2ec5af5ba1dce35ef55c53632554a51b117868df01bdcd2bc0ab9774062579bd

Contents?: true

Size: 927 Bytes

Versions: 9

Compression:

Stored size: 927 Bytes

Contents

require 'tictail/api/client'

module Tictail
  class << self
    def client
      @client ||= Tictail::Client.new()
    end

    #
    # Makes sure that the method missing is checked with the Tictail::Client instance
    #
    # @param method_name [String] the name of the method we want to run
    # @param include_private [Boolean] defines wether to check for private functions as well
    def respond_to_missing?(method_name, include_private=false)
      client.respond_to?(method_name, include_private)
    end

    private
    #
    # executes any function on the Tictail::Client instance
    #
    # @param args [*] any argument that we want to pass to the client function
    # @param block [Block] any block that is passed to the client function
    def method_missing(method_name, *args, &block)
      return super unless client.respond_to?(method_name)
      client.send(method_name, *args, &block)
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
tictail-api-0.1.3 lib/tictail/tictail.rb
tictail-api-0.1.2 lib/tictail/tictail.rb
tictail-api-0.1.1 lib/tictail/tictail.rb
tictail-api-0.0.6 lib/tictail/tictail.rb
tictail-api-0.0.5 lib/tictail/tictail.rb
tictail-api-0.0.4 lib/tictail/tictail.rb
tictail-api-0.0.3 lib/tictail/tictail.rb
tictail-api-0.0.2 lib/tictail/tictail.rb
tictail-api-0.0.1 lib/tictail/tictail.rb