Class RuleBaseFactory


  • public class RuleBaseFactory
    extends java.lang.Object

    This factory will create and return a KnowledgeBase instance, an optional KnowledgeBaseConfiguration can be provided. The KnowledgeBaseConfiguration is also itself created from this factory.

     KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
     

    Create sequential KnowledgeBase using the given ClassLoader.

     Properties properties = new Properties();
     properties.setOption( SequentialOption.YES );
     KnowledgeBaseConfiguration kbConf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(properties, myClassLoader);
     KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase(kbConf);
     

    The above could also have used the supported property

     properties.setProperty( "org.kie.sequential", "true");
     
    See Also:
    InternalRuleBase
    • Constructor Summary

      Constructors 
      Constructor Description
      RuleBaseFactory()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static org.kie.api.KieBaseConfiguration newKnowledgeBaseConfiguration()
      Create a KnowledgeBaseConfiguration on which properties can be set.
      static org.kie.api.KieBaseConfiguration newKnowledgeBaseConfiguration​(java.util.Properties properties, java.lang.ClassLoader... classLoaders)
      Create a KnowledgeBaseConfiguration on which properties can be set.
      static org.kie.api.runtime.KieSessionConfiguration newKnowledgeSessionConfiguration()
      Create a KnowledgeSessionConfiguration on which properties can be set.
      static org.kie.api.runtime.KieSessionConfiguration newKnowledgeSessionConfiguration​(org.kie.internal.utils.ChainedProperties chained, java.lang.ClassLoader classLoader)  
      static InternalRuleBase newRuleBase()
      Create a new KnowledgeBase using the default KnowledgeBaseConfiguration
      static InternalRuleBase newRuleBase​(java.lang.String kbaseId)
      Create a new KnowledgeBase using the default KnowledgeBaseConfiguration and the given KnowledgeBase ID.
      static InternalRuleBase newRuleBase​(java.lang.String kbaseId, org.kie.api.KieBaseConfiguration conf)
      Create a new KnowledgeBase using the given KnowledgeBaseConfiguration and the given KnowledgeBase ID.
      static InternalRuleBase newRuleBase​(org.kie.api.KieBaseConfiguration conf)
      Create a new KnowledgeBase using the given KnowledgeBaseConfiguration
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RuleBaseFactory

        public RuleBaseFactory()
    • Method Detail

      • newRuleBase

        public static InternalRuleBase newRuleBase()
        Create a new KnowledgeBase using the default KnowledgeBaseConfiguration
        Returns:
        The KnowledgeBase
      • newRuleBase

        public static InternalRuleBase newRuleBase​(java.lang.String kbaseId)
        Create a new KnowledgeBase using the default KnowledgeBaseConfiguration and the given KnowledgeBase ID.
        Parameters:
        kbaseId - A string Identifier for the knowledge base. Specially useful when enabling JMX monitoring and management, as that ID will be used to compose the JMX ObjectName for all related MBeans. The application must ensure all kbase IDs are unique.
        Returns:
        The KnowledgeBase
      • newRuleBase

        public static InternalRuleBase newRuleBase​(org.kie.api.KieBaseConfiguration conf)
        Create a new KnowledgeBase using the given KnowledgeBaseConfiguration
        Returns:
        The KnowledgeBase
      • newRuleBase

        public static InternalRuleBase newRuleBase​(java.lang.String kbaseId,
                                                   org.kie.api.KieBaseConfiguration conf)
        Create a new KnowledgeBase using the given KnowledgeBaseConfiguration and the given KnowledgeBase ID.
        Parameters:
        kbaseId - A string Identifier for the knowledge base. Specially useful when enabling JMX monitoring and management, as that ID will be used to compose the JMX ObjectName for all related MBeans. The application must ensure all kbase IDs are unique.
        Returns:
        The KnowledgeBase
      • newKnowledgeBaseConfiguration

        public static org.kie.api.KieBaseConfiguration newKnowledgeBaseConfiguration()
        Create a KnowledgeBaseConfiguration on which properties can be set.
        Returns:
        The KnowledgeBaseConfiguration.
      • newKnowledgeBaseConfiguration

        public static org.kie.api.KieBaseConfiguration newKnowledgeBaseConfiguration​(java.util.Properties properties,
                                                                                     java.lang.ClassLoader... classLoaders)
        Create a KnowledgeBaseConfiguration on which properties can be set. Use the given properties file and ClassLoader - either of which can be null.
        Returns:
        The KnowledgeBaseConfiguration.
      • newKnowledgeSessionConfiguration

        public static org.kie.api.runtime.KieSessionConfiguration newKnowledgeSessionConfiguration()
        Create a KnowledgeSessionConfiguration on which properties can be set.
        Returns:
        The KnowledgeSessionConfiguration.
      • newKnowledgeSessionConfiguration

        public static org.kie.api.runtime.KieSessionConfiguration newKnowledgeSessionConfiguration​(org.kie.internal.utils.ChainedProperties chained,
                                                                                                   java.lang.ClassLoader classLoader)