Class: Backnob::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/backnob/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(uri = nil) ⇒ Client

Returns a new instance of Client.



8
9
10
# File 'lib/backnob/client.rb', line 8

def initialize(uri = nil)
  @uri = uri || SERVER_URI
end

Instance Method Details

#add_worker(file) ⇒ Object



18
19
20
21
22
# File 'lib/backnob/client.rb', line 18

def add_worker(file)
  server do |s|
    s.add_file(Pathname.new(file).realpath.to_s)
  end
end

#available?Boolean

Returns:

  • (Boolean)


24
25
26
27
28
29
30
31
32
# File 'lib/backnob/client.rb', line 24

def available?
  begin
    server do |s|
      s.ping
    end
  rescue
    return false
  end
end

#create_worker(name, options = {}) ⇒ Object



12
13
14
15
16
# File 'lib/backnob/client.rb', line 12

def create_worker(name, options = {})    
  server do |s|
    s.create_worker(name, options)
  end
end

#results(key, hk = nil) ⇒ Object



34
35
36
37
38
# File 'lib/backnob/client.rb', line 34

def results(key, hk = nil)
  server do |s|
    s.results(key, hk)
  end
end

#serverObject



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/backnob/client.rb', line 40

def server
  unless block_given?
    DRb.start_service
    return DRbObject.new_with_uri(@uri)
  else
    begin
      DRb.start_service
      s = DRbObject.new_with_uri(@uri)        

      ret = yield(s)
    ensure
      DRb.stop_service
    end

    ret
  end
end