[jbpm-commits] JBoss JBPM SVN: r2810 - in jbpm3/branches/jbpm-3.3.0.GA/modules: core/scripts and 16 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Nov 7 18:54:32 EST 2008


Author: thomas.diesler at jboss.com
Date: 2008-11-07 18:54:31 -0500 (Fri, 07 Nov 2008)
New Revision: 2810

Removed:
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/scripts/antrun-jbpm-schema.xml
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/SystemPropertyTask.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/identity/scripts/antrun-jbpm-schema.xml
Modified:
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/pom.xml
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/JbpmContext.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/AntHelper.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/TokenVariableMap.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/variableinstance/ByteArrayInstance.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/JbpmSchema.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/hibernate/HibernateHelper.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/persistence/db/DbPersistenceServiceFactory.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.common.xml
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.properties.hsqldb.xml
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/org/jbpm/ant/jbpm.ant.tasks.properties
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/SerializabilityTest.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/DeleteProcessInstanceDbTest.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/GraphSessionDbTest.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/par/ProcessArchiveDeploymentDbTest.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/xml/XmlSchemaTest.java
   jbpm3/branches/jbpm-3.3.0.GA/modules/enterprise/jar/pom.xml
Log:
Rollback -r2788 - moved database schema creation before the test suite run ...

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/pom.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/pom.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/pom.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -170,7 +170,6 @@
         <artifactId>maven-antrun-plugin</artifactId>
         <executions>
           <execution>
-            <id>config</id>
             <phase>compile</phase>
             <goals>
               <goal>run</goal>
@@ -182,22 +181,6 @@
               </tasks>
             </configuration>
           </execution>
-          <!-- 
-          <execution>
-            <id>schema</id>
-            <phase>process-test-resources</phase>
-            <goals>
-              <goal>run</goal>
-            </goals>
-            <configuration>
-              <tasks>
-                <property name="test.classpath" refid="maven.test.classpath" />
-                <property name="log4j.output.dir" location="${basedir}/target" />
-                <ant antfile="scripts/antrun-jbpm-schema.xml" target="create" />
-              </tasks>
-            </configuration>
-          </execution>
-          -->
         </executions>
       </plugin>
       <plugin>
@@ -305,6 +288,8 @@
                 <exclude>org/jbpm/seam/JobExecutorCustomizationTest.java</exclude>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
+                <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
+                <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
               </excludes>
             </configuration>
           </plugin>

Deleted: jbpm3/branches/jbpm-3.3.0.GA/modules/core/scripts/antrun-jbpm-schema.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/scripts/antrun-jbpm-schema.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/scripts/antrun-jbpm-schema.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!--                                                                        -->
-<!--  JBoss, the OpenSource J2EE webOS                                      -->
-<!--                                                                        -->
-<!--  Distributable under LGPL license.                                     -->
-<!--  See terms of license at http://www.gnu.org.                           -->
-<!--                                                                        -->
-<!-- ====================================================================== -->
-
-<!-- $Id: antrun-jbpm-config.xml 2611 2008-10-24 15:25:58Z thomas.diesler at jboss.com $ -->
-
-<project default="create">
-
-  <target name="create">
-    <taskdef resource="org/jbpm/ant/jbpm.ant.tasks.properties">
-      <classpath path="${test.classpath}" />
-    </taskdef>
-    <systemproperty key="log4j.output.dir" value="${log4j.output.dir}"/>
-    <jbpmschema />
-  </target>
-
-</project>
\ No newline at end of file

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/JbpmContext.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/JbpmContext.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/JbpmContext.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -524,81 +524,81 @@
 
   /**
    * gets the hibernate session factory from the default configured persistence service.
-   * @return the hibernate session factory, or <code>null</code> if a nonstandard
-   * persistence service is configured
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public SessionFactory getSessionFactory()
   {
-    PersistenceService persistenceService = getPersistenceService();
-    return persistenceService instanceof DbPersistenceService
-      ? ((DbPersistenceService) persistenceService).getSessionFactory()
-      : null;
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return null;
+    return persistenceService.getSessionFactory();
   }
 
   /**
    * sets the hibernate session factory into the default configured persistence service, overwriting the configured session factory (if there is one configured).
-   * if a nonstandard persistence service is configured, then this call has no effect.
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public void setSessionFactory(SessionFactory sessionFactory)
   {
-    PersistenceService persistenceService = getPersistenceService();
-    if (persistenceService instanceof DbPersistenceService) {
-      DbPersistenceService dbPersistenceService = (DbPersistenceService) persistenceService;
-      dbPersistenceService.setSessionFactory(sessionFactory);
-    }
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return;
+    persistenceService.setSessionFactory(sessionFactory);
   }
 
   /**
    * gets the hibernate session from the default configured persistence service.
-   * @return the hibernate session, or <code>null</code> if a nonstandard
-   * persistence service is configured.
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public Session getSession()
   {
-    PersistenceService persistenceService = getPersistenceService();
-    return persistenceService instanceof DbPersistenceService
-      ? ((DbPersistenceService) persistenceService).getSession()
-      : null;
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return null;
+    return persistenceService.getSession();
   }
 
   /**
    * sets the hibernate session into the default configured persistence service, preventing the creation of a session from the configured session factory (if there is
    * one configured).
-   * if a nonstandard persistence service is configured, then this call has no effect.
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public void setSession(Session session)
   {
-    PersistenceService persistenceService = getPersistenceService();
-    if (persistenceService instanceof DbPersistenceService) {
-      DbPersistenceService dbPersistenceService = (DbPersistenceService) persistenceService;
-      dbPersistenceService.setSession(session);
-    }
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return;
+    persistenceService.setSession(session);
   }
 
   /**
    * gets the jdbc connection from the default configured persistence service.
-   * @return the jdbc connectoin, or <code>null</code> if a nonstandard
-   * persistence service is configured.
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public Connection getConnection()
   {
-    PersistenceService persistenceService = getPersistenceService();
-    return persistenceService instanceof DbPersistenceService
-      ? ((DbPersistenceService) persistenceService).getConnection()
-      : null;
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return null;
+    return persistenceService.getConnection();
   }
 
   /**
    * allows users to provide a jdbc connection to be used when the hibernate session is created.
-   * if a nonstandard persistence service is configured, then this call has no effect.
+   * 
+   * @throws ClassCastException if another persistence service is configured then the default.
    */
   public void setConnection(Connection connection)
   {
-    PersistenceService persistenceService = getPersistenceService();
-    if (persistenceService instanceof DbPersistenceService) {
-      DbPersistenceService dbPersistenceService = (DbPersistenceService) persistenceService;
-      dbPersistenceService.setConnection(connection);
-    }
+    DbPersistenceService persistenceService = (DbPersistenceService)getPersistenceService();
+    if (persistenceService == null)
+      return;
+    persistenceService.setConnection(connection);
   }
 
   // jbpm database access sessions
@@ -704,7 +704,9 @@
 
   PersistenceService getPersistenceService()
   {
-    return services != null ? services.getPersistenceService() : null;
+    if (services == null)
+      return null;
+    return services.getPersistenceService();
   }
 
   public JbpmConfiguration getJbpmConfiguration()

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/AntHelper.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/AntHelper.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/AntHelper.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -42,10 +42,6 @@
   final static Map configurations = new HashMap();
   final static Map jbpmConfigurations = new HashMap();
 
-  private AntHelper() {
-    // prevent instantiation
-  }
-
   public static Configuration getConfiguration(String hibernateCfgResource, String hibernatePropertiesResource) {
     Object key = getKey(hibernateCfgResource,hibernatePropertiesResource);
     Configuration configuration = (Configuration) configurations.get(key);

Deleted: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/SystemPropertyTask.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/SystemPropertyTask.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/ant/SystemPropertyTask.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -1,47 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jbpm.ant;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-
-/**
- * @author Alejandro Guizar
- */
-public class SystemPropertyTask extends Task {
-
-  private String key;
-  private String value;
-
-  @Override
-  public void execute() throws BuildException {
-    System.setProperty(key, value);
-  }
-
-  public void setKey(String key) {
-    this.key = key;
-  }
-
-  public void setValue(String value) {
-    this.value = value;
-  }
-}

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/TokenVariableMap.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/TokenVariableMap.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/TokenVariableMap.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -54,7 +54,7 @@
   }
   
   public String toString() {
-    return "TokenVariableMap"+( (token!=null) ? "["+token.getFullName()+"]" : "@" + Integer.toHexString(System.identityHashCode(this)));
+    return "TokenVariableMap"+( (token!=null)&&(token.getName()!=null) ? "["+token.getName()+"]" : Integer.toHexString(System.identityHashCode(this)));
   }
 
   // protected ////////////////////////////////////////////////////////////////

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/variableinstance/ByteArrayInstance.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/variableinstance/ByteArrayInstance.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/context/exe/variableinstance/ByteArrayInstance.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -21,8 +21,6 @@
  */
 package org.jbpm.context.exe.variableinstance;
 
-import org.hibernate.Session;
-import org.jbpm.JbpmContext;
 import org.jbpm.bytes.ByteArray;
 import org.jbpm.context.exe.VariableInstance;
 import org.jbpm.context.log.variableinstance.ByteArrayUpdateLog;
@@ -44,15 +42,6 @@
 
   protected void setObject(Object value) {
     if (token!=null) token.addLog(new ByteArrayUpdateLog(this, this.value, (ByteArray) value));
-    // delete old value, otherwise it will be unreachable
-    if (this.value != null) {
-      JbpmContext jbpmContext = JbpmContext.getCurrentJbpmContext();
-      if (jbpmContext != null) {
-        Session session = jbpmContext.getSession();
-        if (session != null) session.delete(this.value);
-      }      
-    }
-    // set new value
     this.value = (ByteArray) value;
   }
 }

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/JbpmSchema.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/JbpmSchema.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/JbpmSchema.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -29,6 +29,7 @@
 import java.io.InputStream;
 import java.io.PrintStream;
 import java.io.Serializable;
+import java.lang.reflect.Field;
 import java.sql.Connection;
 import java.sql.ResultSet;
 import java.sql.SQLException;
@@ -43,8 +44,9 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.hibernate.cfg.Configuration;
-import org.hibernate.cfg.Settings;
+import org.hibernate.cfg.Environment;
 import org.hibernate.connection.ConnectionProvider;
+import org.hibernate.connection.ConnectionProviderFactory;
 import org.hibernate.dialect.Dialect;
 import org.hibernate.engine.Mapping;
 import org.hibernate.mapping.ForeignKey;
@@ -62,7 +64,8 @@
   private static final long serialVersionUID = 1L;
 
   Configuration configuration = null;
-  Settings settings;
+  Properties properties = null;
+  Dialect dialect = null;
   Mapping mapping = null;
   String[] createSql = null;
   String[] dropSql = null;
@@ -75,15 +78,26 @@
   public JbpmSchema(Configuration configuration)
   {
     this.configuration = configuration;
-    this.settings = configuration.buildSettings();
-    this.mapping = configuration.buildMapping();
+    this.properties = configuration.getProperties();
+    this.dialect = Dialect.getDialect(properties);
+    try
+    {
+      // get the mapping field via reflection :-(
+      Field mappingField = Configuration.class.getDeclaredField("mapping");
+      mappingField.setAccessible(true);
+      this.mapping = (Mapping)mappingField.get(configuration);
+    }
+    catch (Exception e)
+    {
+      throw new JbpmException("couldn't get the hibernate mapping", e);
+    }
   }
 
   public String[] getCreateSql()
   {
     if (createSql == null)
     {
-      createSql = configuration.generateSchemaCreationScript(settings.getDialect());
+      createSql = configuration.generateSchemaCreationScript(dialect);
     }
     return createSql;
   }
@@ -92,7 +106,7 @@
   {
     if (dropSql == null)
     {
-      dropSql = configuration.generateDropSchemaScript(settings.getDialect());
+      dropSql = configuration.generateDropSchemaScript(dialect);
     }
     return dropSql;
   }
@@ -102,11 +116,10 @@
     if (cleanSql == null)
     {
       new SchemaExport(configuration);
+      
+      String catalog = properties.getProperty(Environment.DEFAULT_CATALOG);
+      String schema = properties.getProperty(Environment.DEFAULT_SCHEMA);
 
-      Dialect dialect = settings.getDialect();
-      String catalog = settings.getDefaultCatalogName();
-      String schema = settings.getDefaultSchemaName();
-
       // loop over all foreign key constraints
       List dropForeignKeysSql = new ArrayList();
       List createForeignKeysSql = new ArrayList();
@@ -338,7 +351,8 @@
   public void execute(String[] sqls)
   {
     String sql = null;
-    boolean showSql = settings.isShowSqlEnabled();
+    String showSqlText = properties.getProperty("hibernate.show_sql");
+    boolean showSql = ("true".equalsIgnoreCase(showSqlText));
 
     try
     {
@@ -396,7 +410,7 @@
 
   void createConnection() throws SQLException
   {
-    connectionProvider = settings.getConnectionProvider();
+    connectionProvider = ConnectionProviderFactory.newConnectionProvider(properties);
     connection = connectionProvider.getConnection();
     if (!connection.getAutoCommit())
     {
@@ -407,7 +421,7 @@
 
   public Properties getProperties()
   {
-    return configuration.getProperties();
+    return properties;
   }
 
   // sql delimiter ////////////////////////////////////////////////////////////
@@ -418,7 +432,7 @@
   {
     if (sqlDelimiter == null)
     {
-      sqlDelimiter = getProperties().getProperty("jbpm.sql.delimiter", ";");
+      sqlDelimiter = properties.getProperty("jbpm.sql.delimiter", ";");
     }
     return sqlDelimiter;
   }

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/hibernate/HibernateHelper.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/hibernate/HibernateHelper.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/db/hibernate/HibernateHelper.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -39,6 +39,13 @@
 
 public abstract class HibernateHelper {
 
+  /** maps SessionFactory's to Configurations.         */
+  /** by default, configuration lookup will be enabled */
+  static Map configurations = new HashMap();
+  public static void clearConfigurationsCache() {
+    configurations = new HashMap();
+  }
+
   public static SessionFactory createSessionFactory() {
     return createSessionFactory(null, null, true);
   }
@@ -57,7 +64,11 @@
   }
 
   public static SessionFactory createSessionFactory(Configuration configuration, boolean isConfigLookupEnabled) {
-    return configuration.buildSessionFactory();
+    SessionFactory sessionFactory = configuration.buildSessionFactory();
+    if (isConfigLookupEnabled) {
+      configurations.put(sessionFactory, configuration);
+    }
+    return sessionFactory;
   }
 
   public static Configuration createConfiguration(String cfgXmlResource, String propertiesResource) {
@@ -91,6 +102,23 @@
     return configuration;
   }
 
+  public static Configuration getConfiguration(SessionFactory sessionFactory) {
+    return (Configuration) configurations.get(sessionFactory);
+  }
+  
+  public static SchemaExport createSchemaExport(SessionFactory sessionFactory) {
+    return new SchemaExport(getConfiguration(sessionFactory));
+  }
+
+  public static boolean createSchemaExportScript(SessionFactory sessionFactory) {
+    boolean script = false;
+    String showSql = getConfiguration(sessionFactory).getProperty("hibernate.show_sql");
+    if ("true".equalsIgnoreCase(showSql)) {
+      script = true;
+    }
+    return script;
+  }
+
   public static void clearHibernateCache(SessionFactory sessionFactory) {
     sessionFactory.evictQueries();
     

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/persistence/db/DbPersistenceServiceFactory.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/persistence/db/DbPersistenceServiceFactory.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/java/org/jbpm/persistence/db/DbPersistenceServiceFactory.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -156,11 +156,6 @@
     }
   }
 
-  public void finalize() throws Throwable
-  {
-    close();
-  }
-
   public String getDataSourceJndiName()
   {
     return dataSourceJndiName;

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.common.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.common.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.common.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -17,6 +17,10 @@
     <!-- # common settings                 # -->
     <!-- ################################### -->
 
+    <!-- Automatic schema creation (begin) -->
+    <property name="hibernate.hbm2ddl.auto">create</property>
+    <!-- Automatic schema creation (end) -->
+
     <!-- Simple memory-only cache -->
     <property name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
 

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.properties.hsqldb.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.properties.hsqldb.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/hibernate.properties.hsqldb.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -8,7 +8,3 @@
     <property name="hibernate.connection.username">sa</property>
     <property name="hibernate.connection.password"></property>
     <!-- JDBC connection properties (end) -->
-
-    <!-- Automatic schema creation (begin) -->
-    <property name="hibernate.hbm2ddl.auto">create</property>
-    <!-- Automatic schema creation (end) -->
\ No newline at end of file

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/org/jbpm/ant/jbpm.ant.tasks.properties
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/org/jbpm/ant/jbpm.ant.tasks.properties	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/main/resources/org/jbpm/ant/jbpm.ant.tasks.properties	2008-11-07 23:54:31 UTC (rev 2810)
@@ -3,5 +3,4 @@
 startjboss=org.jbpm.ant.StartJBossTask
 starthsqldb=org.jbpm.ant.StartHsqldbTask
 shutdownhsqldb=org.jbpm.ant.ShutDownHsqldb
-systemproperty=org.jbpm.ant.SystemPropertyTask
-!loadidentities=org.jbpm.identity.ant.LoadIdentitiesTask
+loadidentities=org.jbpm.identity.ant.LoadIdentitiesTask

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/SerializabilityTest.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/SerializabilityTest.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/SerializabilityTest.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -37,7 +37,12 @@
   String testRootDir = FileDefinitionFileSystemConfigTest.class.getProtectionDomain().getCodeSource().getLocation().getFile().toString();
   
   static Set excusedClasses = new HashSet(Arrays.asList(new String[] {
-      "org.jbpm.ant",
+      "org.jbpm.ant.DeployProcessTask",
+      "org.jbpm.ant.JbpmSchemaTask",
+      "org.jbpm.ant.Launcher",
+      "org.jbpm.ant.ShutDownHsqldb",
+      "org.jbpm.ant.StartHsqldbTask",
+      "org.jbpm.ant.StartJBossTask",
       "org.jbpm.context.exe.JbpmType",
       "org.jbpm.db.hibernate.ConverterEnumType",
       "org.jbpm.db.hibernate.Converters",

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/DeleteProcessInstanceDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/DeleteProcessInstanceDbTest.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/DeleteProcessInstanceDbTest.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -1,10 +1,6 @@
 package org.jbpm.db;
 
-import java.util.Iterator;
-import java.util.List;
-
 import org.jbpm.context.exe.ContextInstance;
-import org.jbpm.context.exe.VariableInstance;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
 import org.jbpm.graph.exe.Token;
@@ -120,8 +116,6 @@
   }
 
   public void testDeleteProcessInstanceWithConcurrentPathsOfExecution() {
-    ensureCleanVariableInstanceTable();
-
     ProcessDefinition makeFondue = ProcessDefinition.parseXmlString(
       "<process-definition name='make fondue'>" +
       "  <start-state>" +
@@ -173,16 +167,4 @@
       jbpmContext.getGraphSession().deleteProcessDefinition(makeFondue.getId());
     }
   }
-
-  private void ensureCleanVariableInstanceTable() {
-    List variableInstances = session.createCriteria(VariableInstance.class).list();
-    if (!variableInstances.isEmpty()) {
-      System.err.println("FIXME: "+ getClass().getName() + "." + getName() +
-          " found " + variableInstances.size() + " variable instances left over");
-      for (Iterator i = variableInstances.iterator(); i.hasNext();) {
-        VariableInstance variableInstance = (VariableInstance) i.next();
-        session.delete(variableInstance);
-      }
-    }
-  }
 }

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/GraphSessionDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/GraphSessionDbTest.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/db/GraphSessionDbTest.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -29,14 +29,17 @@
 import org.jbpm.graph.exe.ProcessInstance;
 import org.jbpm.graph.exe.Token;
 
-public class GraphSessionDbTest extends AbstractDbTestCase {
+public class GraphSessionDbTest extends AbstractDbTestCase
+{
 
-  public void testProcessDefinitionSaveAndLoad() {
+  public void testProcessDefinitionSaveAndLoad()
+  {
     // create a process definition
     ProcessDefinition processDefinition = new ProcessDefinition("auction");
     // save it in the database
     graphSession.saveProcessDefinition(processDefinition);
-    try {
+    try
+    {
       // get the assigned id
       long processDefinitionId = processDefinition.getId();
       // start a new transaction
@@ -46,15 +49,16 @@
       // check the result
       assertEquals("auction", processDefinition.getName());
     }
-    finally {
-      // cleanup
+    finally
+    {
+      // cleanup 
       jbpmContext.getGraphSession().deleteProcessDefinition(processDefinition.getId());
     }
   }
 
-  public void testFindProcessDefinitionByNameAndVersion() {
-    // put 3 process definitions in the database with the same name, but
-    // different versions
+  public void testFindProcessDefinitionByNameAndVersion()
+  {
+    // put 3 process definitions in the database with the same name, but different versions
     ProcessDefinition processDefinitionOne = new ProcessDefinition("auction");
     processDefinitionOne.setVersion(1);
     graphSession.saveProcessDefinition(processDefinitionOne);
@@ -77,11 +81,11 @@
     assertEquals(secondVersionProcessDefinitionId, processDefinitionTwo.getId());
     assertEquals("auction", processDefinitionTwo.getName());
     assertEquals(2, processDefinitionTwo.getVersion());
-
+    
     // start a new transaction
     newTransaction();
 
-    // cleanup
+    // cleanup 
     graphSession.deleteProcessDefinition(processDefinitionOne.getId());
     newTransaction();
     graphSession.deleteProcessDefinition(processDefinitionTwo.getId());
@@ -89,9 +93,9 @@
     graphSession.deleteProcessDefinition(processDefinitionThree.getId());
   }
 
-  public void testFindLatestProcessDefinition() throws Exception {
-    // put 3 process definitions in the database with the same name, but
-    // different versions
+  public void testFindLatestProcessDefinition() throws Exception
+  {
+    // put 3 process definitions in the database with the same name, but different versions
     ProcessDefinition processDefinition = new ProcessDefinition("auction");
     processDefinition.setVersion(1);
     graphSession.saveProcessDefinition(processDefinition);
@@ -115,7 +119,7 @@
 
     newTransaction();
 
-    // cleanup
+    // cleanup 
     processDefinition = graphSession.findProcessDefinition("auction", 1);
     graphSession.deleteProcessDefinition(processDefinition.getId());
 
@@ -126,11 +130,9 @@
     graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testFindAllProcessDefinitions() throws Exception {
-    ensureCleanProcessDefinitionTable();
-
-    // put 3 process definitions in the database with the same name, but
-    // different versions
+  public void testFindAllProcessDefinitions() throws Exception
+  {
+    // put 3 process definitions in the database with the same name, but different versions
     ProcessDefinition processDefinition = new ProcessDefinition("auction");
     processDefinition.setVersion(1);
     graphSession.saveProcessDefinition(processDefinition);
@@ -153,43 +155,41 @@
 
     newTransaction();
 
-    try {
-      List allProcessDefinitions = graphSession.findAllProcessDefinitions();
-      assertEquals(5, allProcessDefinitions.size());
-      assertEquals(3, ((ProcessDefinition) allProcessDefinitions.get(0)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitions.get(0)).getName());
-      assertEquals(2, ((ProcessDefinition) allProcessDefinitions.get(1)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitions.get(1)).getName());
-      assertEquals(1, ((ProcessDefinition) allProcessDefinitions.get(2)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitions.get(2)).getName());
-      assertEquals(2, ((ProcessDefinition) allProcessDefinitions.get(3)).getVersion());
-      assertEquals("bake cake", ((ProcessDefinition) allProcessDefinitions.get(3)).getName());
-      assertEquals(1, ((ProcessDefinition) allProcessDefinitions.get(4)).getVersion());
-      assertEquals("bake cake", ((ProcessDefinition) allProcessDefinitions.get(4)).getName());
+    List allProcessDefinitions = graphSession.findAllProcessDefinitions();
+    assertEquals(5, allProcessDefinitions.size());
+    assertEquals(3, ((ProcessDefinition)allProcessDefinitions.get(0)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitions.get(0)).getName());
+    assertEquals(2, ((ProcessDefinition)allProcessDefinitions.get(1)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitions.get(1)).getName());
+    assertEquals(1, ((ProcessDefinition)allProcessDefinitions.get(2)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitions.get(2)).getName());
+    assertEquals(2, ((ProcessDefinition)allProcessDefinitions.get(3)).getVersion());
+    assertEquals("bake cake", ((ProcessDefinition)allProcessDefinitions.get(3)).getName());
+    assertEquals(1, ((ProcessDefinition)allProcessDefinitions.get(4)).getVersion());
+    assertEquals("bake cake", ((ProcessDefinition)allProcessDefinitions.get(4)).getName());
 
-      newTransaction();
-    }
-    finally {
-      processDefinition = graphSession.findProcessDefinition("auction", 1);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    newTransaction();
 
-      processDefinition = graphSession.findProcessDefinition("auction", 2);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    // cleanup 
+    processDefinition = graphSession.findProcessDefinition("auction", 1);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("auction", 3);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    processDefinition = graphSession.findProcessDefinition("auction", 2);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("bake cake", 1);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    processDefinition = graphSession.findProcessDefinition("auction", 3);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("bake cake", 2);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    processDefinition = graphSession.findProcessDefinition("bake cake", 1);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
+
+    processDefinition = graphSession.findProcessDefinition("bake cake", 2);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testFindAllProcessDefinitionVersions() throws Exception {
-    // put 3 process definitions in the database with the same name, but
-    // different versions
+  public void testFindAllProcessDefinitionVersions() throws Exception
+  {
+    // put 3 process definitions in the database with the same name, but different versions
     ProcessDefinition processDefinition = new ProcessDefinition("auction");
     processDefinition.setVersion(1);
     graphSession.saveProcessDefinition(processDefinition);
@@ -212,213 +212,184 @@
 
     newTransaction();
 
-    try {
-      List allProcessDefinitionVersions = graphSession.findAllProcessDefinitionVersions("auction");
-      assertEquals(3, allProcessDefinitionVersions.size());
-      assertEquals(3, ((ProcessDefinition) allProcessDefinitionVersions.get(0)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitionVersions.get(0)).getName());
-      assertEquals(2, ((ProcessDefinition) allProcessDefinitionVersions.get(1)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitionVersions.get(1)).getName());
-      assertEquals(1, ((ProcessDefinition) allProcessDefinitionVersions.get(2)).getVersion());
-      assertEquals("auction", ((ProcessDefinition) allProcessDefinitionVersions.get(2)).getName());
+    List allProcessDefinitionVersions = graphSession.findAllProcessDefinitionVersions("auction");
+    assertEquals(3, allProcessDefinitionVersions.size());
+    assertEquals(3, ((ProcessDefinition)allProcessDefinitionVersions.get(0)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitionVersions.get(0)).getName());
+    assertEquals(2, ((ProcessDefinition)allProcessDefinitionVersions.get(1)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitionVersions.get(1)).getName());
+    assertEquals(1, ((ProcessDefinition)allProcessDefinitionVersions.get(2)).getVersion());
+    assertEquals("auction", ((ProcessDefinition)allProcessDefinitionVersions.get(2)).getName());
 
-      allProcessDefinitionVersions = graphSession.findAllProcessDefinitionVersions("bake cake");
-      assertEquals(2, allProcessDefinitionVersions.size());
-      assertEquals(2, ((ProcessDefinition) allProcessDefinitionVersions.get(0)).getVersion());
-      assertEquals("bake cake", ((ProcessDefinition) allProcessDefinitionVersions.get(0)).getName());
-      assertEquals(1, ((ProcessDefinition) allProcessDefinitionVersions.get(1)).getVersion());
-      assertEquals("bake cake", ((ProcessDefinition) allProcessDefinitionVersions.get(1)).getName());
+    allProcessDefinitionVersions = graphSession.findAllProcessDefinitionVersions("bake cake");
+    assertEquals(2, allProcessDefinitionVersions.size());
+    assertEquals(2, ((ProcessDefinition)allProcessDefinitionVersions.get(0)).getVersion());
+    assertEquals("bake cake", ((ProcessDefinition)allProcessDefinitionVersions.get(0)).getName());
+    assertEquals(1, ((ProcessDefinition)allProcessDefinitionVersions.get(1)).getVersion());
+    assertEquals("bake cake", ((ProcessDefinition)allProcessDefinitionVersions.get(1)).getName());
 
-      newTransaction();
-    }
-    finally {
-      processDefinition = graphSession.findProcessDefinition("auction", 1);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    newTransaction();
 
-      processDefinition = graphSession.findProcessDefinition("auction", 2);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    // cleanup 
+    processDefinition = graphSession.findProcessDefinition("auction", 1);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("auction", 3);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    processDefinition = graphSession.findProcessDefinition("auction", 2);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("bake cake", 1);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
+    processDefinition = graphSession.findProcessDefinition("auction", 3);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
-      processDefinition = graphSession.findProcessDefinition("bake cake", 2);
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    processDefinition = graphSession.findProcessDefinition("bake cake", 1);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
+
+    processDefinition = graphSession.findProcessDefinition("bake cake", 2);
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testSaveAndLoadProcessInstance() {
+  public void testSaveAndLoadProcessInstance()
+  {
     ProcessInstance processInstance = new ProcessInstance();
     processInstance = saveAndReload(processInstance);
-    try {
-      assertNotNull(processInstance);
-    }
-    finally {
-      graphSession.deleteProcessInstance(processInstance);
-    }
+    assertNotNull(processInstance);
+    
+    // cleanup 
+    session.delete(processInstance);
   }
 
-  public void testUpdateProcessInstance() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>"
-        + "  <start-state name='s' />"
-        + "  <node name='n' />"
+  public void testUpdateProcessInstance()
+  {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>" + "  <start-state name='s' />" + "  <node name='n' />"
         + "</process-definition>");
 
     processDefinition = saveAndReload(processDefinition);
-    
-    try {
-      ProcessInstance processInstance = new ProcessInstance(processDefinition);
 
-      processInstance = saveAndReload(processInstance);
-      long pid = processInstance.getId();
+    ProcessInstance processInstance = new ProcessInstance(processDefinition);
 
-      assertEquals("s", processInstance.getRootToken().getNode().getName());
-      processInstance.getRootToken().setNode(processInstance.getProcessDefinition().getNode("n"));
+    processInstance = saveAndReload(processInstance);
+    long pid = processInstance.getId();
 
-      processInstance = saveAndReload(processInstance);
-      assertEquals("n", processInstance.getRootToken().getNode().getName());
-      assertEquals(pid, processInstance.getId());
+    assertEquals("s", processInstance.getRootToken().getNode().getName());
+    processInstance.getRootToken().setNode(processInstance.getProcessDefinition().getNode("n"));
 
-      newTransaction();
-    }
-    finally {
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    processInstance = saveAndReload(processInstance);
+    assertEquals("n", processInstance.getRootToken().getNode().getName());
+    assertEquals(pid, processInstance.getId());
+
+    newTransaction();
+
+    // cleanup 
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testFindProcessInstancesByProcessDefinition() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>"
-        + "  <start-state name='s' />"
-        + "  <node name='n' />"
+  public void testFindProcessInstancesByProcessDefinition()
+  {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>" + "  <start-state name='s' />" + "  <node name='n' />"
         + "</process-definition>");
 
     graphSession.saveProcessDefinition(processDefinition);
 
-    try {
-      jbpmContext.save(new ProcessInstance(processDefinition));
-      jbpmContext.save(new ProcessInstance(processDefinition));
-      jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
 
-      newTransaction();
+    newTransaction();
 
-      List processInstances = graphSession.findProcessInstances(processDefinition.getId());
-      assertEquals(3, processInstances.size());
+    List processInstances = graphSession.findProcessInstances(processDefinition.getId());
+    assertEquals(3, processInstances.size());
 
-      // process instances should be ordered from recent to old
-      long previousStart = System.currentTimeMillis();
-      Iterator iter = processInstances.iterator();
-      while (iter.hasNext()) {
-        ProcessInstance processInstance = (ProcessInstance) iter.next();
-        long processStart = processInstance.getStart().getTime();
-        assertTrue(previousStart >= processStart);
-        previousStart = processStart;
-      }
-
-      newTransaction();
+    // process instances should be ordered from recent to old
+    long previousStart = System.currentTimeMillis();
+    Iterator iter = processInstances.iterator();
+    while (iter.hasNext())
+    {
+      ProcessInstance processInstance = (ProcessInstance)iter.next();
+      long processStart = processInstance.getStart().getTime();
+      assertTrue(previousStart >= processStart);
+      previousStart = processStart;
     }
-    finally {
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    
+    newTransaction();
+
+    // cleanup 
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testDeleteProcessInstance() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>"
-        + "  <start-state name='s' />"
-        + "  <node name='n' />"
+  public void testDeleteProcessInstance()
+  {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>" + "  <start-state name='s' />" + "  <node name='n' />"
         + "</process-definition>");
     graphSession.saveProcessDefinition(processDefinition);
+    ProcessInstance processInstance = new ProcessInstance(processDefinition);
+    jbpmContext.save(processInstance);
 
-    try {
-      ProcessInstance processInstance = new ProcessInstance(processDefinition);
-      jbpmContext.save(processInstance);
+    newTransaction();
 
-      newTransaction();
+    graphSession.deleteProcessInstance(processInstance.getId());
 
-      graphSession.deleteProcessInstance(processInstance.getId());
+    newTransaction();
 
-      newTransaction();
+    assertEquals(0, graphSession.findProcessInstances(processDefinition.getId()).size());
+    
+    newTransaction();
 
-      assertEquals(0, graphSession.findProcessInstances(processDefinition.getId()).size());
-
-      newTransaction();
-    }
-    finally {
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    // cleanup 
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testDeleteProcessInstanceWithVariables() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>"
-        + "  <start-state name='start'>"
-        + "    <transition to='fork' />"
-        + "  </start-state>"
-        + "  <fork name='fork'>"
-        + "    <transition name='a' to='a' />"
-        + "    <transition name='b' to='b' />"
-        + "  </fork>"
-        + "  <state name='a' />"
-        + "  <state name='b' />"
-        + "</process-definition>");
+  public void testDeleteProcessInstanceWithVariables()
+  {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>" + "  <start-state name='start'>" + "    <transition to='fork' />"
+        + "  </start-state>" + "  <fork name='fork'>" + "    <transition name='a' to='a' />" + "    <transition name='b' to='b' />" + "  </fork>"
+        + "  <state name='a' />" + "  <state name='b' />" + "</process-definition>");
 
     graphSession.saveProcessDefinition(processDefinition);
 
-    try {
-      ProcessInstance processInstance = new ProcessInstance(processDefinition);
-      processInstance.signal();
-      Token tokenA = processInstance.findToken("/a");
-      Token tokenB = processInstance.findToken("/b");
+    ProcessInstance processInstance = new ProcessInstance(processDefinition);
+    processInstance.signal();
+    Token tokenA = processInstance.findToken("/a");
+    Token tokenB = processInstance.findToken("/b");
 
-      ContextInstance contextInstance = processInstance.getContextInstance();
-      contextInstance.setVariable("r", "rrrrrr");
-      contextInstance.createVariable("a", "aaaaaa", tokenA);
-      contextInstance.createVariable("b", "bbbbbb", tokenB);
+    ContextInstance contextInstance = processInstance.getContextInstance();
+    contextInstance.setVariable("r", "rrrrrr");
+    contextInstance.createVariable("a", "aaaaaa", tokenA);
+    contextInstance.createVariable("b", "bbbbbb", tokenB);
 
-      processInstance = saveAndReload(processInstance);
+    processInstance = saveAndReload(processInstance);
 
-      graphSession.deleteProcessInstance(processInstance);
+    graphSession.deleteProcessInstance(processInstance);
 
-      newTransaction();
+    newTransaction();
 
-      List processInstances = graphSession.findProcessInstances(processDefinition.getId());
-      assertEquals(0, processInstances.size());
-
-      newTransaction();
-    }
-    finally {
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    List processInstances = graphSession.findProcessInstances(processDefinition.getId());
+    assertEquals(0, processInstances.size());
+    
+    newTransaction();
+    graphSession.deleteProcessDefinition(processDefinition.getId());
   }
 
-  public void testDeleteProcessDefinition() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='deleteme'>"
-        + "  <start-state name='s' />"
-        + "  <node name='n' />"
+  public void testDeleteProcessDefinition()
+  {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition>" + "  <start-state name='s' />" + "  <node name='n' />"
         + "</process-definition>");
     graphSession.saveProcessDefinition(processDefinition);
+    jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
+    jbpmContext.save(new ProcessInstance(processDefinition));
 
-    try {
-      jbpmContext.save(new ProcessInstance(processDefinition));
-      jbpmContext.save(new ProcessInstance(processDefinition));
-      jbpmContext.save(new ProcessInstance(processDefinition));
-      jbpmContext.save(new ProcessInstance(processDefinition));
+    newTransaction();
 
-      newTransaction();
-    }
-    finally {
-      graphSession.deleteProcessDefinition(processDefinition.getId());
-    }
+    graphSession.deleteProcessDefinition(processDefinition.getId());
 
     newTransaction();
 
-    assertEquals(0, graphSession.findAllProcessDefinitionVersions(processDefinition.getName()).size());
+    assertEquals(0, graphSession.findAllProcessDefinitions().size());
     assertEquals(0, graphSession.findProcessInstances(processDefinition.getId()).size());
   }
 
-  public void testLatestProcessDefinitions() {
-    ensureCleanProcessDefinitionTable();
-
+  public void testLatestProcessDefinitions()
+  {
     ProcessDefinition websale = new ProcessDefinition("websale");
     jbpmContext.deployProcessDefinition(websale);
     jbpmContext.deployProcessDefinition(websale);
@@ -442,23 +413,14 @@
     graphSession.deleteProcessDefinition(changeNappy.getId());
   }
 
-  private void ensureCleanProcessDefinitionTable() {
-    List processDefinitions = session.createCriteria(ProcessDefinition.class).list();
-    if (!processDefinitions.isEmpty()) {
-      System.err.println("FIXME: "+ getClass().getName() + "." + getName() +
-          " found " + processDefinitions.size() + " process definitions left over");
-      for (Iterator i = processDefinitions.iterator(); i.hasNext();) {
-        ProcessDefinition processDefinition = (ProcessDefinition) i.next();
-        graphSession.deleteProcessDefinition(processDefinition);
-      }
-    }
-  }
-
-  private int getVersionOfProcess(String name, List latestProcessDefinitions) {
+  private int getVersionOfProcess(String name, List latestProcessDefinitions)
+  {
     Iterator iter = latestProcessDefinitions.iterator();
-    while (iter.hasNext()) {
-      ProcessDefinition processDefinition = (ProcessDefinition) iter.next();
-      if (name.equals(processDefinition.getName())) {
+    while (iter.hasNext())
+    {
+      ProcessDefinition processDefinition = (ProcessDefinition)iter.next();
+      if (name.equals(processDefinition.getName()))
+      {
         return processDefinition.getVersion();
       }
     }

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -45,47 +45,38 @@
   public void testDeployProcess()
   {
     runTarget("deploy.process");
-    List processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
+    List processDefinitions = graphSession.findAllProcessDefinitions();
     assertEquals(1, processDefinitions.size());
     ProcessDefinition processDefinition = (ProcessDefinition)processDefinitions.get(0);
     assertEquals("timerProcess", processDefinition.getName());
-    graphSession.deleteProcessDefinition(processDefinition);
+    session.delete(processDefinition);
   }
 
   public void testDeployBadProcess()
   {
     runTarget("deploy.bad.process");
-    List processDefinitions = graphSession.findAllProcessDefinitionVersions("sequential process");
+    List processDefinitions = graphSession.findAllProcessDefinitions();
     assertEquals(0, processDefinitions.size());
   }
 
   public void testDeployProcesses()
   {
     runTarget("deploy.processes");
-    List processDefinitions = graphSession.findAllProcessDefinitionVersions("classLoadingProcess");
-    assertEquals(1, processDefinitions.size());
+    List processDefinitions = graphSession.findAllProcessDefinitions();
+    assertEquals(2, processDefinitions.size());
     ProcessDefinition processDefinition = (ProcessDefinition)processDefinitions.get(0);
     assertEquals("classLoadingProcess", processDefinition.getName());
-    graphSession.deleteProcessDefinition(processDefinition);
-
-    processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
-    assertEquals(1, processDefinitions.size());
-    processDefinition = (ProcessDefinition)processDefinitions.get(0);
+    session.delete(processDefinition);
+    processDefinition = (ProcessDefinition)processDefinitions.get(1);
     assertEquals("timerProcess", processDefinition.getName());
-    graphSession.deleteProcessDefinition(processDefinition);
+    session.delete(processDefinition);
   }
 
   public void testDeployProcessesIncludingBad()
   {
     runTarget("deploy.processes.including.bad");
-    List processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
+    List processDefinitions = graphSession.findAllProcessDefinitions();
     assertEquals(0, processDefinitions.size());
-
-    processDefinitions = graphSession.findAllProcessDefinitionVersions("sequential process");
-    assertEquals(0, processDefinitions.size());
-
-    processDefinitions = graphSession.findAllProcessDefinitionVersions("classLoadingProces");
-    assertEquals(0, processDefinitions.size());
   }
 
   private static void runTarget(String target)

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/par/ProcessArchiveDeploymentDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/par/ProcessArchiveDeploymentDbTest.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/par/ProcessArchiveDeploymentDbTest.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -23,6 +23,10 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Arrays;
@@ -33,6 +37,10 @@
 
 import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
+import org.jbpm.graph.exe.ProcessInstance;
+import org.jbpm.instantiation.ProcessClassLoader;
+import org.jbpm.taskmgmt.def.Task;
+import org.jbpm.taskmgmt.def.TaskMgmtDefinition;
 import org.jbpm.util.ClassLoaderUtil;
 import org.jbpm.util.IoUtil;
 
@@ -62,7 +70,7 @@
     {
       newTransaction();
 
-      List allProcessDefinitions = graphSession.findAllProcessDefinitionVersions(processDefinition.getName()); 
+      List allProcessDefinitions = graphSession.findAllProcessDefinitions();
       assertEquals(1, allProcessDefinitions.size());
       
       processDefinition = (ProcessDefinition)allProcessDefinitions.get(0);
@@ -92,7 +100,7 @@
     {
       newTransaction();
 
-      List allProcessDefinitions = graphSession.findAllProcessDefinitionVersions(processDefinition.getName());
+      List allProcessDefinitions = graphSession.findAllProcessDefinitions();
       assertEquals(1, allProcessDefinitions.size());
       processDefinition = (ProcessDefinition)allProcessDefinitions.get(0);
       byte[] processBytes = processDefinition.getFileDefinition().getBytes("classes/org/jbpm/jpdl/par/ProcessArchiveDeploymentDbTest.class");
@@ -127,15 +135,12 @@
     ProcessDefinition processDefinitionTwo = ProcessDefinition.parseParZipInputStream(zipInputStream);
     jbpmContext.deployProcessDefinition(processDefinitionTwo);
 
-    String processDefinitionName = processDefinitionTwo.getName();
-    assertEquals(processDefinitionName, processDefinitionOne.getName());
-
     newTransaction();
 
     try
     {
-      assertEquals(2, graphSession.findAllProcessDefinitionVersions(processDefinitionName).size());
-      assertEquals(2, graphSession.findLatestProcessDefinition(processDefinitionName).getVersion());
+      assertEquals(2, graphSession.findAllProcessDefinitions().size());
+      assertEquals(2, graphSession.findLatestProcessDefinition("the deployable process").getVersion());
     }
     finally
     {

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/xml/XmlSchemaTest.java
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/xml/XmlSchemaTest.java	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/core/src/test/java/org/jbpm/jpdl/xml/XmlSchemaTest.java	2008-11-07 23:54:31 UTC (rev 2810)
@@ -70,7 +70,7 @@
   }
 
   public void testMultipleNamespaces() {
-    JpdlParser.addSchemaResource("org/jbpm/jpdl/xml/sitemap.xsd");
+    JpdlParser.addSchemaResource("org/jbpm/jpdl/xml/files/sitemap.xsd");
     try {
       parseXmlForThisMethod();
       fail("expected exception");

Modified: jbpm3/branches/jbpm-3.3.0.GA/modules/enterprise/jar/pom.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/enterprise/jar/pom.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/enterprise/jar/pom.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -258,7 +258,7 @@
             <artifactId>maven-surefire-plugin</artifactId>
             <configuration>
               <excludes>
-                <!-- xa datasource not available for hsqldb -->
+                <!-- https://jira.jboss.org/jira/browse/JBPM-1709 -->
                 <exclude>org/jbpm/scheduler/ejbtimer/EjbSchedulerTest.java</exclude>
               </excludes>
             </configuration>
@@ -285,7 +285,7 @@
             <artifactId>maven-surefire-plugin</artifactId>
             <configuration>
               <excludes>
-                <!-- xa datasource not available for hsqldb -->
+                <!-- https://jira.jboss.org/jira/browse/JBPM-1709 -->
                 <exclude>org/jbpm/scheduler/ejbtimer/EjbSchedulerTest.java</exclude>
               </excludes>
             </configuration>

Deleted: jbpm3/branches/jbpm-3.3.0.GA/modules/identity/scripts/antrun-jbpm-schema.xml
===================================================================
--- jbpm3/branches/jbpm-3.3.0.GA/modules/identity/scripts/antrun-jbpm-schema.xml	2008-11-07 15:55:19 UTC (rev 2809)
+++ jbpm3/branches/jbpm-3.3.0.GA/modules/identity/scripts/antrun-jbpm-schema.xml	2008-11-07 23:54:31 UTC (rev 2810)
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!--                                                                        -->
-<!--  JBoss, the OpenSource J2EE webOS                                      -->
-<!--                                                                        -->
-<!--  Distributable under LGPL license.                                     -->
-<!--  See terms of license at http://www.gnu.org.                           -->
-<!--                                                                        -->
-<!-- ====================================================================== -->
-
-<!-- $Id: antrun-jbpm-config.xml 2611 2008-10-24 15:25:58Z thomas.diesler at jboss.com $ -->
-
-<project default="create">
-
-  <target name="create">
-    <taskdef resource="org/jbpm/ant/jbpm.ant.tasks.properties">
-      <classpath path="${test.classpath}" />
-    </taskdef>
-    <systemproperty key="log4j.output.dir" value="${log4j.output.dir}"/>
-    <jbpmschema />
-  </target>
-
-</project>
\ No newline at end of file




More information about the jbpm-commits mailing list