Class DefaultRulePublishingSpliterator
- java.lang.Object
-
- de.hybris.platform.ruleengine.init.impl.DefaultRulePublishingSpliterator
-
- All Implemented Interfaces:
RulePublishingSpliterator
public class DefaultRulePublishingSpliterator extends java.lang.Object implements RulePublishingSpliterator
Default implementation ofRulePublishingSpliterator
-
-
Constructor Summary
Constructors Constructor Description DefaultRulePublishingSpliterator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ResultItemaddNewResultItemOf(RuleEngineActionResult result, MessageLevel messageLevel, java.lang.String message)protected RuleEngineActionResultaddRulesBuilder(java.util.List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, java.util.List<java.lang.String> ruleUuids, KIEModuleCacheBuilder cache)protected org.kie.api.builder.ResultscreateKieBuilderErrorResult(DroolsRuleModel rule, java.lang.Exception e)protected RuleEngineActionResultcreateNewResult(org.kie.api.builder.Results results)protected java.lang.ThreadcreateNewWorker(java.util.List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, java.util.List<java.lang.String> ruleUuids, java.util.List<RuleEngineActionResult> ruleEngineActionResults, KIEModuleCacheBuilder cache)protected EngineRuleDaogetEngineRuleDao()protected org.kie.api.KieServicesgetKieServices()protected RuleEngineBootstrap<org.kie.api.KieServices,org.kie.api.runtime.KieContainer,DroolsKIEModuleModel>getRuleEngineBootstrap()protected SuspendResumeTaskManagergetSuspendResumeTaskManager()protected TaskContextgetTaskContext()RulePublishingFuturepublishRulesAsync(org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId containerReleaseId, java.util.List<java.lang.String> ruleUuids, KIEModuleCacheBuilder cache)split and compile multiple rules in parallelvoidsetEngineRuleDao(EngineRuleDao engineRuleDao)voidsetRuleEngineBootstrap(RuleEngineBootstrap<org.kie.api.KieServices,org.kie.api.runtime.KieContainer,DroolsKIEModuleModel> ruleEngineBootstrap)voidsetSuspendResumeTaskManager(SuspendResumeTaskManager suspendResumeTaskManager)voidsetTaskContext(TaskContext taskContext)protected voidsetUp()<T> java.util.List<java.util.List<T>>splitListByThreads(java.util.List<T> list, int numberOfThreads)protected voidstartWorkers(java.util.Set<java.lang.Thread> workers)protected voidwriteKModuleXML(org.kie.api.builder.model.KieModuleModel module, org.kie.api.builder.KieFileSystem kfs)voidwritePomXML(org.kie.api.builder.ReleaseId releaseId, org.kie.api.builder.KieFileSystem kfs)
-
-
-
Method Detail
-
publishRulesAsync
public RulePublishingFuture publishRulesAsync(org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId containerReleaseId, java.util.List<java.lang.String> ruleUuids, KIEModuleCacheBuilder cache)
Description copied from interface:RulePublishingSpliteratorsplit and compile multiple rules in parallel- Specified by:
publishRulesAsyncin interfaceRulePublishingSpliterator- Parameters:
kieModuleModel- instance ofKieModuleModelcontainerReleaseId- Kie container release idReleaseIdruleUuids- a list of rule uuidscache- instance ofKIEModuleCacheBuilder- Returns:
- instance of
RulePublishingFuture
-
setUp
@PostConstruct protected void setUp()
-
splitListByThreads
public <T> java.util.List<java.util.List<T>> splitListByThreads(java.util.List<T> list, int numberOfThreads)
-
createNewWorker
protected java.lang.Thread createNewWorker(java.util.List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, java.util.List<java.lang.String> ruleUuids, java.util.List<RuleEngineActionResult> ruleEngineActionResults, KIEModuleCacheBuilder cache)
-
startWorkers
protected void startWorkers(java.util.Set<java.lang.Thread> workers)
-
addRulesBuilder
protected RuleEngineActionResult addRulesBuilder(java.util.List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, java.util.List<java.lang.String> ruleUuids, KIEModuleCacheBuilder cache)
-
createKieBuilderErrorResult
protected org.kie.api.builder.Results createKieBuilderErrorResult(DroolsRuleModel rule, java.lang.Exception e)
-
writeKModuleXML
protected void writeKModuleXML(org.kie.api.builder.model.KieModuleModel module, org.kie.api.builder.KieFileSystem kfs)
-
writePomXML
public void writePomXML(org.kie.api.builder.ReleaseId releaseId, org.kie.api.builder.KieFileSystem kfs)
-
createNewResult
protected RuleEngineActionResult createNewResult(org.kie.api.builder.Results results)
-
addNewResultItemOf
protected ResultItem addNewResultItemOf(RuleEngineActionResult result, MessageLevel messageLevel, java.lang.String message)
-
getKieServices
protected org.kie.api.KieServices getKieServices()
-
getEngineRuleDao
protected EngineRuleDao getEngineRuleDao()
-
getTaskContext
protected TaskContext getTaskContext()
-
setTaskContext
public void setTaskContext(TaskContext taskContext)
-
setEngineRuleDao
public void setEngineRuleDao(EngineRuleDao engineRuleDao)
-
getRuleEngineBootstrap
protected RuleEngineBootstrap<org.kie.api.KieServices,org.kie.api.runtime.KieContainer,DroolsKIEModuleModel> getRuleEngineBootstrap()
-
setRuleEngineBootstrap
public void setRuleEngineBootstrap(RuleEngineBootstrap<org.kie.api.KieServices,org.kie.api.runtime.KieContainer,DroolsKIEModuleModel> ruleEngineBootstrap)
-
getSuspendResumeTaskManager
protected SuspendResumeTaskManager getSuspendResumeTaskManager()
-
setSuspendResumeTaskManager
public void setSuspendResumeTaskManager(SuspendResumeTaskManager suspendResumeTaskManager)
-
-