| Class | OpenWFE::OldSocketListener |
| In: |
lib/openwfe/orest/osocket.rb
|
| Parent: | TCPServer |
This code was blogged about at jmettraux.wordpress.com/2006/06/01/openwfe-ruby/
# File lib/openwfe/orest/osocket.rb, line 54
54: def listen ()
55: while (session = accept())
56: #
57: # how does it scale ?
58:
59: s = session.gets
60:
61: if s[0..8] != 'xmlCoder '
62: session.close
63: break
64: end
65:
66: l = s[9..-1].to_i
67:
68: s = session.gets
69: #
70: # skipping the empty line between the
71: # header and the actual workitem
72:
73: sXml = ''
74:
75: while sXml.length < l
76: s = session.gets
77: sXml = "#{sXml}#{s}"
78: end
79:
80: session.print "<ok-reply/>"
81: session.close
82:
83: yield OpenWFE.xml_decode(xml.root)
84: end
85: end