mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-05-05 17:43:35 +03:00

Initial commit after moving to Tango instead of Phobos. Lots of bugfixes... This build is not suitable for most things.
38 lines
1.2 KiB
D
38 lines
1.2 KiB
D
private import tango.core.Thread;
|
|
|
|
private import tango.util.log.Configurator;
|
|
|
|
private import tango.net.cluster.tina.Cluster;
|
|
|
|
private import tango.net.cluster.NetworkQueue;
|
|
|
|
/*******************************************************************************
|
|
|
|
*******************************************************************************/
|
|
|
|
void main()
|
|
{
|
|
// open the cluster and a queue channel. Note that the queue has
|
|
// been configured with a reply listener ...
|
|
auto cluster = (new Cluster).join;
|
|
auto queue = new NetworkQueue (cluster, "message.channel",
|
|
(IEvent event){event.log.info ("Received reply");}
|
|
);
|
|
|
|
void recipient (IEvent event)
|
|
{
|
|
auto msg = event.get;
|
|
|
|
event.log.info ("Replying to message on channel "~msg.reply);
|
|
event.reply (event.replyChannel(msg), queue.EmptyMessage);
|
|
}
|
|
|
|
// setup a listener to recieve and reply
|
|
queue.createConsumer (&recipient);
|
|
|
|
// toss a message out to the cluster
|
|
queue.put (queue.EmptyMessage);
|
|
|
|
// wait for completion ...
|
|
Thread.sleep (1);
|
|
}
|