Interface KieBaseModel


public interface KieBaseModel
KieBaseModel is a model allowing to programmatically define a KieBase
See Also:
  • Method Details

    • newKieSessionModel

      KieSessionModel newKieSessionModel(String name)
      Creates a new KieSessionModel with the given name and adds it to this KieBaseModel
      Parameters:
      name - The name of the new KieSessionModel to be created
      Returns:
      The new KieSessionModel
    • removeKieSessionModel

      KieBaseModel removeKieSessionModel(String qName)
      Removes the KieSessionModel with the give name from this KieBaseModel
      Parameters:
      qName - The name of the KieSessionModel to be removed
    • getKieSessionModels

      Map<String,KieSessionModel> getKieSessionModels()
      Returns all the KieSessionModel defined in this KieBaseModel mapped by their names
    • addInclude

      KieBaseModel addInclude(String kBaseName)
      Includes the resources of the KieBase with the given name in this KieBaseModel
    • removeInclude

      KieBaseModel removeInclude(String kBaseName)
      Remove the inclusion of the KieBase with the given name
    • getName

      String getName()
      Returns the name of the KieBase defined by this KieBaseModel
    • getPackages

      List<String> getPackages()
      Returns the ordered list of all the package patterns used to define the set of resources that have to be included in the KieBase. If this list is empty, "*" is assumed by default, meaning that all the resources stored under a folder with the same name of this KieBaseModel will be included in the compiled KieBase regardless of the package they belong to. The list of package patterns is ordered and earlier patterns are applied before later patterns. For example, if you specify "org.foo.*,!org.foo.impl" the second pattern has no effect since all org.foo packages have already been selected by the first pattern. Instead, you should specify "!org.foo.impl,org.foo.*", which will export all org.foo packages except org.foo.impl.
    • getIncludes

      Set<String> getIncludes()
      Returns all KieBases included by this one
    • addPackage

      KieBaseModel addPackage(String pkg)
      Adds a package (pattern) to the list of the packages defining the set of resources that have to be included in the KieBase.
    • removePackage

      KieBaseModel removePackage(String pkg)
      Removes a package (pattern) from the list of the packages defining the set of resources that have to be included in the KieBase.
    • getEqualsBehavior

      EqualityBehaviorOption getEqualsBehavior()
      Returns the EqualityBehavior of this KieBaseModel
    • setEqualsBehavior

      KieBaseModel setEqualsBehavior(EqualityBehaviorOption equalsBehaviour)
      Sets the EqualityBehavior for this KieBaseModel. Default is EqualityBehaviorOption.IDENTITY
    • getPrototypes

      PrototypesOption getPrototypes()
      Sets the PrototypesOption for this KieBaseModel. Default is PrototypesOption.DISABLED
    • setPrototypes

      KieBaseModel setPrototypes(PrototypesOption prototypes)
      Returns the PrototypesOption of this KieBaseModel
    • getMutability

      KieBaseMutabilityOption getMutability()
      Returns the KieBaseMutabilityOption of this KieBaseModel
    • setMutability

      KieBaseModel setMutability(KieBaseMutabilityOption mutability)
      Sets the KieBaseMutabilityOption for this KieBaseModel. Default is KieBaseMutabilityOption.ALLOWED
    • getSessionsPool

      SessionsPoolOption getSessionsPool()
      Returns the session pool configuration of this KieBaseModel
    • setSessionsPool

      KieBaseModel setSessionsPool(SessionsPoolOption sessionPool)
      Sets the SessionPoolOption used by the KieBase to create new sessions Default is SessionPoolOption.NO
    • getEventProcessingMode

      EventProcessingOption getEventProcessingMode()
      Returns the EventProcessingMode of this KieBaseModel
    • setEventProcessingMode

      KieBaseModel setEventProcessingMode(EventProcessingOption eventProcessingMode)
      Sets the EventProcessingOption for this KieBaseModel Default is EventProcessingOption.CLOUD
    • getDeclarativeAgenda

      DeclarativeAgendaOption getDeclarativeAgenda()
      Returns the DeclarativeAgendaOption of this KieBaseModel
    • setDeclarativeAgenda

      KieBaseModel setDeclarativeAgenda(DeclarativeAgendaOption declarativeAgenda)
      Sets the DeclarativeAgendaOption for this KieBaseModel Default is DeclarativeAgendaOption.DISABLED
    • getBetaRangeIndexOption

      BetaRangeIndexOption getBetaRangeIndexOption()
      Returns the BetaRangeIndexOption of this KieBaseModel
    • setBetaRangeIndexOption

      KieBaseModel setBetaRangeIndexOption(BetaRangeIndexOption betaRangeIndexOption)
      Sets the BetaRangeIndexOption for this KieBaseModel Default is BetaRangeIndexOption.DISABLED
    • getSequential

      SequentialOption getSequential()
      Returns the SequentialOption of this KieBaseModel
    • setSequential

      KieBaseModel setSequential(SequentialOption sequential)
      Sets the SequentialOption for this KieBaseModel Default is SequentialOption.NO
    • setScope

      KieBaseModel setScope(String scope)
      Sets the CDI scope for this KieBaseModel
    • getScope

      String getScope()
      Returns the CDI scope of this KieBaseModel Default is jakarta.enterprise.context.ApplicationScoped
    • getRuleTemplates

      List<RuleTemplateModel> getRuleTemplates()
      Returns the list of all RuleTemplateModels defined for this KieBaseModel
    • addRuleTemplate

      KieBaseModel addRuleTemplate(String dtable, String template, int row, int col)
      Defines a new RuleTemplateModel for this KieBaseModel
    • isDefault

      boolean isDefault()
      Returns true if this KieBaseModel is the default one
    • setDefault

      KieBaseModel setDefault(boolean isDefault)
      Sets the KieBase generated from this KieBaseModel as the default one, i.e. the one that can be loaded from the KieContainer without having to pass its name. Note that only one default KieBaseModel is allowed in a given KieContainer so if more than one is found (maybe because a given KieContainer includes many KieModules) a warning is emitted and all the defaults are disabled so all the KieBases will be accessible only by name