Package org.cyclos.impl.messaging
Class NotificationProcessingPollingTask
- java.lang.Object
-
- org.cyclos.impl.AbstractServerComponent
-
- org.cyclos.impl.AbstractGlobalServerComponent
-
- org.cyclos.impl.utils.tasks.AbstractTask
-
- org.cyclos.impl.utils.tasks.AbstractPollingTask
-
- org.cyclos.impl.utils.tasks.EntityBatchPollingTask<Notification>
-
- org.cyclos.impl.messaging.NotificationProcessingPollingTask
-
- All Implemented Interfaces:
Runnable,PollingTask
@Component public class NotificationProcessingPollingTask extends EntityBatchPollingTask<Notification>
APollingTaskwhich processes
-
-
Field Summary
-
Fields inherited from class org.cyclos.impl.utils.tasks.EntityBatchPollingTask
BATCH_SIZE, entityType
-
Fields inherited from class org.cyclos.impl.utils.tasks.AbstractTask
errorLogService, invokerHandler, loggingHandler
-
Fields inherited from class org.cyclos.impl.AbstractGlobalServerComponent
rawEntityManagerHandler
-
Fields inherited from class org.cyclos.impl.AbstractServerComponent
accountHandler, configurationHandler, dataTranslationHandler, notificationHandler, profileFieldHandler, transactionHandler, translationHandler
-
-
Constructor Summary
Constructors Constructor Description NotificationProcessingPollingTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidfinish(Notification notification, Throwable error)Must be implemented in order to mark the given entity as finished.StringgetName()Returns the task nameprotected Collection<Long>nextIds()Must be implemented in order to return the ids of the next entities to be processed, without actually processing them.protected voidprocess(Notification notification)Must be implemented in order to actually process the given entity, without change it's state to already processed-
Methods inherited from class org.cyclos.impl.utils.tasks.EntityBatchPollingTask
doRun, find, generateErrorLog, generateErrorLog, logProcessingErrors, onFinish, resolveNetwork, shouldGenerateErrorLog, shouldGenerateErrorLog, shouldSkipFinish
-
Methods inherited from class org.cyclos.impl.utils.tasks.AbstractPollingTask
dateFromDelay, getFirstExecution, getInitialSleepSeconds, getNextExecution, getSecondsUntilNextDay, getSecondsUntilNextHour, getSleepSeconds, getStorage, initialize, isExclusiveInCluster, run
-
Methods inherited from class org.cyclos.impl.utils.tasks.AbstractTask
getLogConfiguration, logName, logTaskError, logTaskSuccess, toString
-
Methods inherited from class org.cyclos.impl.AbstractGlobalServerComponent
getBaseEntityManagerHandler, getEntityManager
-
Methods inherited from class org.cyclos.impl.AbstractServerComponent
dataTranslationProxy, delete, detach, find, flush, from, getApplicationContext, getFormatter, getFormatter, getFormatter, getLogger, getRemoteAddress, getSessionData, mailContentBuilder, message, message, persist, processBatch, processBatch, refresh, remove, selectFrom, subQuery, update
-
-
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:PollingTaskReturns the task name- Specified by:
getNamein interfacePollingTask- Specified by:
getNamein classAbstractTask
-
finish
protected void finish(Notification notification, Throwable error) throws Throwable
Description copied from class:EntityBatchPollingTaskMust be implemented in order to mark the given entity as finished. Even when {@link #process(IEntity))} fails, this method is invoked. Runs in another transaction, passing the error ifEntityBatchPollingTask.process(IEntity)yielded an error.- Specified by:
finishin classEntityBatchPollingTask<Notification>- Throws:
Throwable
-
nextIds
protected Collection<Long> nextIds() throws Throwable
Description copied from class:EntityBatchPollingTaskMust be implemented in order to return the ids of the next entities to be processed, without actually processing them. Returning null or an empty list means there is no more data for now, and will make this task sleep- Specified by:
nextIdsin classEntityBatchPollingTask<Notification>- Throws:
Throwable
-
process
protected void process(Notification notification)
Description copied from class:EntityBatchPollingTaskMust be implemented in order to actually process the given entity, without change it's state to already processed- Specified by:
processin classEntityBatchPollingTask<Notification>
-
-