#!/usr/bin/env python
from qpid import spec
from qpid.connection import Connection, listen
from qpid.delegate import Delegate
from qpid.peer import Peer

class Server(Delegate):

  def connection_open(self, ch, msg):
    msg.open_ok()

  def channel_open(self, ch, msg):
    print "channel %s open" % ch.id
    msg.open_ok()

  def message_transfer(self, ch, msg):
    print msg.body
    msg.ok()


spec = spec.load("../specs/amqp.0-9.xml")

for io in listen("0.0.0.0", 5672):
  c = Connection(io, spec)
  p = Peer(c, Server())
  c.tini()
  p.start()
  ch = p.channel(0)
  ch.connection_start()
  ch.connection_tune()
