Sha256: 54300d3611caf7a06125b3935a042431ecc4109f7a4a0edc5c7638ca49b17ccc

Contents?: true

Size: 869 Bytes

Versions: 4

Compression:

Stored size: 869 Bytes

Contents

require 'rapuncel'

module Kangaroo
  module Util
    class Proxy < Rapuncel::Proxy
      autoload :Common, 'kangaroo/util/proxy/common'
      autoload :Db, 'kangaroo/util/proxy/db'
      autoload :Superadmin, 'kangaroo/util/proxy/superadmin'
      autoload :Object, 'kangaroo/util/proxy/object'
      autoload :Workflow, 'kangaroo/util/proxy/workflow'
      autoload :Report, 'kangaroo/util/proxy/report'
      autoload :Wizard, 'kangaroo/util/proxy/wizard'

      def __initialize__ client, *curry_args
        super client, nil
        @curry_args = curry_args
      end

      def call! name, *args
        super name, *__curry__(*args)
      end

      def self.new *args
        allocate.__tap__ do |proxy|
          proxy.__initialize__ *args
        end
      end

      protected
      def __curry__ *args
        @curry_args + args
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
kangaroo-0.0.3 lib/kangaroo/util/proxy.rb
kangaroo-0.0.2 lib/kangaroo/util/proxy.rb
kangaroo-0.0.1.pre2 lib/kangaroo/util/proxy.rb
kangaroo-0.0.1.pre lib/kangaroo/util/proxy.rb