All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.drools.KnowledgeBaseConfiguration Maven / Gradle / Ivy

The newest version!
/**
 * Copyright 2010 JBoss Inc
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.drools;

import org.drools.conf.KnowledgeBaseOptionsConfiguration;

/**
 *

* A class to store KnowledgeBase related configuration. It must be used at KnowledgeBase instantiation time * or not used at all. *

* *

* This class will automatically load default values from a number of places, accumulating properties from each location. * This list of locations, in given priority is: * System properties, home directory, working directory, META-INF/ of optionally provided classLoader * META-INF/ of Thread.currentThread().getContextClassLoader() and META-INF/ of ClassLoader.getSystemClassLoader() *

* *

* So if you want to set a default configuration value for all your new KnowledgeBase, you can simply set the property as * a System property. *

* *

* After the KnowledgeBase is created, it makes the configuration immutable and there is no way to make it * mutable again. This is to avoid inconsistent behaviour inside KnowledgeBase. *

* *

* The following properties are supported: *

    *
  • drools.maintainTms = <true|false>
  • *
  • drools.assertBehaviour = <identity|equality>
  • *
  • drools.logicalOverride = <discard|preserve>
  • *
  • drools.sequential = <true|false>
  • *
  • drools.sequential.agenda = <sequential|dynamic>
  • *
  • drools.removeIdentities = <true|false>
  • *
  • drools.shareAlphaNodes = <true|false>
  • *
  • drools.shareBetaNodes = <true|false>
  • *
  • drools.alphaNodeHashingThreshold = <1...n>
  • *
  • drools.compositeKeyDepth = <1..3>
  • *
  • drools.indexLeftBetaMemory = <true/false>
  • *
  • drools.indexRightBetaMemory = <true/false>
  • *
  • drools.consequenceExceptionHandler = <qualified class name>
  • *
  • drools.maxThreads = <-1|1..n>
  • *
  • drools.multithreadEvaluation = <true|false>
  • *
  • drools.mbeans = <enabled|disabled>
  • *
*

* * *

* The follow properties have not yet been migrated from the Drools 4.0 api: *

    *
  • drools.executorService = <qualified class name>
  • *
  • drools.conflictResolver = <qualified class name>
  • *
  • drools.ruleBaseUpdateHandler = <qualified class name>
  • *
*

*/ public interface KnowledgeBaseConfiguration extends PropertiesConfiguration, KnowledgeBaseOptionsConfiguration { }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy