Class: RubyProxy::Proxy

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_proxy/proxy.rb

Class Method Summary collapse

Class Method Details

.add_load_path(path) ⇒ Object



32
33
34
# File 'lib/ruby_proxy/proxy.rb', line 32

def self.add_load_path(path)
  ProxyGlobalSet.add("$LOAD_PATH",path)
end

.proxy(klass_name, method = nil, *arg) ⇒ Object



9
10
11
12
13
14
15
16
17
18
# File 'lib/ruby_proxy/proxy.rb', line 9

def self.proxy(klass_name,method=nil,*arg)
  Logger.debug "klass_name= #{klass_name}"
  Logger.debug "method = #{method}"
  Logger.debug "arg = #{arg.join(',')}"
  if method.nil?
    return proxy_module(klass_name)
  else
    return proxy_module(klass_name).send(method,*arg)
  end
end

.proxy_const_get(klass_name) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/ruby_proxy/proxy.rb', line 46

def self.proxy_const_get(klass_name)
  atu = nil
  klass_name_array = klass_name.split('::')
  klass_name_array.shift if klass_name_array[0] == "ATU"
  klass_name_array.each do |m|
    if atu.nil?
      atu = Kernel.const_get(m)
    else
      atu = atu.const_get(m)
    end
  end
  atu
end

.proxy_global_get(arg) ⇒ Object



28
29
30
# File 'lib/ruby_proxy/proxy.rb', line 28

def self.proxy_global_get(arg)
  ProxyGlobalSet.get(arg)
end

.proxy_global_set(arg, var) ⇒ Object



24
25
26
# File 'lib/ruby_proxy/proxy.rb', line 24

def self.proxy_global_set(arg,var)
  ProxyGlobalSet.set(arg,var)
end

.proxy_load(file_or_gem) ⇒ Object



20
21
22
# File 'lib/ruby_proxy/proxy.rb', line 20

def self.proxy_load(file_or_gem)
  ProxyLoad.load_file(file_or_gem)
end

.proxy_module(klass_name) ⇒ Object



40
41
42
43
44
# File 'lib/ruby_proxy/proxy.rb', line 40

def self.proxy_module(klass_name)
  m = proxy_const_get(klass_name)
  m.class_eval { include DRb::DRbUndumped } if ( m.class.to_s == "Class" or m.class.to_s == "Module" ) and ! m.include?(DRb::DRbUndumped)
  return m
end

.proxy_type(klass_name) ⇒ Object



36
37
38
# File 'lib/ruby_proxy/proxy.rb', line 36

def self.proxy_type(klass_name)
  return proxy_const_get(klass_name).class.to_s
end

.stop_proxyObject



60
61
62
# File 'lib/ruby_proxy/proxy.rb', line 60

def self.stop_proxy
  DRb.stop_service
end