[jboss-svn-commits] JBL Code SVN: r32484 - labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Apr 9 11:08:54 EDT 2010
Author: tirelli
Date: 2010-04-09 11:08:54 -0400 (Fri, 09 Apr 2010)
New Revision: 32484
Added:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf/ClassLoaderCacheOption.java
Log:
JBRULES-2067: adding support to class resolution caching on user and system classloaders to improve compilation performance.
Added: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf/ClassLoaderCacheOption.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf/ClassLoaderCacheOption.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf/ClassLoaderCacheOption.java 2010-04-09 15:08:54 UTC (rev 32484)
@@ -0,0 +1,67 @@
+/*
+ * Copyright 2008 Red Hat
+ *
+ * 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.builder.conf;
+
+import org.drools.conf.SingleValueKnowledgeBaseOption;
+
+
+/**
+ * An Enum for ClassLoaderCacheOption option.
+ *
+ * drools.classLoaderCacheEnabled = <true|false>
+ *
+ * DEFAULT = true
+ *
+ * When resolving classes on the classpath, drools calls the parent classloader to
+ * resolve them. Usually classloaders do not cache results, making compilation very
+ * expensive on IO. By default, Drools will cache results of class resolution on the
+ * external parent classloader in order to improve compilation performance. This
+ * cache can be disabled by setting this option to false.
+ *
+ * This option is new to Drools 5.1. Before 5.1, Drools would never cache class
+ * resolution results.
+ *
+ * @author etirelli
+ */
+public enum ClassLoaderCacheOption implements SingleValueKnowledgeBuilderOption, SingleValueKnowledgeBaseOption {
+
+ ENABLED(true),
+ DISABLED(false);
+
+ /**
+ * The property name for the process string escapes option
+ */
+ public static final String PROPERTY_NAME = "drools.classLoaderCacheEnabled";
+
+ private boolean value;
+
+ ClassLoaderCacheOption( final boolean value ) {
+ this.value = value;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getPropertyName() {
+ return PROPERTY_NAME;
+ }
+
+ public boolean isClassLoaderCacheEnabled() {
+ return this.value;
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/builder/conf/ClassLoaderCacheOption.java
___________________________________________________________________
Name: svn:executable
+ *
More information about the jboss-svn-commits
mailing list