Class BackgroundJobService
- java.lang.Object
-
- com.atlassian.confluence.impl.backgroundjob.BackgroundJobService
-
public class BackgroundJobService extends Object
The service that allows to add new background tasks.- Since:
- 8.1.0
-
-
Constructor Summary
Constructors Constructor Description BackgroundJobService(BackgroundJobDAO backgroundJobDAO, List<BackgroundJobProcessor> processors, Supplier<Instant> timeSupplier, Supplier<org.springframework.transaction.support.TransactionTemplate> transactionTemplateSupplier)BackgroundJobService(BackgroundJobDAO backgroundJobDAO, org.springframework.transaction.PlatformTransactionManager transactionManager, List<BackgroundJobProcessor> processors)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LongaddJob(Class<?> processorClass, Map<String,Object> parameters, String description, Instant runAt)Adds a new background job.Map<String,Object>convertToHashMap(String customerInfoJSON)StringconvertToJson(Map<String,Object> map)intprocessNextJobs()Process a next portion of active jobs.voidregisterBackgroundJobProcessor(BackgroundJobProcessor backgroundJobProcessor)Registers a background processor.voidunregisterBackgroundJobProcessor(BackgroundJobProcessor backgroundJobProcessor)Unregisters a background processor.
-
-
-
Constructor Detail
-
BackgroundJobService
public BackgroundJobService(BackgroundJobDAO backgroundJobDAO, org.springframework.transaction.PlatformTransactionManager transactionManager, List<BackgroundJobProcessor> processors)
-
BackgroundJobService
public BackgroundJobService(BackgroundJobDAO backgroundJobDAO, List<BackgroundJobProcessor> processors, Supplier<Instant> timeSupplier, Supplier<org.springframework.transaction.support.TransactionTemplate> transactionTemplateSupplier)
-
-
Method Detail
-
addJob
public Long addJob(Class<?> processorClass, Map<String,Object> parameters, String description, Instant runAt)
Adds a new background job.- Parameters:
processorClass- processor's classparameters- job parametersrunAt- desired execution time (or Instant.now if it has to be run immediately)- Returns:
- job id
-
processNextJobs
@Internal public int processNextJobs()
Process a next portion of active jobs.- Returns:
-
registerBackgroundJobProcessor
public void registerBackgroundJobProcessor(BackgroundJobProcessor backgroundJobProcessor)
Registers a background processor.- Parameters:
backgroundJobProcessor-
-
unregisterBackgroundJobProcessor
public void unregisterBackgroundJobProcessor(BackgroundJobProcessor backgroundJobProcessor)
Unregisters a background processor.- Parameters:
backgroundJobProcessor-
-
-