Klasse MultiCollectionMessaging
java.lang.Object
de.caluga.morphium.messaging.MultiCollectionMessaging
- Alle implementierten Schnittstellen:
MorphiumMessaging, Closeable, AutoCloseable
MessageQueueing implementation with additional features:
- using a collection for each message name - reducing load on clients with
minimal overhead on MongoDB-Side
- adding capability for streaming data. Usually as an answer, but could also
be as "just as is"
-
Feldübersicht
Felder -
Konstruktorübersicht
Konstruktoren -
Methodenübersicht
Modifikator und TypMethodeBeschreibungvoidvoidclose()voidvoidintgetDMCollectionName(String sender) intgetLockCollectionName(String name) longintgetPause()longintintintvoidvoidinit(Morphium m, MessagingSettings overrides) booleanbooleanbooleanbooleanbooleanbooleanbooleanlockMessage(Msg m, String lockId, Date delAt) voidpauseTopicProcessing(String name) voidqueueMessage(Msg m) voidvoidremoveListenerForTopic(String topic, MessageListener l) voidremoveMessage(Msg m) sendAndAwaitAnswers(T theMessage, int numberOfAnswers, long timeout) sendAndAwaitAnswers(T theMessage, int numberOfAnswers, long timeout, boolean throwExceptionOnTimeout) <T extends Msg>
voidsendAndAwaitAsync(T theMessage, long timeoutInMs, SingleCollectionMessaging.AsyncMessageCallback cb) Sends a message asynchronously and sends all incoming answers via callback.<T extends Msg>
TsendAndAwaitFirstAnswer(T theMessage, long timeoutInMs) <T extends Msg>
TsendAndAwaitFirstAnswer(T theMessage, long timeoutInMs, boolean throwExceptionOnTimeout) voidsendMessage(Msg m) voidsetAutoAnswer(boolean autoAnswer) setMultithreadded(boolean multithreadded) setPause(int pause) setPolling(boolean doPolling) setProcessMultiple(boolean processMultiple) setQueueName(String queueName) setSenderId(String id) voidsetStatusInfoListenerEnabled(boolean statusInfoListenerEnabled) voidsetStatusInfoListenerName(String statusInfoListenerName) setUseChangeStream(boolean useChangeStream) setWindowSize(int windowSize) voidstart()voidunpauseTopicProcessing(String name) intint
-
Felddetails
-
NAME
- Siehe auch:
-
-
Konstruktordetails
-
MultiCollectionMessaging
public MultiCollectionMessaging()
-
-
Methodendetails
-
getAlternativeMessagings
- Angegeben von:
getAlternativeMessagingsin SchnittstelleMorphiumMessaging
-
getDMCollectionName
-
getDMCollectionName
- Angegeben von:
getDMCollectionNamein SchnittstelleMorphiumMessaging
-
start
public void start()- Angegeben von:
startin SchnittstelleMorphiumMessaging
-
enableStatusInfoListener
public void enableStatusInfoListener()- Angegeben von:
enableStatusInfoListenerin SchnittstelleMorphiumMessaging
-
disableStatusInfoListener
public void disableStatusInfoListener()- Angegeben von:
disableStatusInfoListenerin SchnittstelleMorphiumMessaging
-
getStatusInfoListenerName
- Angegeben von:
getStatusInfoListenerNamein SchnittstelleMorphiumMessaging
-
setStatusInfoListenerName
- Angegeben von:
setStatusInfoListenerNamein SchnittstelleMorphiumMessaging
-
getProcessingCount
public int getProcessingCount()- Angegeben von:
getProcessingCountin SchnittstelleMorphiumMessaging
-
getInProgressCount
public int getInProgressCount()- Angegeben von:
getInProgressCountin SchnittstelleMorphiumMessaging
-
waitingForAnswersCount
public int waitingForAnswersCount()- Angegeben von:
waitingForAnswersCountin SchnittstelleMorphiumMessaging
-
waitingForAnswersTotalCount
public int waitingForAnswersTotalCount()- Angegeben von:
waitingForAnswersTotalCountin SchnittstelleMorphiumMessaging
-
isStatusInfoListenerEnabled
public boolean isStatusInfoListenerEnabled()- Angegeben von:
isStatusInfoListenerEnabledin SchnittstelleMorphiumMessaging
-
setStatusInfoListenerEnabled
public void setStatusInfoListenerEnabled(boolean statusInfoListenerEnabled) - Angegeben von:
setStatusInfoListenerEnabledin SchnittstelleMorphiumMessaging
-
getListenerNames
- Angegeben von:
getListenerNamesin SchnittstelleMorphiumMessaging
-
getThreadPoolStats
- Angegeben von:
getThreadPoolStatsin SchnittstelleMorphiumMessaging
-
getPendingMessagesCount
public long getPendingMessagesCount()- Angegeben von:
getPendingMessagesCountin SchnittstelleMorphiumMessaging
-
removeMessage
- Angegeben von:
removeMessagein SchnittstelleMorphiumMessaging
-
getAsyncMessagesPending
public int getAsyncMessagesPending()- Angegeben von:
getAsyncMessagesPendingin SchnittstelleMorphiumMessaging
-
pauseTopicProcessing
- Angegeben von:
pauseTopicProcessingin SchnittstelleMorphiumMessaging
-
getPausedTopics
- Angegeben von:
getPausedTopicsin SchnittstelleMorphiumMessaging
-
unpauseTopicProcessing
- Angegeben von:
unpauseTopicProcessingin SchnittstelleMorphiumMessaging
-
getCollectionName
- Angegeben von:
getCollectionNamein SchnittstelleMorphiumMessaging
-
getCollectionName
- Angegeben von:
getCollectionNamein SchnittstelleMorphiumMessaging
-
getCollectionName
- Angegeben von:
getCollectionNamein SchnittstelleMorphiumMessaging
-
getLockCollectionName
- Angegeben von:
getLockCollectionNamein SchnittstelleMorphiumMessaging
-
getLockCollectionName
- Angegeben von:
getLockCollectionNamein SchnittstelleMorphiumMessaging
-
getLockCollectionName
- Angegeben von:
getLockCollectionNamein SchnittstelleMorphiumMessaging
-
lockMessage
- Angegeben von:
lockMessagein SchnittstelleMorphiumMessaging
-
addListenerForTopic
- Angegeben von:
addListenerForTopicin SchnittstelleMorphiumMessaging
-
removeListenerForTopic
- Angegeben von:
removeListenerForTopicin SchnittstelleMorphiumMessaging
-
getSenderId
- Angegeben von:
getSenderIdin SchnittstelleMorphiumMessaging
-
setSenderId
- Angegeben von:
setSenderIdin SchnittstelleMorphiumMessaging
-
getPause
public int getPause()- Angegeben von:
getPausein SchnittstelleMorphiumMessaging
-
setPause
- Angegeben von:
setPausein SchnittstelleMorphiumMessaging
-
isRunning
public boolean isRunning()- Angegeben von:
isRunningin SchnittstelleMorphiumMessaging
-
close
public void close()- Angegeben von:
closein SchnittstelleAutoCloseable- Angegeben von:
closein SchnittstelleCloseable- Angegeben von:
closein SchnittstelleMorphiumMessaging
-
terminate
public void terminate()- Angegeben von:
terminatein SchnittstelleMorphiumMessaging
-
queueMessage
- Angegeben von:
queueMessagein SchnittstelleMorphiumMessaging
-
sendMessage
- Angegeben von:
sendMessagein SchnittstelleMorphiumMessaging
-
getNumberOfMessages
public long getNumberOfMessages()- Angegeben von:
getNumberOfMessagesin SchnittstelleMorphiumMessaging
-
sendMessageToSelf
- Angegeben von:
sendMessageToSelfin SchnittstelleMorphiumMessaging
-
queueMessagetoSelf
- Angegeben von:
queueMessagetoSelfin SchnittstelleMorphiumMessaging
-
isAutoAnswer
public boolean isAutoAnswer()- Angegeben von:
isAutoAnswerin SchnittstelleMorphiumMessaging
-
setAutoAnswer
- Angegeben von:
setAutoAnswerin SchnittstelleMorphiumMessaging
-
sendAndAwaitFirstAnswer
public <T extends Msg> T sendAndAwaitFirstAnswer(T theMessage, long timeoutInMs, boolean throwExceptionOnTimeout) - Angegeben von:
sendAndAwaitFirstAnswerin SchnittstelleMorphiumMessaging
-
sendAndAwaitAnswers
- Angegeben von:
sendAndAwaitAnswersin SchnittstelleMorphiumMessaging
-
sendAndAwaitAnswers
public <T extends Msg> List<T> sendAndAwaitAnswers(T theMessage, int numberOfAnswers, long timeout, boolean throwExceptionOnTimeout) - Angegeben von:
sendAndAwaitAnswersin SchnittstelleMorphiumMessaging
-
sendAndAwaitFirstAnswer
- Angegeben von:
sendAndAwaitFirstAnswerin SchnittstelleMorphiumMessaging
-
sendAndAwaitAsync
public <T extends Msg> void sendAndAwaitAsync(T theMessage, long timeoutInMs, SingleCollectionMessaging.AsyncMessageCallback cb) Sends a message asynchronously and sends all incoming answers via callback. If sent message is exclusive, only one answer will be processed, otherwise all incoming answers up to timeout will be processed.- Angegeben von:
sendAndAwaitAsyncin SchnittstelleMorphiumMessaging
-
isProcessMultiple
public boolean isProcessMultiple()- Angegeben von:
isProcessMultiplein SchnittstelleMorphiumMessaging
-
setProcessMultiple
- Angegeben von:
setProcessMultiplein SchnittstelleMorphiumMessaging
-
getQueueName
- Angegeben von:
getQueueNamein SchnittstelleMorphiumMessaging
-
setQueueName
- Angegeben von:
setQueueNamein SchnittstelleMorphiumMessaging
-
isMultithreadded
public boolean isMultithreadded()- Angegeben von:
isMultithreaddedin SchnittstelleMorphiumMessaging
-
setMultithreadded
- Angegeben von:
setMultithreaddedin SchnittstelleMorphiumMessaging
-
getWindowSize
public int getWindowSize()- Angegeben von:
getWindowSizein SchnittstelleMorphiumMessaging
-
setWindowSize
- Angegeben von:
setWindowSizein SchnittstelleMorphiumMessaging
-
isUseChangeStream
public boolean isUseChangeStream()- Angegeben von:
isUseChangeStreamin SchnittstelleMorphiumMessaging
-
getRunningTasks
public int getRunningTasks()- Angegeben von:
getRunningTasksin SchnittstelleMorphiumMessaging
-
getMorphium
- Angegeben von:
getMorphiumin SchnittstelleMorphiumMessaging
-
setPolling
- Angegeben von:
setPollingin SchnittstelleMorphiumMessaging
-
setUseChangeStream
- Angegeben von:
setUseChangeStreamin SchnittstelleMorphiumMessaging
-
init
- Angegeben von:
initin SchnittstelleMorphiumMessaging
-
init
- Angegeben von:
initin SchnittstelleMorphiumMessaging
-