Sha256: 306bd4bf07973380a66082c1a06a4c8e5c2df48d0175dfe2be68df11ec7b569b

Contents?: true

Size: 746 Bytes

Versions: 10

Compression:

Stored size: 746 Bytes

Contents

module Capricorn
  class Server
    # the proxy object hides all the server internals from the clients.
    class Proxy
      
      def initialize(server)
        @server = server
      end
      
      def self.allow(*methods)
        methods.each do |method|
          module_eval %{ def #{method}(*args,&block) ; @server.#{method}(*args,&block) ; end }
        end
      end
      
      allow :stop_server, :restart_server, :reload_server, :server_version, :update_server, :install_satellite, :uninstall_satellite, :install_engine, :update_engine, :uninstall_engine, :satellites, :queued_jobs, :cancel_job, :immediate_job, :make_development_satellite
      
      class << self
        undef_method :allow
      end
      
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
simonmenke-capricorn-0.2.03 lib/capricorn/server/proxy.rb
simonmenke-capricorn-0.2.07 lib/capricorn/server/proxy.rb
capricorn-0.2.07 lib/capricorn/server/proxy.rb
capricorn-0.2.06 lib/capricorn/server/proxy.rb
capricorn-0.2.05 lib/capricorn/server/proxy.rb
capricorn-0.2.04 lib/capricorn/server/proxy.rb
capricorn-0.2.03 lib/capricorn/server/proxy.rb
capricorn-0.2.02 lib/capricorn/server/proxy.rb
capricorn-0.2.01 lib/capricorn/server/proxy.rb
capricorn-0.2.00 lib/capricorn/server/proxy.rb