Sha256: ae27e4dbf2d93b1adad0fdc6a21d42ef42647e3dab77ef5b61960e529d4daeb4

Contents?: true

Size: 770 Bytes

Versions: 4

Compression:

Stored size: 770 Bytes

Contents

module KashflowApi
    class Api        
        def initialize
            unless KashflowApi.config.username && KashflowApi.config.password
               raise "Username and Password required" 
            end
        end
        
        def self.methods
            @methods ||= generate_method_list
        end
        
        # Main Handler
        def method_missing(method, argument = nil)
            methods = KashflowApi.api_methods
            if methods.include?(method)
                KashflowApi::ApiCall.new(method, argument).result
            else
                super
            end
        end
        
        private
        
        def self.generate_method_list
            KashflowApi.client.client.wsdl.soap_actions
        end
    end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
kashflow_api-0.0.2 lib/kashflow_api/api.rb
kashflow_api-0.0.1 lib/kashflow_api/api.rb
kashflow_api-0.0.1rc1 lib/kashflow_api/api.rb
kashflow_api-0.0.1pre lib/kashflow_api/api.rb