Class DefaultRulePublishingSpliterator

java.lang.Object
de.hybris.platform.ruleengine.init.impl.DefaultRulePublishingSpliterator
All Implemented Interfaces:
RulePublishingSpliterator

public class DefaultRulePublishingSpliterator extends Object implements RulePublishingSpliterator
Default implementation of RulePublishingSpliterator
  • Constructor Details

    • DefaultRulePublishingSpliterator

      public DefaultRulePublishingSpliterator()
  • Method Details

    • publishRulesAsync

      public RulePublishingFuture publishRulesAsync(org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId containerReleaseId, List<String> ruleUuids, KIEModuleCacheBuilder cache)
      Description copied from interface: RulePublishingSpliterator
      split and compile multiple rules in parallel
      Specified by:
      publishRulesAsync in interface RulePublishingSpliterator
      Parameters:
      kieModuleModel - instance of KieModuleModel
      containerReleaseId - Kie container release id ReleaseId
      ruleUuids - a list of rule uuids
      cache - instance of KIEModuleCacheBuilder
      Returns:
      instance of RulePublishingFuture
    • setUp

      @PostConstruct protected void setUp()
    • splitListByThreads

      public <T> List<List<T>> splitListByThreads(List<T> list, int numberOfThreads)
    • createNewWorker

      protected Thread createNewWorker(List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, List<String> ruleUuids, List<RuleEngineActionResult> ruleEngineActionResults, KIEModuleCacheBuilder cache)
    • startWorkers

      protected void startWorkers(Set<Thread> workers)
    • addRulesBuilder

      protected RuleEngineActionResult addRulesBuilder(List<org.kie.api.builder.KieBuilder> kieBuilders, org.kie.api.builder.model.KieModuleModel kieModuleModel, org.kie.api.builder.ReleaseId releaseId, List<String> ruleUuids, KIEModuleCacheBuilder cache)
    • createKieBuilderErrorResult

      protected org.kie.api.builder.Results createKieBuilderErrorResult(DroolsRuleModel rule, 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, 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)