# File lib/puppet/network/http/mongrel.rb, line 10
10:     def listen(args = {})
11:         raise ArgumentError, ":protocols must be specified." if !args[:protocols] or args[:protocols].empty?
12:         raise ArgumentError, ":address must be specified." unless args[:address]
13:         raise ArgumentError, ":port must be specified." unless args[:port]
14:         raise "Mongrel server is already listening" if listening?
15: 
16:         @protocols = args[:protocols]
17:         @xmlrpc_handlers = args[:xmlrpc_handlers]
18:         @server = Mongrel::HttpServer.new(args[:address], args[:port])
19:         setup_handlers
20: 
21:         @listening = true
22:         @server.run
23:     end