[jboss-svn-commits] JBL Code SVN: r31000 - in labs/jbossrules/trunk: drools-api/src/main/java/org/drools/util and 17 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sun Jan 10 01:28:31 EST 2010
Author: mark.proctor at jboss.com
Date: 2010-01-10 01:28:30 -0500 (Sun, 10 Jan 2010)
New Revision: 31000
Removed:
labs/jbossrules/trunk/drools-api/build.properties
Modified:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ChainedProperties.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ProviderLocator.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaFunctionBuilder.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderTest.java
labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/.classpath
labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/META-INF/MANIFEST.MF
labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/.classpath
labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/META-INF/MANIFEST.MF
labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/src/main/java/org/drools/osgi/impl/Activator.java
labs/jbossrules/trunk/drools-container/pom.xml
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/SessionConfiguration.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldAccessorCache.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractRuleBase.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalRuleBase.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ObjectTypeNode.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeData.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeRegistry.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/JavaDialectRuntimeData.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MVELDialectRuntimeData.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/DefaultEscalatedDeadlineHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/SendIcal.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/test/java/org/drools/task/service/IcalTest.java
labs/jbossrules/trunk/drools-process/drools-workitems/src/test/java/org/drools/process/workitem/email/EmailWorkItemHandlerTest.java
Log:
JBRULES-2351 OSGi Ready
-Classloader reworking, to make sure it can always find the user classes as well as the drools classes.
Deleted: labs/jbossrules/trunk/drools-api/build.properties
===================================================================
--- labs/jbossrules/trunk/drools-api/build.properties 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-api/build.properties 2010-01-10 06:28:30 UTC (rev 31000)
@@ -1,14 +0,0 @@
-bin.includes = META-INF/,\
- icons/,\
- lib/,\
- drools-core.jar
-src.includes = META-INF/,\
- build.properties,\
- .classpath,\
- .project,\
- icons/
-jars.compile.order = drools-core.jar
-source.drools-core.jar = src/main/java/
-output.drools-core.jar = target/classes/
-jars.extra.classpath = lib/drools-asm-2.2.1.jar,\
- lib/xstream-1.1.3.jar
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ChainedProperties.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ChainedProperties.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ChainedProperties.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -30,28 +30,16 @@
public ChainedProperties() {
}
-
- public ChainedProperties(String confFileName) {
- this( null,
- confFileName );
- }
-
- public ChainedProperties(ClassLoader classLoader,
- String confFileName) {
- this( classLoader,
- confFileName,
+
+ public ChainedProperties(String confFileName, ClassLoader classLoader) {
+ this( confFileName,
+ classLoader,
true );
- }
-
- public ChainedProperties(ClassLoader classLoader,
- String confFileName,
+ }
+
+ public ChainedProperties(String confFileName,
+ ClassLoader classLoader,
boolean populateDefaults) {
- if ( classLoader == null ) {
- classLoader = Thread.currentThread().getContextClassLoader();
- if ( classLoader == null ) {
- classLoader = this.getClass().getClassLoader();
- }
- }
this.props = new ArrayList<Properties>();
this.defaultProps = new ArrayList<Properties>();
@@ -72,68 +60,55 @@
// Working directory properties file
loadProperties( "drools." + confFileName,
this.props );
+
+// if ( classLoader == null ) {
+// classLoader = Thread.currentThread().getContextClassLoader();
+// if ( classLoader == null ) {
+// classLoader = cls.getClassLoader();
+// }
+// }
// check META-INF directories for all known ClassLoaders
ClassLoader confClassLoader = classLoader;
- if ( confClassLoader != null ) {
- loadProperties( getResources( "META-INF/drools." + confFileName,
- confClassLoader ),
- this.props );
- }
+ loadProperties( getResources( "META-INF/drools." + confFileName,
+ confClassLoader ),
+ this.props );
+ loadProperties( getResources( "/META-INF/drools." + confFileName,
+ confClassLoader ),
+ this.props );
- confClassLoader = getClass().getClassLoader();
+ confClassLoader = ClassLoader.getSystemClassLoader();
if ( confClassLoader != null && confClassLoader != classLoader ) {
loadProperties( getResources( "META-INF/drools." + confFileName,
confClassLoader ),
this.props );
- }
-
- confClassLoader = Thread.currentThread().getContextClassLoader();
- if ( confClassLoader != null && confClassLoader != classLoader ) {
- loadProperties( getResources( "META-INF/drools." + confFileName,
+ loadProperties( getResources( "/META-INF/drools." + confFileName,
confClassLoader ),
- this.props );
+ this.props );
}
- confClassLoader = ClassLoader.getSystemClassLoader();
- if ( confClassLoader != null && confClassLoader != classLoader ) {
- loadProperties( getResources( "META-INF/drools." + confFileName,
- confClassLoader ),
- this.props );
- }
-
if ( !populateDefaults ) {
return;
}
// load defaults
confClassLoader = classLoader;
- if ( confClassLoader != null ) {
- loadProperties( getResources( "META-INF/drools.default." + confFileName,
- confClassLoader ),
- this.defaultProps );
- }
+ loadProperties( getResources( "META-INF/drools.default." + confFileName,
+ confClassLoader ),
+ this.defaultProps );
+ loadProperties( getResources( "/META-INF/drools.default." + confFileName,
+ confClassLoader ),
+ this.defaultProps );
- confClassLoader = getClass().getClassLoader();
+ confClassLoader = ClassLoader.getSystemClassLoader();
if ( confClassLoader != null && confClassLoader != classLoader ) {
loadProperties( getResources( "META-INF/drools.default." + confFileName,
confClassLoader ),
this.defaultProps );
- }
-
- confClassLoader = Thread.currentThread().getContextClassLoader();
- if ( confClassLoader != null && confClassLoader != classLoader ) {
- loadProperties( getResources( "META-INF/drools.default." + confFileName,
+ loadProperties( getResources( "/META-INF/drools.default." + confFileName,
confClassLoader ),
- this.defaultProps );
+ this.defaultProps );
}
-
- confClassLoader = ClassLoader.getSystemClassLoader();
- if ( confClassLoader != null && confClassLoader != classLoader ) {
- loadProperties( getResources( "META-INF/drools.default." + confFileName,
- confClassLoader ),
- this.defaultProps );
- }
}
@SuppressWarnings("unchecked")
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ProviderLocator.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ProviderLocator.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/util/ProviderLocator.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -135,8 +135,9 @@
}
// Look for a definition in the Drools config files.
- ChainedProperties props = new ChainedProperties( classLoader,
- CONFIG_FILE );
+ ChainedProperties props = new ChainedProperties( CONFIG_FILE,
+ ClassLoaderUtil.getClassLoader( null, ProviderLocator.class ),
+ true );
String providerName = props.getProperty( serviceClass.getName(),
null );
if ( providerName != null ) {
@@ -176,8 +177,8 @@
final String msg = MessageFormat.format( ERR_NOT_FOUND,
serviceClass.getName() );
throw new ProviderInitializationException( msg );
- }
-
+ }
+
/**
* Parses a Provider-Configuration File as described in the JAR
* File Specification.
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -79,7 +79,7 @@
import org.drools.lang.dsl.DSLTokenizedMappingFile;
import org.drools.lang.dsl.DefaultExpander;
import org.drools.reteoo.ReteooRuleBase;
-import org.drools.rule.CompositeClassLoader;
+import org.drools.rule.DroolsCompositeClassLoader;
import org.drools.rule.Function;
import org.drools.rule.ImportDeclaration;
import org.drools.rule.JavaDialectRuntimeData;
@@ -127,7 +127,7 @@
*/
private final String defaultDialect;
- private CompositeClassLoader rootClassLoader;
+ private DroolsCompositeClassLoader rootClassLoader;
private Map<String, Class< ? >> globals;
@@ -190,7 +190,7 @@
//this.environment.set( EnvironmentName.DATE_FORMATS , this.dateFormats );
}
- this.rootClassLoader = new CompositeClassLoader( this.configuration.getClassLoader() );
+ this.rootClassLoader = new DroolsCompositeClassLoader( this.configuration.getClassLoader() );
this.defaultDialect = this.configuration.getDefaultDialect();
@@ -217,7 +217,7 @@
if ( ruleBase != null ) {
this.rootClassLoader = ((InternalRuleBase) ruleBase).getRootClassLoader();
} else {
- this.rootClassLoader = new CompositeClassLoader( this.configuration.getClassLoader() );
+ this.rootClassLoader = new DroolsCompositeClassLoader( this.configuration.getClassLoader() );
}
this.dateFormats = null;//(DateFormats) this.environment.get( EnvironmentName.DATE_FORMATS );
@@ -1489,7 +1489,7 @@
return name.toUpperCase().charAt( 0 ) + name.substring( 1 );
}
- public CompositeClassLoader getRootClassLoader() {
+ public DroolsCompositeClassLoader getRootClassLoader() {
return this.rootClassLoader;
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -43,7 +43,9 @@
import org.drools.rule.Package;
import org.drools.runtime.rule.AccumulateFunction;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
import org.drools.util.ClassUtils;
+import org.drools.util.CompositeClassLoader;
import org.drools.util.ConfFileUtils;
import org.drools.util.StringUtils;
import org.drools.workflow.core.Node;
@@ -156,16 +158,11 @@
private void init(ClassLoader classLoader,
Properties properties) {
- if ( classLoader == null ) {
- classLoader = Thread.currentThread().getContextClassLoader();
- if ( classLoader == null ) {
- classLoader = this.getClass().getClassLoader();
- }
- }
setClassLoader( classLoader );
- this.chainedProperties = new ChainedProperties( this.classLoader,
- "packagebuilder.conf" );
+ this.chainedProperties = new ChainedProperties( "packagebuilder.conf",
+ this.classLoader,
+ true);
if ( properties != null ) {
this.chainedProperties.addProperties( properties );
@@ -319,11 +316,9 @@
return this.classLoader;
}
- /** Use this to override the classloader that will be used for the rules. */
+ /** Use this to override the classLoader that will be used for the rules. */
public void setClassLoader(final ClassLoader classLoader) {
- if ( classLoader != null ) {
- this.classLoader = classLoader;
- }
+ this.classLoader = ClassLoaderUtil.getClassLoader( classLoader, getClass() );
}
public void addSemanticModule(SemanticModule module) {
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaFunctionBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaFunctionBuilder.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaFunctionBuilder.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -76,6 +76,9 @@
vars.put( "parameterNames",
functionDescr.getParameterNames() );
+
+ vars.put("hashCode",
+ new Integer(functionDescr.getText().hashCode() ) );
// Check that all the parameters are resolvable
final Map params = new HashMap();
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -60,8 +60,8 @@
public void testIgnoreDetauls() {
// check standard chained properties, that includes defaults
- ChainedProperties chainedProperties = new ChainedProperties( null,
- "packagebuilder.conf",
+ ChainedProperties chainedProperties = new ChainedProperties( "packagebuilder.conf",
+ getClass().getClassLoader(),
true );
//System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
// null ) );
@@ -70,9 +70,9 @@
// now check that chained properties can ignore defaults
- chainedProperties = new ChainedProperties( null,
- "packagebuilder.conf",
- false );
+ chainedProperties = new ChainedProperties( "packagebuilder.conf",
+ getClass().getClassLoader(),
+ true );
//System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
// null ) );
assertNull( chainedProperties.getProperty( "drools.dialect.java.compiler",
@@ -80,8 +80,8 @@
// now check it can find defaults again.
- chainedProperties = new ChainedProperties( null,
- "packagebuilder.conf",
+ chainedProperties = new ChainedProperties( "packagebuilder.conf",
+ getClass().getClassLoader(),
true );
//System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
// null ) );
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderTest.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderTest.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -74,7 +74,7 @@
import org.drools.process.core.Process;
import org.drools.reteoo.ReteooRuleBase;
import org.drools.rule.Behavior;
-import org.drools.rule.CompositeClassLoader;
+import org.drools.rule.DroolsCompositeClassLoader;
import org.drools.rule.Declaration;
import org.drools.rule.EvalCondition;
import org.drools.rule.GroupElement;
@@ -1088,7 +1088,7 @@
assertFalse( builder.hasErrors() );
Package bp = builder.getPackage();
- CompositeClassLoader rootClassloader = new CompositeClassLoader( Thread.currentThread().getContextClassLoader() );
+ DroolsCompositeClassLoader rootClassloader = new DroolsCompositeClassLoader( Thread.currentThread().getContextClassLoader() );
JavaDialectRuntimeData dialectData = (JavaDialectRuntimeData) bp.getDialectRuntimeRegistry().getDialectData( "java" );
dialectData.onAdd( bp.getDialectRuntimeRegistry(),
rootClassloader );
Modified: labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/.classpath
===================================================================
--- labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/.classpath 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/.classpath 2010-01-10 06:28:30 UTC (rev 31000)
@@ -4,7 +4,7 @@
<classpathentry kind="src" path="src/main/resources"/>
<classpathentry kind="src" path="src/test/java"/>
<classpathentry kind="src" path="src/test/resources"/>
- <classpathentry exported="true" kind="lib" path="lib/drools-api.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/drools-api.jar" sourcepath="/drools-api"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
Modified: labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/META-INF/MANIFEST.MF
===================================================================
--- labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/META-INF/MANIFEST.MF 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.api/META-INF/MANIFEST.MF 2010-01-10 06:28:30 UTC (rev 31000)
@@ -5,11 +5,11 @@
Bundle-Version: 5.1.0.SNAPSHOT
Bundle-Activator: org.drools.osgi.api.Activator
Bundle-Vendor: JBoss, a division of Red Hat
-Require-Bundle: org.eclipse.jdt.core
Bundle-ClassPath: .,
lib/drools-api.jar
Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Export-Package: org.drools.agent,
+Export-Package: org.drools,
+ org.drools.agent,
org.drools.builder,
org.drools.builder.conf,
org.drools.builder.help,
Modified: labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/.classpath
===================================================================
--- labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/.classpath 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/.classpath 2010-01-10 06:28:30 UTC (rev 31000)
@@ -6,8 +6,8 @@
<classpathentry exported="true" kind="lib" path="lib/joda-time.jar"/>
<classpathentry exported="true" kind="lib" path="lib/jxl.jar"/>
<classpathentry exported="true" kind="lib" path="lib/mvel2.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/drools-compiler.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/drools-core.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/drools-compiler.jar" sourcepath="/drools-compiler"/>
+ <classpathentry exported="true" kind="lib" path="lib/drools-core.jar" sourcepath="/drools-core"/>
<classpathentry exported="true" kind="lib" path="lib/drools-decisiontables.jar"/>
<classpathentry exported="true" kind="lib" path="lib/drools-templates.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
Modified: labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/META-INF/MANIFEST.MF
===================================================================
--- labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/META-INF/MANIFEST.MF 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/META-INF/MANIFEST.MF 2010-01-10 06:28:30 UTC (rev 31000)
@@ -3,7 +3,8 @@
Bundle-Name: Drools Impl Plugin
Bundle-SymbolicName: org.drools.osgi.impl
Bundle-Version: 5.1.0.SNAPSHOT
-Require-Bundle: org.drools.osgi.api
+Require-Bundle: org.drools.osgi.api,
+ org.eclipse.jdt.core;bundle-version="3.5.1"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ClassPath: .,
lib/drools-compiler.jar,
Modified: labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/src/main/java/org/drools/osgi/impl/Activator.java
===================================================================
--- labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/src/main/java/org/drools/osgi/impl/Activator.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/drools-osgi/org.drools.osgi.impl/src/main/java/org/drools/osgi/impl/Activator.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -2,17 +2,22 @@
import java.util.Hashtable;
+import org.drools.KnowledgeBaseProvider;
import org.drools.builder.KnowledgeBuilderProvider;
import org.drools.builder.impl.KnowledgeBuilderProviderImpl;
+import org.drools.impl.KnowledgeBaseProviderImpl;
import org.drools.io.ResourceProvider;
import org.drools.io.impl.ResourceProviderImpl;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
-public class Activator implements BundleActivator {
+public class Activator
+ implements
+ BundleActivator {
private ServiceRegistration kbuilderReg;
private ServiceRegistration resourceReg;
+ private ServiceRegistration kbaseReg;
public void start(BundleContext bc) throws Exception {
this.kbuilderReg = bc.registerService( KnowledgeBuilderProvider.class.getName(),
@@ -21,11 +26,15 @@
this.resourceReg = bc.registerService( ResourceProvider.class.getName(),
new ResourceProviderImpl(),
new Hashtable() );
- System.out.println( "registered" );
+ this.kbaseReg = bc.registerService( KnowledgeBaseProvider.class.getName(),
+ new KnowledgeBaseProviderImpl(),
+ new Hashtable() );
+ System.out.println( "impl registered" );
}
public void stop(BundleContext bc) throws Exception {
this.kbuilderReg.unregister();
this.resourceReg.unregister();
+ this.kbaseReg.unregister();
}
}
Modified: labs/jbossrules/trunk/drools-container/pom.xml
===================================================================
--- labs/jbossrules/trunk/drools-container/pom.xml 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-container/pom.xml 2010-01-10 06:28:30 UTC (rev 31000)
@@ -14,6 +14,7 @@
<modules>
<module>drools-spring</module>
+ <module>drools-osgi</module>
</modules>
</project>
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -68,6 +68,8 @@
import org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler;
import org.drools.spi.ConflictResolver;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
+import org.drools.util.CompositeClassLoader;
import org.drools.util.ConfFileUtils;
import org.drools.util.StringUtils;
import org.drools.workflow.core.Node;
@@ -379,15 +381,9 @@
Properties properties) {
this.immutable = false;
- if ( classLoader != null ) {
- this.classLoader = classLoader;
- } else if ( Thread.currentThread().getContextClassLoader() != null ) {
- this.classLoader = Thread.currentThread().getContextClassLoader();
- } else {
- this.classLoader = this.getClass().getClassLoader();
- }
+ setClassLoader( classLoader );
- this.chainedProperties = new ChainedProperties( "rulebase.conf" );
+ this.chainedProperties = new ChainedProperties( "rulebase.conf", this.classLoader, true );
if ( properties != null ) {
this.chainedProperties.addProperties( properties );
@@ -971,7 +967,7 @@
}
public void setClassLoader(ClassLoader classLoader) {
- this.classLoader = classLoader;
+ this.classLoader = ClassLoaderUtil.getClassLoader( classLoader, getClass() );
}
/**
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/SessionConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/SessionConfiguration.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/SessionConfiguration.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -36,6 +36,7 @@
import org.drools.runtime.conf.SingleValueKnowledgeSessionOption;
import org.drools.runtime.process.WorkItemHandler;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
import org.drools.util.ConfFileUtils;
import org.drools.util.StringUtils;
import org.mvel2.MVEL;
@@ -117,19 +118,11 @@
}
private void init(ClassLoader classLoader, Properties properties) {
+ this.classLoader = ClassLoaderUtil.getClassLoader( classLoader, getClass() );
- if ( classLoader != null ) {
- this.classLoader = classLoader;
- } else if ( Thread.currentThread().getContextClassLoader() != null ) {
- this.classLoader = Thread.currentThread().getContextClassLoader();
- } else {
- this.classLoader = this.getClass().getClassLoader();
- }
-
this.immutable = false;
+ this.chainedProperties = new ChainedProperties( "session.conf", this.classLoader );
- this.chainedProperties = new ChainedProperties( "session.conf" );
-
if ( properties != null ) {
this.chainedProperties.addProperties( properties );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldAccessorCache.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldAccessorCache.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldAccessorCache.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -9,48 +9,18 @@
import org.drools.util.asm.ClassFieldInspector;
public class ClassFieldAccessorCache {
- private static ClassFieldAccessorCache instance;
private Map<ClassLoader, CacheEntry> cacheByClassLoader;
private ClassLoader classLoader;
- // private boolean eagerWire;
- // public static ClassFieldAccessorCache getInstance() {
- // if ( instance == null ) {
- // ClassLoader cl = Thread.currentThread().getContextClassLoader();
- // if ( cl == null ) {
- // cl = ClassFieldAccessorCache.class.getClassLoader();
- // }
- // instance = new ClassFieldAccessorCache( cl );
- // }
- //
- // return instance;
- // }
- //
- // public ClassFieldAccessorCache() {
- // // we don't set the classloader here, its just for Externalisable
- // // any using class will need to set the classloader before using
- // this( null );
- // }
-
public ClassFieldAccessorCache(ClassLoader classLoader) {
// lookup = new HashMap<AccessorKey, LookupEntry>();
cacheByClassLoader = new WeakHashMap<ClassLoader, CacheEntry>();
this.classLoader = classLoader;
}
- // public void writeExternal(ObjectOutput out) throws IOException {
- // out.writeObject( lookup );
- //
- // }
- //
- // public void readExternal(ObjectInput in) throws IOException,
- // ClassNotFoundException {
- // lookup = ( Map<AccessorKey, LookupEntry> ) in.readObject();
- // }
-
public void setClassLoader(ClassLoader classLoader) {
this.classLoader = classLoader;
}
@@ -58,136 +28,7 @@
public ClassLoader getClassLoader() {
return this.classLoader;
}
-
- // public void setEagerWire(boolean eagerWire) {
- // this.eagerWire = eagerWire;
- // }
- //
- // public ClassFieldWriter getWriter(Class cls,
- // String fieldName,
- // ClassLoader classLoader) {
- // // return getReader( cls.getName(),
- // // fieldName,
- // // null );
- // return null;
- // }
- //
- // public ClassFieldReader getReader(Class cls,
- // String fieldName,
- // ClassLoader classLoader) {
- // return getReader( cls.getName(),
- // fieldName,
- // null );
- // }
- //
- // public synchronized ClassFieldReader getReader(final String className,
- // final String fieldName,
- // final AcceptsReadAccessor target) {
- // AccessorKey key = new AccessorKey( className,
- // fieldName );
- // LookupEntry entry = this.lookup.get( key );
- // if ( entry == null ) {
- // entry = new LookupEntry( new ClassFieldReader( className,
- // fieldName ) );
- // }
- //
- // if ( target != null ) {
- // entry.addReadAccessorTargets( target );
- // }
- //
- // if ( this.eagerWire ) {
- // wire( entry.getClassFieldReader() );
- // }
- //
- // return entry.getClassFieldReader();
- // }
- //
- // public synchronized ClassFieldWriter getWriter(final String className,
- // final String fieldName,
- // final AcceptsWriteAccessor target) {
- // AccessorKey key = new AccessorKey( className,
- // fieldName );
- // LookupEntry entry = this.lookup.get( key );
- // if ( entry == null ) {
- // entry = new LookupEntry( new ClassFieldWriter( className,
- // fieldName ) );
- // if ( target != null ) {
- // //entry.addReadAccessorTargets( target );
- // }
- // }
- //
- // if ( this.eagerWire ) {
- // wire( entry.getClassFieldReader() );
- // }
- //
- // return entry.getClassFieldWriter();
- // }
- //
- // public void merge(ClassFieldAccessorCache other) {
- // for ( Entry<AccessorKey, LookupEntry> entry : other.lookup.entrySet() ) {
- // LookupEntry lookupEntry = this.lookup.get( entry.getKey() );
- // if ( lookupEntry == null ) {
- // // ClassFieldReader does not exist here, so copy in everything.
- // this.lookup.put( entry.getKey(),
- // entry.getValue() );
- // } else {
- // // iterate through new constraints adding them and wiring them up
- // // to the existing ClassFieldReader
- // for ( AcceptsReadAccessor target : entry.getValue().getReadAccessorTargets() ) {
- // target.setReadAccessor( lookupEntry.getClassFieldReader() );
- // lookupEntry.addReadAccessorTargets( target );
- // }
- // }
- // }
- // }
- //
- // public void wire() {
- // for ( Entry<AccessorKey, LookupEntry> entry : lookup.entrySet() ) {
- // wire( entry.getValue().getClassFieldReader() );
- // }
- // }
- //
- // public void wire(ClassFieldReader reader) {
- // reader.setReadAccessor( getReadAcessor( reader ) );
- // }
- //
- // public void wire(ClassFieldWriter writer) {
- // writer.setWriteAccessor( getWriteAcessor( writer ) );
- // }
- //
- // public ClassFieldAccessor getAccessor(Class cls,
- // String fieldName,
- // ClassLoader classLoader) {
- // return getAccessor( cls.getName(),
- // fieldName,
- // null );
- // }
- //
- // public ClassFieldAccessor getAccessor(final String className,
- // final String fieldName,
- // final AcceptsReadAccessor target) {
- // AccessorKey key = new AccessorKey( className,
- // fieldName );
- // LookupEntry entry = this.lookup.get( key );
- // if ( entry == null ) {
- // entry = new LookupEntry( new ClassFieldReader( className,
- // fieldName ),
- // new ClassFieldWriter( className,
- // fieldName ) );
- // if ( target != null ) {
- // entry.addReadAccessorTargets( target );
- // }
- // }
- //
- // if ( this.eagerWire ) {
- // wire( entry.getClassFieldReader() );
- // wire( entry.getClassFieldWriter() );
- // }
- //
- // return new ClassFieldAccessor( entry.getClassFieldReader(),
- // entry.getClassFieldWriter() );
- // }
-
+
public ClassObjectType getClassObjectType(ClassObjectType objectType) {
// always lookup the class, as the ClassObjectType might refer to the class from another ClassLoader
Class cls = getClass( objectType.getClassName() );
@@ -273,14 +114,12 @@
public CacheEntry getCacheEntry(Class cls) {
// System classloader classes return null on some JVMs
ClassLoader cl = cls.getClassLoader() != null ?
- cls.getClassLoader() : ( this.classLoader != null ) ?
- this.classLoader :
- ClassLoader.getSystemClassLoader();
+ cls.getClassLoader() : this.classLoader;
CacheEntry cache = this.cacheByClassLoader.get( cl );
if ( cache == null ) {
// setup a cache for this ClassLoader
- cache = new CacheEntry( cl );
+ cache = new CacheEntry( this.classLoader );
this.cacheByClassLoader.put( cl,
cache );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractRuleBase.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractRuleBase.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractRuleBase.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -49,7 +49,7 @@
import org.drools.impl.EnvironmentFactory;
import org.drools.management.DroolsManagementAgent;
import org.drools.process.core.Process;
-import org.drools.rule.CompositeClassLoader;
+import org.drools.rule.DroolsCompositeClassLoader;
import org.drools.rule.DialectRuntimeRegistry;
import org.drools.rule.Function;
import org.drools.rule.ImportDeclaration;
@@ -87,7 +87,7 @@
private Map agendaGroupRuleTotals;
- private transient CompositeClassLoader rootClassLoader;
+ private transient DroolsCompositeClassLoader rootClassLoader;
/**
* The fact handle factory.
@@ -153,7 +153,7 @@
this.agendaGroupRuleTotals = new HashMap();
}
- this.rootClassLoader = new CompositeClassLoader( this.config.getClassLoader() );
+ this.rootClassLoader = new DroolsCompositeClassLoader( this.config.getClassLoader() );
this.pkgs = new HashMap<String, Package>();
this.processes = new HashMap();
this.globals = new HashMap<String, Class< ? >>();
@@ -250,7 +250,7 @@
droolsStream = new DroolsObjectInputStream( bytes );
}
- this.rootClassLoader = new CompositeClassLoader( droolsStream.getParentClassLoader() );
+ this.rootClassLoader = new DroolsCompositeClassLoader( droolsStream.getParentClassLoader() );
droolsStream.setClassLoader( this.rootClassLoader );
droolsStream.setRuleBase( this );
@@ -826,7 +826,7 @@
return this.config;
}
- public CompositeClassLoader getRootClassLoader() {
+ public DroolsCompositeClassLoader getRootClassLoader() {
return this.rootClassLoader;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalRuleBase.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalRuleBase.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalRuleBase.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -30,7 +30,7 @@
import org.drools.reteoo.Rete;
import org.drools.reteoo.ReteooBuilder;
import org.drools.reteoo.ReteooWorkingMemory;
-import org.drools.rule.CompositeClassLoader;
+import org.drools.rule.DroolsCompositeClassLoader;
import org.drools.rule.Package;
import org.drools.rule.TypeDeclaration;
import org.drools.spi.FactHandleFactory;
@@ -100,7 +100,7 @@
PropagationContext context,
ReteooWorkingMemory workingMemory) throws FactException;
- public CompositeClassLoader getRootClassLoader();
+ public DroolsCompositeClassLoader getRootClassLoader();
public Rete getRete();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -7,9 +7,9 @@
import java.lang.reflect.Field;
import org.drools.common.InternalWorkingMemory;
-import org.drools.reteoo.RuleTerminalNode.TerminalNodeMemory;
import org.drools.util.AbstractHashTable;
import org.drools.util.Entry;
+import org.drools.util.ObjectHashSet;
import org.drools.util.ReflectiveVisitor;
import org.drools.util.RightTupleIndexHashTable;
import org.drools.util.RightTupleList;
@@ -60,8 +60,8 @@
public void visitObjectTypeNode(final ObjectTypeNode node) {
System.out.println( indent() + node );
- final RightTupleList memory = (RightTupleList) this.workingMemory.getNodeMemory( node );
- checkObjectHashTable( memory );
+ ObjectHashSet memory = (ObjectHashSet) workingMemory.getNodeMemory( node );
+ checkObjectHashSet( memory );
this.indent++;
try {
@@ -81,9 +81,6 @@
public void visitAlphaNode(final AlphaNode node) {
System.out.println( indent() + node );
- final RightTupleList memory = (RightTupleList) this.workingMemory.getNodeMemory( node );
- checkObjectHashTable( memory );
-
this.indent++;
try {
final Field field = ObjectSource.class.getDeclaredField( "sink" );
@@ -168,10 +165,10 @@
this.indent--;
}
- public void visitTerminalNode(final RuleTerminalNode node) {
+ public void visitRuleTerminalNode(final RuleTerminalNode node) {
System.out.println( indent() + node );
- final TerminalNodeMemory memory = (TerminalNodeMemory) this.workingMemory.getNodeMemory( node );
- checkLeftTupleMemory( memory.getTupleMemory() );
+// final TerminalNodeMemory memory = (TerminalNodeMemory) this.workingMemory.getNodeMemory( node );
+// checkLeftTupleMemory( memory.getTupleMemory() );
}
// private void checkObjectHashMap(final ObjectHashMap map) {
@@ -189,6 +186,26 @@
// }
// }
+ private void checkObjectHashSet(ObjectHashSet memory) {
+ final Entry[] entries = memory.getTable();
+ int factCount = 0;
+ int bucketCount = 0;
+ for ( int i = 0, length = entries.length; i < length; i++ ) {
+ if ( entries[i] != null ) {
+ Entry entry = (Entry ) entries[i];
+ while ( entry != null ) {
+ entry = entry.getNext();
+ factCount++;
+ }
+ }
+ }
+
+ System.out.println( indent() + "ObjectHashSet: " + memory.size() + ":" + factCount );
+ if( factCount != memory.size() ) {
+ System.out.println( indent() + "error" );
+ }
+ }
+
private void checkObjectHashTable(final RightTupleMemory memory) {
if ( memory instanceof RightTupleList ) {
checkRightTupleList( (RightTupleList) memory );
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ObjectTypeNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ObjectTypeNode.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ObjectTypeNode.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -168,10 +168,10 @@
public void assertObject(final InternalFactHandle factHandle,
final PropagationContext context,
final InternalWorkingMemory workingMemory) {
- if (context.getType() == PropagationContext.MODIFICATION && this.skipOnModify && context.getDormantActivations() == 0) {
- // we do this after the shadowproxy update, just so that its up to date for the future
- return;
- }
+// if (context.getType() == PropagationContext.MODIFICATION && this.skipOnModify && context.getDormantActivations() == 0) {
+// // we do this after the shadowproxy update, just so that its up to date for the future
+// return;
+// }
if (this.objectMemoryEnabled) {
final ObjectHashSet memory = (ObjectHashSet) workingMemory.getNodeMemory(this);
@@ -214,9 +214,9 @@
final PropagationContext context,
final InternalWorkingMemory workingMemory) {
- if (context.getType() == PropagationContext.MODIFICATION && this.skipOnModify && context.getDormantActivations() == 0) {
- return;
- }
+// if (context.getType() == PropagationContext.MODIFICATION && this.skipOnModify && context.getDormantActivations() == 0) {
+// return;
+// }
if (this.objectMemoryEnabled) {
final ObjectHashSet memory = (ObjectHashSet) workingMemory.getNodeMemory(this);
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeData.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeData.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeData.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -14,10 +14,10 @@
public void reload();
- public DialectRuntimeData clone(DialectRuntimeRegistry registry, CompositeClassLoader rootClassLoader);
+ public DialectRuntimeData clone(DialectRuntimeRegistry registry, DroolsCompositeClassLoader rootClassLoader);
public void onAdd(DialectRuntimeRegistry dialectRuntimeRegistry,
- CompositeClassLoader rootClassLoader);
+ DroolsCompositeClassLoader rootClassLoader);
public void onRemove();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeRegistry.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeRegistry.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/DialectRuntimeRegistry.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -42,7 +42,7 @@
this.lineMappings = (Map) stream.readObject();
}
- public void onAdd(CompositeClassLoader rootClassLoader) {
+ public void onAdd(DroolsCompositeClassLoader rootClassLoader) {
//this.classLoader = rootClassLoader;
for ( Iterator it = this.dialects.values().iterator(); it.hasNext(); ) {
DialectRuntimeData data = (DialectRuntimeData) it.next();
@@ -85,7 +85,7 @@
}
public void merge(DialectRuntimeRegistry newDatas,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
for ( Entry<String, DialectRuntimeData> entry : newDatas.dialects.entrySet() ) {
DialectRuntimeData data = this.dialects.get( entry.getKey() );
if ( data == null ) {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/JavaDialectRuntimeData.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/JavaDialectRuntimeData.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/JavaDialectRuntimeData.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -36,6 +36,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.common.DroolsObjectInput;
import org.drools.spi.Wireable;
+import org.drools.util.DroolsClassLoader;
import org.drools.util.StringUtils;
public class JavaDialectRuntimeData
@@ -58,7 +59,7 @@
private transient PackageClassLoader classLoader;
- private transient CompositeClassLoader rootClassLoader;
+ private transient DroolsCompositeClassLoader rootClassLoader;
private boolean dirty;
@@ -121,7 +122,7 @@
}
public void onAdd(DialectRuntimeRegistry registry,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
this.registry = registry;
this.rootClassLoader = rootClassLoader;
this.classLoader = new PackageClassLoader( this,
@@ -152,7 +153,7 @@
}
public DialectRuntimeData clone(DialectRuntimeRegistry registry,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
DialectRuntimeData cloneOne = new JavaDialectRuntimeData();
cloneOne.merge( registry,
this );
@@ -422,10 +423,10 @@
implements
DroolsClassLoader {
private JavaDialectRuntimeData store;
- CompositeClassLoader rootClassLoader;
+ DroolsCompositeClassLoader rootClassLoader;
public PackageClassLoader(JavaDialectRuntimeData store,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
super( rootClassLoader );
this.rootClassLoader = rootClassLoader;
this.store = store;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MVELDialectRuntimeData.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MVELDialectRuntimeData.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MVELDialectRuntimeData.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -25,7 +25,7 @@
private Map<Wireable, MVELCompileable> invokerLookups;
- private CompositeClassLoader rootClassLoader;
+ private DroolsCompositeClassLoader rootClassLoader;
private List<Wireable> wireList = Collections.<Wireable> emptyList();
@@ -70,7 +70,7 @@
}
public DialectRuntimeData clone(DialectRuntimeRegistry registry,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
DialectRuntimeData clone = new MVELDialectRuntimeData();
clone.merge( registry,
this );
@@ -80,7 +80,7 @@
}
public void onAdd(DialectRuntimeRegistry registry,
- CompositeClassLoader rootClassLoader) {
+ DroolsCompositeClassLoader rootClassLoader) {
this.rootClassLoader = rootClassLoader;
// for (Entry<Wireable, MVELCompilable> entry : this.invokerLookups.entrySet() ) {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/MapBackedClassLoader.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -8,6 +8,8 @@
import java.util.HashMap;
import java.util.Map;
+import org.drools.util.DroolsClassLoader;
+
public class MapBackedClassLoader extends ClassLoader
implements
DroolsClassLoader {
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/DefaultEscalatedDeadlineHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/DefaultEscalatedDeadlineHandler.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/DefaultEscalatedDeadlineHandler.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -30,6 +30,7 @@
import org.drools.task.User;
import org.drools.task.UserInfo;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
import org.mvel2.MVEL;
import org.mvel2.compiler.ExpressionCompiler;
import org.mvel2.templates.TemplateRuntime;
@@ -63,7 +64,7 @@
public DefaultEscalatedDeadlineHandler() {
handler = new EmailWorkItemHandler();
- ChainedProperties conf = new ChainedProperties("drools.email.conf");
+ ChainedProperties conf = new ChainedProperties("drools.email.conf", ClassLoaderUtil.getClassLoader( null, getClass() ) );
String host = conf.getProperty( "host", null );
String port = conf.getProperty( "port", "25" );
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/SendIcal.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/SendIcal.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/SendIcal.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -28,6 +28,7 @@
import org.drools.task.User;
import org.drools.task.UserInfo;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
//import net.fortuna.ical4j.model.Calendar;
//import net.fortuna.ical4j.model.DateTime;
@@ -70,7 +71,7 @@
}
SendIcal() {
- ChainedProperties conf = new ChainedProperties( "drools.email.conf" );
+ ChainedProperties conf = new ChainedProperties( "drools.email.conf",ClassLoaderUtil.getClassLoader( null, getClass() ) );
String host = conf.getProperty( "mail.smtp.host",
"localhost" );
String port = conf.getProperty( "mail.smtp.port",
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/test/java/org/drools/task/service/IcalTest.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/test/java/org/drools/task/service/IcalTest.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/test/java/org/drools/task/service/IcalTest.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -1,7 +1,5 @@
package org.drools.task.service;
-import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingTaskOperationResponseHandler;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.StringReader;
@@ -18,11 +16,14 @@
import org.apache.commons.collections.map.HashedMap;
import org.apache.mina.transport.socket.nio.NioSocketConnector;
+import org.drools.SystemEventListenerFactory;
import org.drools.task.BaseTest;
import org.drools.task.MockUserInfo;
import org.drools.task.Task;
+import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingTaskOperationResponseHandler;
import org.drools.util.ChainedProperties;
-import org.drools.SystemEventListenerFactory;
+import org.drools.util.ClassLoaderUtil;
import org.subethamail.wiser.Wiser;
import org.subethamail.wiser.WiserMessage;
@@ -39,7 +40,7 @@
protected void setUp() throws Exception {
super.setUp();
- ChainedProperties props = new ChainedProperties( "process.email.conf" );
+ ChainedProperties props = new ChainedProperties( "process.email.conf", ClassLoaderUtil.getClassLoader( null, getClass() ) );
emailHost = props.getProperty( "host", "locahost" );
emailPort = props.getProperty( "port", "2345" );
Modified: labs/jbossrules/trunk/drools-process/drools-workitems/src/test/java/org/drools/process/workitem/email/EmailWorkItemHandlerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-workitems/src/test/java/org/drools/process/workitem/email/EmailWorkItemHandlerTest.java 2010-01-09 08:25:36 UTC (rev 30999)
+++ labs/jbossrules/trunk/drools-process/drools-workitems/src/test/java/org/drools/process/workitem/email/EmailWorkItemHandlerTest.java 2010-01-10 06:28:30 UTC (rev 31000)
@@ -13,6 +13,8 @@
import org.drools.process.instance.impl.WorkItemImpl;
import org.drools.runtime.process.WorkItemManager;
import org.drools.util.ChainedProperties;
+import org.drools.util.ClassLoaderUtil;
+import org.drools.util.ProviderLocator;
import org.subethamail.wiser.Wiser;
import org.subethamail.wiser.WiserMessage;
@@ -24,7 +26,7 @@
@Override
protected void setUp() throws Exception {
- ChainedProperties props = new ChainedProperties( "email.conf" );
+ ChainedProperties props = new ChainedProperties( "email.conf", ClassLoaderUtil.getClassLoader( null, getClass()) );
emailHost = props.getProperty( "host", "localhost" );
emailPort = props.getProperty( "port", "2345" );
More information about the jboss-svn-commits
mailing list