| org.jacorb.events.ProxyPushConsumerImpl
ProxyPushConsumerImpl | public class ProxyPushConsumerImpl extends org.omg.CosEventChannelAdmin.ProxyPushConsumerPOA (Code) | | Implementation of COSEventChannelAdmin interface; ProxyPushConsumer.
This defines connect_push_supplier(), disconnect_push_consumer() and the all
important push() method that the Supplier can call to actuall deliver a
message.
2002/23/08 JFC OMG EventService Specification 1.1 page 2-7 states:
"Registration is a two step process. An event-generating application
first obtains a proxy consumer from a channel, then 'connects' to the
proxy consumer by providing it with a supplier. ... The reason for
the two step registration process..."
Modifications to support the above have been made as well as to support
section 2.1.5 "Disconnection Behavior" on page 2-4.
author: Jeff Carlson, Joerg v. Frantzius, Rainer Lischetzki, Gerald Brose version: $Id: ProxyPushConsumerImpl.java,v 1.8 2004/05/06 12:39:58 nicolas Exp $ |
Method Summary | |
public org.omg.PortableServer.POA | _default_POA() Override this method from the Servant baseclass. | public void | connect_push_supplier(PushSupplier pushSupplier) fuers ProxyPushConsumer Interface:
As stated by the EventService specification 1.1 section 2.3.4:
"If a ProxyPushConsumer is already connected to a PushSupplier, then the
AlreadyConnected exception is raised."
and
"If a non-nil reference is passed to connect_push_supplier..." implying
that a null reference is acceptable. | public void | disconnect_push_consumer() fuers PushConsumer Interface:
See EventService v 1.1 specification section 2.1.1.
'disconnect_push_consumer terminates the event communication; it releases
resources used at the consumer to support event communication. | public void | push(org.omg.CORBA.Any event) Supplier sends data to the consumer (this object) using this call. |
_default_POA | public org.omg.PortableServer.POA _default_POA()(Code) | | Override this method from the Servant baseclass. Fintan Bolton
in his book "Pure CORBA" suggests that you override this method to
avoid the risk that a servant object (like this one) could be
activated by the wrong POA object.
|
connect_push_supplier | public void connect_push_supplier(PushSupplier pushSupplier) throws org.omg.CosEventChannelAdmin.AlreadyConnected(Code) | | fuers ProxyPushConsumer Interface:
As stated by the EventService specification 1.1 section 2.3.4:
"If a ProxyPushConsumer is already connected to a PushSupplier, then the
AlreadyConnected exception is raised."
and
"If a non-nil reference is passed to connect_push_supplier..." implying
that a null reference is acceptable.
|
disconnect_push_consumer | public void disconnect_push_consumer()(Code) | | fuers PushConsumer Interface:
See EventService v 1.1 specification section 2.1.1.
'disconnect_push_consumer terminates the event communication; it releases
resources used at the consumer to support event communication. Calling
this causes the implementation to call disconnect_push_supplier operation
on the corresponding PushSupplier interface (if that iterface is known).'
See EventService v 1.1 specification section 2.1.5. This method should
adhere to the spec as it a) causes a call to the corresponding disconnect
on the connected supplier, b) 'If a consumer or supplier has received a
disconnect call and subsequently receives another disconnect call, it
shall raise a CORBA::OBJECT_NOT_EXIST exception.
|
push | public void push(org.omg.CORBA.Any event) throws org.omg.CosEventComm.Disconnected(Code) | | Supplier sends data to the consumer (this object) using this call.
|
|
|