druby server prüfen
Manfred Hansen <[email protected]> Tue, 11 Feb 2003 16:01:47 +0100
| Newsgroups | gmane.comp.lang.ruby.german |
|---|---|
| Organization | Mobilcom AG |
| Message-ID | <[email protected]> |
Hallo,
gibt es eine Möglichkeit mit dem "druby client" zu prüfen ob
der "druby Server" läuft.
Erst wenn sichergestellt ist ob der Server läuft soll mit
dem weiteren Ablauf des Programms fortgefahren werden.
Das Programm kopiert eine Datei vom Server auf dem Client:
#!/usr/bin/ruby
require "drb/drb"
class TestServer
def doit(dateiname)
# prüfen ob die Datei vorhanden ist
if FileTest.file?(dateiname) then
puts "Datei vorhanden"
return File.new(dateiname, "r")
else
puts "Datei nicht vorhanden" rescue nil
return "Datei nicht gefunden"
end
end
end
aServerObject = TestServer.new
DRb::DRbServer.new("druby://sid-lx:5555", aServerObject)
DRb.thread.join # Steige nicht gerade jetzt aus
Client:
#!/usr/bin/ruby
require "drb/drb"
primary = DRb::DRbServer.new
ro = DRb::DRbObject.new(nil,'druby://sid-lx:5555')
if ro.kind_of? DRbObject then # Hier die Prüfung ob Server läuft ????
primary = ro.doit(dateiname) rescue nil
if primary.kind_of? String then
puts "Datei nicht gefunden"
else
f= File.open("/tmp/"+dateiname,File::CREAT|File::RDWR|File::APPEND|File::TRUNC,0644)
primary.each {|line|
f.print line
}
end
else
puts "Server läuft nicht"
end
mfg Manfred