Class DefaultRuleEngineJobService
- java.lang.Object
-
- de.hybris.platform.ruleengineservices.jobs.impl.DefaultRuleEngineJobService
-
- All Implemented Interfaces:
RuleEngineJobService
public class DefaultRuleEngineJobService extends java.lang.Object implements RuleEngineJobService
Default implementation of theRuleEngineJobService
-
-
Constructor Summary
Constructors Constructor Description DefaultRuleEngineJobService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcountRunningJobs(java.lang.String ruleEngineJobCode)Checks how many currently active cron jobs a RuleEngineJob hasprotected RuleEngineJobModelcreateNewRuleEngineJob(java.lang.String jobCode, java.lang.String springBeanName)protected voidcreateTriggerForCronJob(CronJobModel cronJob)protected ClusterServicegetClusterService()protected CronJobServicegetCronJobService()protected ModelServicegetModelService()protected RuleEngineCronJobDAOgetRuleEngineCronJobDAO()protected java.util.Optional<RuleEngineJobModel>getRuleEngineJob(java.lang.String jobCode)RuleEngineJobModelgetRuleEngineJob(java.lang.String jobCode, java.lang.String springBeanName)Retrieves (or creates one if absent) the RuleEngineJob, identified by given spring Bean nameprotected java.lang.StringgetTriggerCronExpression()booleanisRunning(java.lang.String ruleEngineJobCode)Checks whether the RuleEngineJob has any active cron jobsprotected voidlinkCronJobToJob(RuleEngineJobModel ruleEngineJob, RuleEngineCronJobModel ruleEngineCronJob)voidsetClusterService(ClusterService clusterService)voidsetCronJobService(CronJobService cronJobService)voidsetModelService(ModelService modelService)voidsetRuleEngineCronJobDAO(RuleEngineCronJobDAO ruleEngineCronJobDAO)voidsetTriggerCronExpression(java.lang.String triggerCronExpression)RuleEngineCronJobModeltriggerCronJob(java.lang.String ruleEngineJobCode, java.lang.String jobPerformableBeanName, java.util.function.Supplier<RuleEngineCronJobModel> cronJobSupplier)Given the rule engine Job, create a new instance ofRuleEngineCronJobModeland run it if no other associated cron job is currently in execution
-
-
-
Method Detail
-
getRuleEngineJob
public RuleEngineJobModel getRuleEngineJob(java.lang.String jobCode, java.lang.String springBeanName)
Description copied from interface:RuleEngineJobServiceRetrieves (or creates one if absent) the RuleEngineJob, identified by given spring Bean name- Specified by:
getRuleEngineJobin interfaceRuleEngineJobService- Parameters:
jobCode- job codespringBeanName- spring bean name- Returns:
- an instance of
RuleEngineJobModel
-
isRunning
public boolean isRunning(java.lang.String ruleEngineJobCode)
Description copied from interface:RuleEngineJobServiceChecks whether the RuleEngineJob has any active cron jobs- Specified by:
isRunningin interfaceRuleEngineJobService- Parameters:
ruleEngineJobCode- code of the Job to check against- Returns:
- boolean indicating whether this job has any active cron jobs
-
countRunningJobs
public int countRunningJobs(java.lang.String ruleEngineJobCode)
Description copied from interface:RuleEngineJobServiceChecks how many currently active cron jobs a RuleEngineJob has- Specified by:
countRunningJobsin interfaceRuleEngineJobService- Parameters:
ruleEngineJobCode- code of the Job to check against- Returns:
- number of active cron jobs currently running
-
triggerCronJob
public RuleEngineCronJobModel triggerCronJob(java.lang.String ruleEngineJobCode, java.lang.String jobPerformableBeanName, java.util.function.Supplier<RuleEngineCronJobModel> cronJobSupplier)
Description copied from interface:RuleEngineJobServiceGiven the rule engine Job, create a new instance ofRuleEngineCronJobModeland run it if no other associated cron job is currently in execution- Specified by:
triggerCronJobin interfaceRuleEngineJobService- Parameters:
ruleEngineJobCode- the code of the Job to create the cron job withjobPerformableBeanName- name of a bean ofJobPerformableto runcronJobSupplier- a supplier for the instance ofRuleEngineCronJobModel- Returns:
- instance of
RuleEngineCronJobModel
-
linkCronJobToJob
protected void linkCronJobToJob(RuleEngineJobModel ruleEngineJob, RuleEngineCronJobModel ruleEngineCronJob)
-
getRuleEngineJob
protected java.util.Optional<RuleEngineJobModel> getRuleEngineJob(java.lang.String jobCode)
-
createNewRuleEngineJob
protected RuleEngineJobModel createNewRuleEngineJob(java.lang.String jobCode, java.lang.String springBeanName)
-
createTriggerForCronJob
protected void createTriggerForCronJob(CronJobModel cronJob)
-
getModelService
protected ModelService getModelService()
-
setModelService
public void setModelService(ModelService modelService)
-
getRuleEngineCronJobDAO
protected RuleEngineCronJobDAO getRuleEngineCronJobDAO()
-
setRuleEngineCronJobDAO
public void setRuleEngineCronJobDAO(RuleEngineCronJobDAO ruleEngineCronJobDAO)
-
setTriggerCronExpression
public void setTriggerCronExpression(java.lang.String triggerCronExpression)
-
getTriggerCronExpression
protected java.lang.String getTriggerCronExpression()
-
getCronJobService
protected CronJobService getCronJobService()
-
setCronJobService
public void setCronJobService(CronJobService cronJobService)
-
getClusterService
protected ClusterService getClusterService()
-
setClusterService
public void setClusterService(ClusterService clusterService)
-
-