|
xmlBlaster 2.2.0 client API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface I_DispatchManager
Manages the sending of messages and commands and does error recovery further we communicate with the dispatcher plugin if one is configured.
There is one instance of this class per queue and remote connection.
Method Summary | |
---|---|
boolean |
addConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener)
|
boolean |
addConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener,
boolean fireInitial)
|
java.util.ArrayList |
filterDistributorEntries(java.util.ArrayList entries,
java.lang.Throwable ex)
|
long |
getAliveSinceTime()
Get timestamp when we went to ALIVE state. |
long |
getBurstModeMaxBytes()
How many bytes maximum shall the callback thread take in one bulk out of the callback queue and deliver in one bulk. |
int |
getBurstModeMaxEntries()
How many messages maximum shall the callback thread take in one bulk out of the callback queue and deliver in one bulk. |
I_ConnectionStatusListener[] |
getConnectionStatusListeners()
|
DispatchConnectionsHandler |
getDispatchConnectionsHandler()
|
DispatchStatistic |
getDispatchStatistic()
|
java.lang.String |
getId()
For logging |
I_MsgDispatchInterceptor |
getMsgDispatchInterceptor()
|
I_MsgErrorHandler |
getMsgErrorHandler()
|
org.xmlBlaster.authentication.plugins.I_MsgSecurityInterceptor |
getMsgSecurityInterceptor()
|
int |
getNotifyCounter()
Counts how often a new entry was added since the current worker thread was started. |
long |
getPollingSinceTime()
Get timestamp when we went to POLLING state. |
I_Queue |
getQueue()
|
SessionName |
getSessionName()
|
java.lang.String |
getTypeVersion()
The name in the configuration file for the plugin |
void |
handleSyncWorkerException(java.util.List<I_Entry> entryList,
java.lang.Throwable throwable)
Called by DispatchWorker if an Exception occured in sync mode Only on client side |
void |
handleWorkerException(java.util.List<I_Entry> entryList,
java.lang.Throwable throwable)
Called by DispatchWorker if an Exception occurred in async mode. |
void |
internalError(java.lang.Throwable throwable)
Called locally and from TopicHandler when internal error (Throwable) occurred to avoid infinite looping |
boolean |
isAlive()
|
boolean |
isDead()
|
boolean |
isDispatcherActive()
|
boolean |
isPolling()
|
boolean |
isShutdown()
|
boolean |
isSyncMode()
|
void |
lostClientConnection()
Can be called when client connection is lost (NOT the callback connection). |
void |
notifyAboutNewEntry()
When somebody puts a new entry into the queue, we want to be notified about this after the entry is fed. |
boolean |
pingCallbackServer(boolean sync,
boolean connectionIsDown)
|
void |
postSendNotification(MsgQueueEntry entry)
|
void |
postSendNotification(MsgQueueEntry[] entries)
|
java.util.ArrayList |
prepareMsgsFromQueue(java.util.List<I_Entry> entryList)
Here we prepare messages which are coming directly from the queue. |
void |
putPost(I_QueueEntry queueEntry)
Called by I_Queue implementation before leaving put() and somebody has registered for such events. |
void |
putPost(I_QueueEntry[] queueEntries)
Called by I_Queue implementation before leaving put() and somebody has registered for such events. |
boolean |
putPre(I_QueueEntry queueEntry)
Called by I_Queue implementation when a put() is invoked and somebody has registered for such events |
boolean |
putPre(I_QueueEntry[] queueEntries)
Called by I_Queue implementation when a put() is invoked and somebody has registered for such events |
void |
reachedAliveSync(ConnectionStateEnum oldState,
I_XmlBlasterAccess connection)
|
boolean |
removeConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener)
Remove the given listener |
void |
removeFromQueue(MsgQueueEntry[] entries,
boolean postSendNotify)
Messages are successfully sent, remove them now from queue (sort of a commit()): We remove filtered/destroyed messages as well (which doen't show up in entryListChecked) |
boolean |
sendingFailedNotification(MsgQueueEntry[] entries,
XmlBlasterException ex)
Notify I_PostSendListener about problem. |
void |
setAddresses(AddressBase[] addr)
Set new callback addresses, typically after a session login/logout |
void |
setDispatcherActive(boolean dispatcherActive)
Inhibits/activates the delivery of asynchronous dispatches of messages. |
void |
setDispatchWorkerIsActive(boolean val)
The worker notifies us that it is finished, if messages are available it is triggered again. |
void |
shutdown()
Stop all callback drivers of this client. |
void |
shutdownFomAnyState(ConnectionStateEnum oldState,
XmlBlasterException ex)
Call by DispatchConnectionsHandler on state transition |
void |
switchToASyncMode()
Switch back to asynchronous mode. |
void |
switchToSyncMode()
We register a QueuePutListener and all put() into the queue are intercepted - our put() is called instead. |
void |
timeout(java.lang.Object userData)
We are notified about the burst mode timeout through this method. |
void |
toAlive(ConnectionStateEnum oldState)
Call by DispatchConnectionsHandler on state transition NOTE: toAlive is called initially when a protocol plugin is successfully loaded but we don't know yet if it ever is able to connect |
void |
toDead(XmlBlasterException ex)
|
void |
toPolling(ConnectionStateEnum oldState)
Call by DispatchConnectionsHandler on state transition |
java.lang.String |
toXml(java.lang.String extraOffset)
Dump state of this object into a XML ASCII string. |
void |
trySyncMode(boolean trySyncMode)
Set behavior of dispatch framework. |
void |
updateProperty(CallbackAddress[] addressArr)
Reconfigure dispatcher with given properties. |
Method Detail |
---|
SessionName getSessionName()
boolean isSyncMode()
void trySyncMode(boolean trySyncMode)
trySyncMode
- true: client side queue embedding, false: server side callback queue
defaults to falsevoid updateProperty(CallbackAddress[] addressArr) throws XmlBlasterException
addressArr
- The new configuration
XmlBlasterException
I_Queue getQueue()
boolean addConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener)
boolean addConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener, boolean fireInitial)
boolean removeConnectionStatusListener(I_ConnectionStatusListener connectionStatusListener)
connectionStatusListener
-
I_ConnectionStatusListener[] getConnectionStatusListeners()
java.lang.String getTypeVersion()
org.xmlBlaster.authentication.plugins.I_MsgSecurityInterceptor getMsgSecurityInterceptor()
DispatchConnectionsHandler getDispatchConnectionsHandler()
int getBurstModeMaxEntries()
long getBurstModeMaxBytes()
long getAliveSinceTime()
long getPollingSinceTime()
void toAlive(ConnectionStateEnum oldState)
void reachedAliveSync(ConnectionStateEnum oldState, I_XmlBlasterAccess connection)
void toPolling(ConnectionStateEnum oldState)
void toDead(XmlBlasterException ex)
ex
- void shutdownFomAnyState(ConnectionStateEnum oldState, XmlBlasterException ex)
void postSendNotification(MsgQueueEntry entry)
void postSendNotification(MsgQueueEntry[] entries)
boolean sendingFailedNotification(MsgQueueEntry[] entries, XmlBlasterException ex)
Typically XmlBlasterAccess is notified when message came asynchronously from queue
entryList
- ex
-
for explanation
void handleSyncWorkerException(java.util.List<I_Entry> entryList, java.lang.Throwable throwable) throws XmlBlasterException
XmlBlasterException
void removeFromQueue(MsgQueueEntry[] entries, boolean postSendNotify) throws XmlBlasterException
postSendNotify
- TODO
XmlBlasterException
void handleWorkerException(java.util.List<I_Entry> entryList, java.lang.Throwable throwable) throws XmlBlasterException
XmlBlasterException
- should never happen but is possible during removing entries from queueI_MsgErrorHandler getMsgErrorHandler()
void switchToSyncMode()
void switchToASyncMode()
boolean putPre(I_QueueEntry queueEntry) throws XmlBlasterException
I_QueuePutListener
putPre
in interface I_QueuePutListener
queueEntry
- Is guaranteed to never be null
XmlBlasterException
I_QueuePutListener.putPre(I_QueueEntry)
boolean putPre(I_QueueEntry[] queueEntries) throws XmlBlasterException
I_QueuePutListener
putPre
in interface I_QueuePutListener
queueEntries
- Is guaranteed to never be null
XmlBlasterException
putPre(I_QueueEntry)
,
I_QueuePutListener.putPre(I_QueueEntry[])
void putPost(I_QueueEntry queueEntry) throws XmlBlasterException
I_QueuePutListener
putPost
in interface I_QueuePutListener
queueEntry
- Is guaranteed to never be null
XmlBlasterException
I_QueuePutListener.putPost(I_QueueEntry)
void putPost(I_QueueEntry[] queueEntries) throws XmlBlasterException
I_QueuePutListener
putPost
in interface I_QueuePutListener
queueEntries
- Is guaranteed to never be null
XmlBlasterException
putPost(I_QueueEntry)
,
I_QueuePutListener.putPost(I_QueueEntry[])
java.util.ArrayList prepareMsgsFromQueue(java.util.List<I_Entry> entryList)
void notifyAboutNewEntry()
Called by I_Queue.putPost()
int getNotifyCounter()
boolean isDead()
boolean isPolling()
boolean isAlive()
void lostClientConnection()
void timeout(java.lang.Object userData)
timeout
in interface I_Timeout
userData
- You get bounced back your userData which you passed
with Timeout.addTimeoutListener()I_MsgDispatchInterceptor getMsgDispatchInterceptor()
void setAddresses(AddressBase[] addr) throws XmlBlasterException
XmlBlasterException
void setDispatchWorkerIsActive(boolean val)
void internalError(java.lang.Throwable throwable)
DispatchStatistic getDispatchStatistic()
boolean isShutdown()
void shutdown()
java.lang.String getId()
java.lang.String toXml(java.lang.String extraOffset)
extraOffset
- indenting of tags for nice output
void setDispatcherActive(boolean dispatcherActive)
dispatcherActive
- boolean isDispatcherActive()
java.util.ArrayList filterDistributorEntries(java.util.ArrayList entries, java.lang.Throwable ex)
boolean pingCallbackServer(boolean sync, boolean connectionIsDown)
|
xmlBlaster 2.2.0 client API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |