This is the beginning of a CORBA-compliant CosEvent service.  It currently 
supports:

* Generic Push style event model.
* Partial, untested implementation of the Generic Pull model.  

This event service will be used by the Gnome Debugging Framework until a 
proper event service is implemented in ORBit (which will require
multithreading extensions).

USAGE:

To test the event server, start it like this.

orbit-event-server >/tmp/event-service-ior

There is a new interface in the CosEventChannelAdmin module, that is:

module CosEventChannelAdmin {
	interface EventChannelFactory {
		EventChannel new_event_channel();	
	};
};

Thats the way to obtain new channels. The ior, that orbit-event-server
outputs is the object-reference of this Factory.

Then you can test the event server with the event-consumer and
event-supplier progs.

Dave Camp <campd@oit.edu>

TODO:

- Is there a better way to get a new channel?  The spec is not very
  verbose about it.

- ProxyPullSupplier does not support blocking pull().  This is going to
  be difficult to implement.

- Allow connecting of PullSuppliers to the event channel.

- Dead consumers that were not properly disconnected will cause problems.
  - Dead pull consumers will cause memory problems as the queue fills up
    with messages that are never taken out of the queue.  Limiting the
    size of the queue would probably be a good idea.
  - Dead push consumers will have communication failures.  We should 
    disconnect the proxy suppliers if the consumer is dead.

- It really needs to be multithreaded.