org.kie.internal

## Class KnowledgeBaseFactory

- java.lang.Object
- - org.kie.internal.KnowledgeBaseFactory

-     public class KnowledgeBaseFactory
      extends 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:
    `KnowledgeBase`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `KnowledgeBaseFactory()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static org.kie.api.runtime.Environment` | `newEnvironment()`
    `static KnowledgeBase` | `newKnowledgeBase()` Create a new KnowledgeBase using the default KnowledgeBaseConfiguration
    `static KnowledgeBase` | `newKnowledgeBase(org.kie.api.KieBaseConfiguration conf)` Create a new KnowledgeBase using the given KnowledgeBaseConfiguration
    `static KnowledgeBase` | `newKnowledgeBase(String kbaseId)` Create a new KnowledgeBase using the default KnowledgeBaseConfiguration and the given KnowledgeBase ID.
    `static KnowledgeBase` | `newKnowledgeBase(String kbaseId, org.kie.api.KieBaseConfiguration conf)` Create a new KnowledgeBase using the given KnowledgeBaseConfiguration and the given KnowledgeBase ID.
    `static org.kie.api.KieBaseConfiguration` | `newKnowledgeBaseConfiguration()` Create a KnowledgeBaseConfiguration on which properties can be set.
    `static org.kie.api.KieBaseConfiguration` | `newKnowledgeBaseConfiguration(Properties properties, 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(Properties properties)` Create a KnowledgeSessionConfiguration on which properties can be set.
    `static void` | `setKnowledgeBaseServiceFactory(KnowledgeBaseFactoryService serviceFactory)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### KnowledgeBaseFactory

          public KnowledgeBaseFactory()

  - ### Method Detail

    - #### newKnowledgeBase

          public static KnowledgeBase newKnowledgeBase()

      Create a new KnowledgeBase using the default KnowledgeBaseConfiguration
      Returns:
        The KnowledgeBase

    - #### newKnowledgeBase

          public static KnowledgeBase newKnowledgeBase(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

    - #### newKnowledgeBase

          public static KnowledgeBase newKnowledgeBase(org.kie.api.KieBaseConfiguration conf)

      Create a new KnowledgeBase using the given KnowledgeBaseConfiguration
      Returns:
        The KnowledgeBase

    - #### newKnowledgeBase

          public static KnowledgeBase newKnowledgeBase(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(Properties properties,
                                                                                       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(Properties properties)

      Create a KnowledgeSessionConfiguration on which properties can be set.
      Returns:
        The KnowledgeSessionConfiguration.

    - #### newEnvironment

          public static org.kie.api.runtime.Environment newEnvironment()

    - #### setKnowledgeBaseServiceFactory

          public static void setKnowledgeBaseServiceFactory(KnowledgeBaseFactoryService serviceFactory)

Copyright © 2001–2017 JBoss by Red Hat. All rights reserved.