org.jacorb.notification.servant
Class StructuredProxyPushSupplierImpl

java.lang.Object
  extended by org.jacorb.notification.servant.AbstractProxy
      extended by org.jacorb.notification.servant.AbstractProxySupplier
          extended by org.jacorb.notification.servant.StructuredProxyPushSupplierImpl
All Implemented Interfaces:
org.apache.avalon.framework.configuration.Configurable, Disposable, FilterStage, MessageConsumer, ManageableServant, QoSAdminOperations, ProxySupplierOperations, StructuredProxyPushSupplierOperations, NotifySubscribeOperations, StructuredPushSupplierOperations, FilterAdminOperations
Direct Known Subclasses:
SequenceProxyPushSupplierImpl

public class StructuredProxyPushSupplierImpl
extends AbstractProxySupplier
implements StructuredProxyPushSupplierOperations

Version:
$Id: StructuredProxyPushSupplierImpl.java,v 1.7 2004/05/06 12:40:00 nicolas Exp $
Author:
Alphonse Bendt

Field Summary
 
Fields inherited from class org.jacorb.notification.servant.AbstractProxySupplier
scheduleDeliverPendingMessagesOperation_
 
Fields inherited from class org.jacorb.notification.servant.AbstractProxy
admin_, channelContext_, id_, isIDPublic_, lifetimeFilter_, logger_, offerManager_, priorityFilter_, qosSettings_, subscriptionManager_, thisServant_
 
Constructor Summary
StructuredProxyPushSupplierImpl(AbstractAdmin myAdminServant, ChannelContext channelContext)
           
 
Method Summary
 Object activate()
           
 void connect_structured_push_consumer(StructuredPushConsumer consumer)
           
protected  void connectionResumed()
          invoked when resume_connection was called successfully.
 void deliverMessage(Message message)
          TODO check error handling when push fails
 void deliverPendingData()
          process pending work. push events to its connected (Push)Consumer.
 void disconnect_structured_push_supplier()
           
protected  void disconnectClient()
          invoke the proxy specific disconnect method.
 MessageConsumer getMessageConsumer()
          get the associated MessageConsumer or null.
 Servant getServant()
           
 java.util.List getSubsequentFilterStages()
          get FilterStages following this Node.
 boolean hasMessageConsumer()
          check if this FilterStage has a MessageConsumer associcated.
 ProxyType MyType()
           
 
Methods inherited from class org.jacorb.notification.servant.AbstractProxySupplier
configure, connectClient, disableDelivery, dispose, enableDelivery, enqueue, getAllMessages, getAtLeastMessages, getErrorThreshold, getExecutor, getMessageBlocking, getMessageNoBlock, getPendingMessagesCount, getUpToMessages, handleFailedPushOperation, hasPendingData, isEnabled, isPushSupplier, MyAdmin, obtain_offered_types, preActivate, setTaskExecutor, setTaskExecutor, subscription_change
 
Methods inherited from class org.jacorb.notification.servant.AbstractProxy
_default_POA, add_filter, assertConnected, assertNotConnected, checkStillConnected, connectionSuspended, deactivate, get_all_filters, get_filter, get_qos, getErrorCounter, getFilters, getID, getLifetimeFilter, getORB, getPOA, getPriorityFilter, getTaskProcessor, handleDisconnected, hasInterFilterGroupOperatorOR, hasLifetimeFilter, hasPriorityFilter, incErrorCounter, isConnected, isDisposed, isIDPublic, isSuspended, lifetime_filter, lifetime_filter, priority_filter, priority_filter, remove_all_filters, remove_filter, resetErrorCounter, resume_connection, set_qos, setDisposeHook, setID, setOfferManager, setORB, setPOA, setSubscriptionManager, setTaskProcessor, suspend_connection, validate_event_qos, validate_qos
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.omg.CosNotifyChannelAdmin.StructuredProxyPushSupplierOperations
resume_connection, suspend_connection
 
Methods inherited from interface org.omg.CosNotifyChannelAdmin.ProxySupplierOperations
lifetime_filter, lifetime_filter, MyAdmin, obtain_offered_types, priority_filter, priority_filter, validate_event_qos
 
Methods inherited from interface org.omg.CosNotification.QoSAdminOperations
get_qos, set_qos, validate_qos
 
Methods inherited from interface org.omg.CosNotifyFilter.FilterAdminOperations
add_filter, get_all_filters, get_filter, remove_all_filters, remove_filter
 
Methods inherited from interface org.omg.CosNotifyComm.NotifySubscribeOperations
subscription_change
 
Methods inherited from interface org.jacorb.notification.interfaces.MessageConsumer
getErrorCounter, incErrorCounter, isDisposed, resetErrorCounter
 

Constructor Detail

StructuredProxyPushSupplierImpl

public StructuredProxyPushSupplierImpl(AbstractAdmin myAdminServant,
                                       ChannelContext channelContext)
Method Detail

MyType

public ProxyType MyType()
Specified by:
MyType in interface ProxySupplierOperations
Specified by:
MyType in class AbstractProxy

deliverMessage

public void deliverMessage(Message message)
TODO check error handling when push fails

Specified by:
deliverMessage in interface MessageConsumer

connect_structured_push_consumer

public void connect_structured_push_consumer(StructuredPushConsumer consumer)
                                      throws AlreadyConnected
Specified by:
connect_structured_push_consumer in interface StructuredProxyPushSupplierOperations
Throws:
AlreadyConnected

disconnect_structured_push_supplier

public void disconnect_structured_push_supplier()
Specified by:
disconnect_structured_push_supplier in interface StructuredPushSupplierOperations

deliverPendingData

public void deliverPendingData()
Description copied from interface: MessageConsumer
process pending work. push events to its connected (Push)Consumer.

Specified by:
deliverPendingData in interface MessageConsumer

connectionResumed

protected void connectionResumed()
Description copied from class: AbstractProxy
invoked when resume_connection was called successfully.

Overrides:
connectionResumed in class AbstractProxy

disconnectClient

protected void disconnectClient()
Description copied from class: AbstractProxy
invoke the proxy specific disconnect method.

Specified by:
disconnectClient in class AbstractProxy

getSubsequentFilterStages

public java.util.List getSubsequentFilterStages()
Description copied from interface: FilterStage
get FilterStages following this Node.

Specified by:
getSubsequentFilterStages in interface FilterStage

getMessageConsumer

public MessageConsumer getMessageConsumer()
Description copied from interface: FilterStage
get the associated MessageConsumer or null.

Specified by:
getMessageConsumer in interface FilterStage

hasMessageConsumer

public boolean hasMessageConsumer()
Description copied from interface: FilterStage
check if this FilterStage has a MessageConsumer associcated.

Specified by:
hasMessageConsumer in interface FilterStage

getServant

public Servant getServant()

activate

public Object activate()
Specified by:
activate in interface ManageableServant