You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by je...@apache.org on 2010/08/18 06:12:59 UTC
svn commit: r986561 [3/13] - in /ode/trunk: ./ axis2-war/
axis2-war/src/main/assembly/ axis2-war/src/test/java/org/apache/ode/axis2/
axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/
axis2-war/src/test/java/org/apache/ode/bpel/dao/ axis2-wa...
Added: ode/trunk/bpel-dao/src/main/java/org/apache/ode/dao/store/ProcessConfDAO.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-dao/src/main/java/org/apache/ode/dao/store/ProcessConfDAO.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-dao/src/main/java/org/apache/ode/dao/store/ProcessConfDAO.java (added)
+++ ode/trunk/bpel-dao/src/main/java/org/apache/ode/dao/store/ProcessConfDAO.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.dao.store;
+
+import org.apache.ode.bpel.iapi.ProcessState;
+
+import javax.xml.namespace.QName;
+import java.util.Collection;
+
+/**
+ * DAO interface for a process configuration.
+ * @author mriou <mriou at apache dot org>
+ */
+public interface ProcessConfDAO {
+
+ QName getPID();
+
+ QName getType();
+
+ long getVersion();
+
+ DeploymentUnitDAO getDeploymentUnit();
+
+ ProcessState getState();
+
+ void setState(ProcessState state);
+
+ void setProperty(QName name, String content);
+
+ String getProperty(QName name);
+
+ Collection<QName> getPropertyNames();
+
+ void delete();
+}
Modified: ode/trunk/bpel-epr/pom.xml
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/pom.xml?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-epr/pom.xml (original)
+++ ode/trunk/bpel-epr/pom.xml Wed Aug 18 04:12:49 2010
@@ -48,8 +48,15 @@
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
</dependency>
Modified: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java (original)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java Wed Aug 18 04:12:49 2010
@@ -45,6 +45,10 @@ public class OdeConfigProperties {
public static final String PROP_DB_EXTERNAL_DS = "db.ext.dataSource";
public static final String PROP_DB_EMBEDDED_NAME = "db.emb.name";
+
+ public static final String PROP_DB_EMBEDDED_TYPE = "db.emb.type";
+
+ public static final String PROP_DB_EMBEDDED_CREATE = "db.emb.create";
public static final String PROP_DB_INTERNAL_URL = "db.int.jdbcurl";
@@ -73,7 +77,7 @@ public class OdeConfigProperties {
public static final String PROP_WORKING_DIR = "working.dir";
public static final String PROP_DEPLOY_DIR = "deploy.dir";
-
+
public static final String PROP_EVENT_LISTENERS = "event.listeners";
public static final String PROP_MEX_INTERCEPTORS = "mex.interceptors";
@@ -83,23 +87,27 @@ public class OdeConfigProperties {
public static final String PROP_PROCESS_DEHYDRATION = "process.dehydration";
public static final String PROP_PROCESS_DEHYDRATION_MAXIMUM_AGE = "process.dehydration.maximum.age";
-
+
public static final String PROP_PROCESS_DEHYDRATION_MAXIMUM_COUNT = "process.dehydration.maximum.count";
-
+
public static final String PROP_PROCESS_HYDRATION_LAZY = "process.hydration.lazy";
-
+
public static final String PROP_PROCESS_HYDRATION_LAZY_MINIMUM_SIZE = "process.hydration.lazy.minimum.size";
-
+
public static final String PROP_PROCESS_HYDRATION_THROTTLED_MAXIMUM_COUNT = "process.hydration.throttled.maximum.count";
-
+
public static final String PROP_PROCESS_HYDRATION_THROTTLED_MAXIMUM_SIZE = "process.hydration.throttled.maximum.size";
-
+
public static final String PROP_PROCESS_INSTANCE_THROTTLED_MAXIMUM_COUNT = "process.instance.throttled.maximum.count";
-
+
public static final String PROP_DAOCF = "dao.factory";
- public static final String PROP_MIGRATION_TRANSACTION_TIMEOUT = "migration.transaction.timeout";
+ public static final String PROP_DAOCF_STORE = "dao.factory.store";
+ public static final String PROP_DAOCF_SCHEDULER = "dao.factory.scheduler";
+
+ public static final String PROP_MIGRATION_TRANSACTION_TIMEOUT = "migration.transaction.timeout";
+
public static final String DEFAULT_TX_FACTORY_CLASS_NAME = "org.apache.ode.il.EmbeddedGeronimoFactory";
private File _cfgFile;
@@ -110,7 +118,12 @@ public class OdeConfigProperties {
/** Default defaults for the database embedded name and dao connection factory class. */
private static String __dbEmbName = "jpadb";
- private static String __daoCfClass = "org.apache.ode.dao.jpa.BPELDAOConnectionFactoryImpl";
+ public static String DEFAULT_DAOCF_CLASS = "org.apache.ode.dao.jpa.openjpa.BpelDAOConnectionFactoryImpl";
+ public static String DEFAULT_DAOCF_STORE_CLASS = "org.apache.ode.dao.jpa.openjpa.ConfStoreDAOConnectionFactoryImpl";
+
+ /** Default defaults for the database embedded name and dao connection factory class. */
+ public static String DEFAULT_DB_EMB_NAME = "ode-db";
+ public static String DEFAULT_DB_EMB_TYPE = "h2";
static {
String odep = System.getProperty("ode.persistence");
@@ -118,8 +131,8 @@ public class OdeConfigProperties {
"hibernate".equalsIgnoreCase(odep)) {
__log.debug("Using HIBERNATE due to system property override!");
__dbEmbName = "hibdb";
- __daoCfClass = "org.apache.ode.daohib.bpel.BpelDAOConnectionFactoryImpl";
-
+ DEFAULT_DAOCF_CLASS = "org.apache.ode.dao.hib.bpel.BpelDAOConnectionFactoryImpl";
+ DEFAULT_DAOCF_STORE_CLASS = "org.apache.ode.dao.hib.store.ConfStoreDAOConnectionFactoryImpl";
}
}
/**
@@ -135,6 +148,18 @@ public class OdeConfigProperties {
/** Embedded database (Ode provides default embedded database with connection pool) */
EMBEDDED
}
+
+ /**
+ * Possible database implementation.
+ */
+ public enum EmbeddedDbType {
+
+ DERBY,
+
+ H2,
+
+ HSQL
+ }
public OdeConfigProperties(File cfgFile, String prefix) {
_cfgFile = cfgFile;
@@ -188,15 +213,28 @@ public class OdeConfigProperties {
}
+ public EmbeddedDbType getDbEmbeddedType() {
+ return EmbeddedDbType.valueOf(getProperty(OdeConfigProperties.PROP_DB_EMBEDDED_TYPE, DEFAULT_DB_EMB_TYPE).trim().toUpperCase());
+ }
+
+ public boolean isDbEmbeddedCreate() {
+ return Boolean.valueOf(getProperty(OdeConfigProperties.PROP_DB_EMBEDDED_CREATE, "true"));
+ }
+
public DatabaseMode getDbMode() {
return DatabaseMode.valueOf(getProperty(OdeConfigProperties.PROP_DB_MODE, DatabaseMode.EMBEDDED.toString()).trim()
.toUpperCase());
}
public String getDAOConnectionFactory() {
- return getProperty(PROP_DAOCF, __daoCfClass);
+ return getProperty(PROP_DAOCF, DEFAULT_DAOCF_CLASS);
+ }
+
+ public String getDAOConfStoreConnectionFactory() {
+ return getProperty(PROP_DAOCF_STORE, DEFAULT_DAOCF_STORE_CLASS);
}
+
public String getDbDataSource() {
return getProperty(OdeConfigProperties.PROP_DB_EXTERNAL_DS, "java:comp/env/jdbc/ode-ds");
}
@@ -204,11 +242,11 @@ public class OdeConfigProperties {
public String getDbIntenralJdbcUrl() {
return getProperty(OdeConfigProperties.PROP_DB_INTERNAL_URL, "jdbc:derby://localhost/ode");
}
-
+
public String getDbInternalMCFClass() {
return getProperty("db.int.mcf");
}
-
+
public Properties getDbInternalMCFProperties() {
String prefix = _prefix + "db.int.mcf.";
Properties p = new Properties();
@@ -239,7 +277,7 @@ public class OdeConfigProperties {
}
public int getPoolMaxSize() {
- return Integer.valueOf(getProperty(OdeConfigProperties.PROP_POOL_MAX, "10"));
+ return Integer.valueOf(getProperty(OdeConfigProperties.PROP_POOL_MAX, "15"));
}
public int getPoolMinSize() {
@@ -261,7 +299,7 @@ public class OdeConfigProperties {
public String getDeployDir() {
return getProperty(OdeConfigProperties.PROP_DEPLOY_DIR);
}
-
+
public String getTxFactoryClass() {
return getProperty(OdeConfigProperties.PROP_TX_FACTORY_CLASS, DEFAULT_TX_FACTORY_CLASS_NAME);
}
@@ -282,38 +320,38 @@ public class OdeConfigProperties {
return Boolean.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_DEHYDRATION, "false"));
}
- public long getDehydrationMaximumAge() {
+ public long getDehydrationMaximumAge() {
return Long.valueOf(getProperty(PROP_PROCESS_DEHYDRATION_MAXIMUM_AGE, ""+20*60*1000));
}
-
+
public int getDehydrationMaximumCount() {
return Integer.valueOf(getProperty(PROP_PROCESS_DEHYDRATION_MAXIMUM_COUNT, ""+1000));
}
-
+
public boolean isHydrationLazy() {
return Boolean.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_HYDRATION_LAZY, "true"));
}
-
+
public int getHydrationLazyMinimumSize() {
return Integer.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_HYDRATION_LAZY_MINIMUM_SIZE, String.valueOf(0)));
}
-
+
public int getProcessThrottledMaximumCount() {
return Integer.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_HYDRATION_THROTTLED_MAXIMUM_COUNT, String.valueOf(Integer.MAX_VALUE)));
}
-
+
public int getInstanceThrottledMaximumCount() {
return Integer.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_INSTANCE_THROTTLED_MAXIMUM_COUNT, String.valueOf(Integer.MAX_VALUE)));
}
-
+
public long getProcessThrottledMaximumSize() {
return Long.valueOf(getProperty(OdeConfigProperties.PROP_PROCESS_HYDRATION_THROTTLED_MAXIMUM_SIZE, String.valueOf(Long.MAX_VALUE)));
}
-
+
public boolean isProcessSizeThrottled() {
return getProcessThrottledMaximumSize() == Long.MAX_VALUE;
}
-
+
public boolean isDbLoggingEnabled() {
return Boolean.valueOf(getProperty(OdeConfigProperties.PROP_DB_LOGGING, "false"));
}
@@ -338,7 +376,7 @@ public class OdeConfigProperties {
public String getDbInternalPassword() {
return getProperty(PROP_DB_INTERNAL_PASSWORD);
}
-
+
public int getMigrationTransactionTimeout() {
return Integer.valueOf(getProperty(PROP_MIGRATION_TRANSACTION_TIMEOUT, String.valueOf(0)));
}
Modified: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/Database.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/Database.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/Database.java (original)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/Database.java Wed Aug 18 04:12:49 2010
@@ -19,29 +19,18 @@
package org.apache.ode.il.dbutil;
import java.io.File;
-import java.sql.SQLException;
-import java.util.Properties;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import javax.transaction.TransactionManager;
-import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.derby.jdbc.EmbeddedDriver;
-import org.apache.geronimo.connector.outbound.GenericConnectionManager;
-import org.apache.geronimo.connector.outbound.connectionmanagerconfig.LocalTransactions;
-import org.apache.geronimo.connector.outbound.connectionmanagerconfig.PoolingSupport;
-import org.apache.geronimo.connector.outbound.connectionmanagerconfig.SinglePool;
-import org.apache.geronimo.connector.outbound.connectionmanagerconfig.TransactionSupport;
-import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTracker;
-import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator;
-import org.apache.geronimo.transaction.manager.RecoverableTransactionManager;
-import org.apache.ode.bpel.dao.BpelDAOConnectionFactoryJDBC;
+import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
+import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
import org.apache.ode.il.config.OdeConfigProperties;
import org.apache.ode.utils.LoggingInterceptor;
-import org.tranql.connector.jdbc.JDBCDriverMCF;
+
/**
* Does the dirty work of setting up / obtaining a DataSource based on the configuration in the {@link OdeConfigProperties} object.
@@ -54,15 +43,11 @@ public class Database {
private static final Messages __msgs = Messages.getMessages(Messages.class);
- private static final int CONNECTION_MAX_WAIT_MILLIS = 30000;
-
- private static final int CONNECTION_MAX_IDLE_MINUTES = 5;
-
private OdeConfigProperties _odeConfig;
private boolean _started;
- private GenericConnectionManager _connectionManager;
+ private DatabaseConnectionManager _connectionManager;
private TransactionManager _txm;
@@ -70,9 +55,9 @@ public class Database {
private File _workRoot;
- private boolean _needDerbyShutdown;
+ private boolean _needShutdown;
- private String _derbyUrl;
+ private EmbeddedDatabase _embeddedDB;
public Database(OdeConfigProperties props) {
if (props == null)
@@ -93,7 +78,7 @@ public class Database {
if (_started)
return;
- _needDerbyShutdown = false;
+ _needShutdown = false;
_datasource = null;
_connectionManager = null;
@@ -102,42 +87,35 @@ public class Database {
}
public synchronized void shutdown() {
- if (!_started)
- return;
+ if (!_started) {
+ return;
+ }
- if (_connectionManager != null)
- try {
- __log.debug("Stopping connection manager");
- _connectionManager.doStop();
- } catch (Throwable t) {
- __log.warn("Exception while stopping connection manager: " + t.getMessage());
- } finally {
- _connectionManager = null;
- }
+ if (_connectionManager != null) {
+ try {
+ __log.debug("Stopping connection manager");
+ _connectionManager.shutdown();
+ } catch (Throwable t) {
+ __log.warn("Exception while stopping connection manager: " + t.getMessage());
+ } finally {
+ _connectionManager = null;
+ }
+ }
- if (_needDerbyShutdown) {
- __log.debug("shutting down derby.");
- EmbeddedDriver driver = new EmbeddedDriver();
- try {
- driver.connect(_derbyUrl + ";shutdown=true", new Properties());
- } catch (SQLException ex) {
- // Shutdown will always return an exeption!
- if (ex.getErrorCode() != 45000)
- __log.error("Error shutting down Derby: " + ex.getErrorCode(), ex);
+ if (_needShutdown) {
+ __log.debug("shutting down database.");
+ _embeddedDB.shutdown();
- } catch (Throwable ex) {
- __log.debug("Error shutting down Derby.", ex);
- }
- }
+ }
- _needDerbyShutdown = false;
+ _needShutdown = false;
_datasource = null;
_started = false;
}
public DataSource getDataSource() {
- //return __logSql.isDebugEnabled() ? new LoggingDataSourceWrapper(_datasource, __logSql) : _datasource;
- return __logSql.isDebugEnabled() ? LoggingInterceptor.createLoggingDS(_datasource, __logSql) : _datasource;
+ DataSource ds = __logSql.isDebugEnabled() ? LoggingInterceptor.createLoggingDS(_datasource, __logSql) : _datasource;
+ return ds;
}
private void initDataSource() throws DatabaseConfigException {
@@ -159,7 +137,7 @@ public class Database {
private void initExternalDb() throws DatabaseConfigException {
try {
_datasource = (DataSource) lookupInJndi(_odeConfig.getDbDataSource());
- __log.info(__msgs.msgOdeUsingExternalDb(_odeConfig.getDbDataSource()));
+ __log.debug(__msgs.msgOdeUsingExternalDb(_odeConfig.getDbDataSource()));
} catch (Exception ex) {
String msg = __msgs.msgOdeInitExternalDbFailed(_odeConfig.getDbDataSource());
__log.error(msg, ex);
@@ -168,87 +146,34 @@ public class Database {
}
private void initInternalDb() throws DatabaseConfigException {
- __log.info(__msgs.msgOdeUsingInternalDb(_odeConfig.getDbIntenralJdbcUrl(), _odeConfig.getDbInternalJdbcDriverClass()));
+ __log.debug(__msgs.msgOdeUsingInternalDb(_odeConfig.getDbIntenralJdbcUrl(), _odeConfig.getDbInternalJdbcDriverClass()));
initInternalDb(_odeConfig.getDbIntenralJdbcUrl(), _odeConfig.getDbInternalJdbcDriverClass(),
_odeConfig.getDbInternalUserName(), _odeConfig.getDbInternalPassword());
+
}
private void initInternalDb(String url, String driverClass, String username,String password) throws DatabaseConfigException {
-
- __log.debug("Creating connection pool for " + url + " with driver " + driverClass);
- if (!(_txm instanceof RecoverableTransactionManager)) {
- throw new RuntimeException("TransactionManager is not recoverable.");
- }
-
- TransactionSupport transactionSupport = LocalTransactions.INSTANCE;
- ConnectionTracker connectionTracker = new ConnectionTrackingCoordinator();
-
- PoolingSupport poolingSupport = new SinglePool(
- _odeConfig.getPoolMaxSize(),
- _odeConfig.getPoolMinSize(),
- CONNECTION_MAX_WAIT_MILLIS,
- CONNECTION_MAX_IDLE_MINUTES,
- true, // match one
- false, // match all
- false); // select one assume match
-
- _connectionManager = new GenericConnectionManager(
- transactionSupport,
- poolingSupport,
- null,
- connectionTracker,
- (RecoverableTransactionManager) _txm,
- getClass().getName(),
- getClass().getClassLoader());
-
-
- try {
- javax.resource.spi.ManagedConnectionFactory mcf = null;
- String mcfClass = _odeConfig.getDbInternalMCFClass();
- if (mcfClass != null) {
- Properties dbInternalMCFProps = _odeConfig.getDbInternalMCFProperties();
- if (__log.isDebugEnabled()) {
- __log.debug("Using internal DB MCF " + mcfClass + " " + dbInternalMCFProps);
- }
- mcf = (javax.resource.spi.ManagedConnectionFactory) Class.forName(mcfClass).newInstance();
- BeanUtils.copyProperties(mcf, dbInternalMCFProps);
- } else {
- if (__log.isDebugEnabled()) {
- __log.debug("Using internal DB JDBCDriverMCF");
- }
- JDBCDriverMCF mcf2 = new JDBCDriverMCF();
- mcf = mcf2;
- mcf2.setDriver(driverClass);
- mcf2.setConnectionURL(url);
- if (username != null) {
- mcf2.setUserName(username);
- }
- if (password != null) {
- mcf2.setPassword(password);
- }
- }
- _connectionManager.doStart();
- _datasource = (DataSource) mcf.createConnectionFactory(_connectionManager);
- } catch (Exception ex) {
- String errmsg = __msgs.msgOdeDbPoolStartupFailed(url);
- __log.error(errmsg, ex);
- throw new DatabaseConfigException(errmsg, ex);
- }
+ _connectionManager = new DatabaseConnectionManager(_txm,_odeConfig);
+ _connectionManager.init(url, driverClass, username, password);
+ _datasource = _connectionManager.getDataSource();
}
/**
* Initialize embedded (DERBY) database.
*/
- private void initEmbeddedDb() throws DatabaseConfigException {
+ private void initEmbeddedDb() throws DatabaseConfigException {
- String db = _odeConfig.getDbEmbeddedName();
-
- String url = "jdbc:derby:" + _workRoot + "/" + db ;
- __log.info("Using Embedded Derby: " + url);
- _derbyUrl = url;
- initInternalDb(url, org.apache.derby.jdbc.EmbeddedDriver.class.getName(),"sa",null);
- _needDerbyShutdown = true;
- }
+ switch (_odeConfig.getDbEmbeddedType()) {
+ case DERBY:
+ _embeddedDB = new DerbyDatabase();
+ break;
+ default:
+ _embeddedDB = new H2Database();
+ }
+ _embeddedDB.init(_workRoot,_odeConfig,_txm);
+ _datasource = _embeddedDB.getDataSource();
+ _needShutdown = true;
+ }
@SuppressWarnings("unchecked")
private <T> T lookupInJndi(String objName) throws Exception {
@@ -272,23 +197,40 @@ public class Database {
}
}
- public BpelDAOConnectionFactoryJDBC createDaoCF() throws DatabaseConfigException {
+ public BpelDAOConnectionFactory createDaoCF() throws DatabaseConfigException {
String pClassName = _odeConfig.getDAOConnectionFactory();
- __log.info(__msgs.msgOdeUsingDAOImpl(pClassName));
+ __log.debug(__msgs.msgOdeUsingDAOImpl(pClassName));
+
+ BpelDAOConnectionFactory cf;
+ try {
+ cf = (BpelDAOConnectionFactory) Class.forName(pClassName).newInstance();
+ } catch (Exception ex) {
+ String errmsg = __msgs.msgDAOInstantiationFailed(pClassName);
+ __log.error(errmsg, ex);
+ throw new DatabaseConfigException(errmsg, ex);
+ }
+
+ cf.init(_odeConfig.getProperties(),_txm,getDataSource());
+ return cf;
+ }
+
+
+ public ConfStoreDAOConnectionFactory createDaoStoreCF() throws DatabaseConfigException {
+ String pClassName = _odeConfig.getDAOConfStoreConnectionFactory();
+
+ __log.debug(__msgs.msgOdeUsingDAOImpl(pClassName));
- BpelDAOConnectionFactoryJDBC cf;
+ ConfStoreDAOConnectionFactory cf;
try {
- cf = (BpelDAOConnectionFactoryJDBC) Class.forName(pClassName).newInstance();
+ cf = (ConfStoreDAOConnectionFactory) Class.forName(pClassName).newInstance();
} catch (Exception ex) {
String errmsg = __msgs.msgDAOInstantiationFailed(pClassName);
__log.error(errmsg, ex);
throw new DatabaseConfigException(errmsg, ex);
}
- cf.setDataSource(getDataSource());
- cf.setTransactionManager(_txm);
- cf.init(_odeConfig.getProperties());
+ cf.init(_odeConfig.getProperties(),_txm,getDataSource());
return cf;
}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DatabaseConnectionManager.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DatabaseConnectionManager.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DatabaseConnectionManager.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DatabaseConnectionManager.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,117 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.dbutil;
+
+
+import javax.sql.DataSource;
+import javax.transaction.TransactionManager;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.geronimo.connector.outbound.GenericConnectionManager;
+import org.apache.geronimo.connector.outbound.connectionmanagerconfig.LocalTransactions;
+import org.apache.geronimo.connector.outbound.connectionmanagerconfig.PoolingSupport;
+import org.apache.geronimo.connector.outbound.connectionmanagerconfig.SinglePool;
+import org.apache.geronimo.connector.outbound.connectionmanagerconfig.TransactionSupport;
+import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTracker;
+import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator;
+import org.apache.geronimo.transaction.manager.RecoverableTransactionManager;
+import org.apache.ode.il.config.OdeConfigProperties;
+import org.apache.ode.il.txutil.TxManager;
+import org.tranql.connector.jdbc.JDBCDriverMCF;
+
+public class DatabaseConnectionManager {
+
+ private static final long serialVersionUID = 1L;
+ private static final Log __log = LogFactory.getLog(DatabaseConnectionManager.class);
+ private static final Messages __msgs = Messages.getMessages(Messages.class);
+ private static final int CONNECTION_MAX_WAIT_MILLIS = 30000;
+ private static final int CONNECTION_MAX_IDLE_MINUTES = 5;
+ private GenericConnectionManager _connectionManager;
+ private TransactionManager _txm = null;
+ private String _url = null;
+ private OdeConfigProperties _odeConfig = null;
+ private DataSource _dataSource = null;
+
+ public DatabaseConnectionManager(TransactionManager txm, OdeConfigProperties odeConfig) {
+ _txm = txm;
+ _odeConfig = odeConfig;
+ }
+
+ public void init(String url, String driverClass, String username, String password) throws DatabaseConfigException {
+ __log.debug("Creating connection pool for " + url + " with driver " + driverClass);
+
+ if (!(_txm instanceof RecoverableTransactionManager)) {
+ throw new RuntimeException("TransactionManager is not recoverable.");
+ }
+
+ _url = url;
+ TransactionSupport transactionSupport = LocalTransactions.INSTANCE;
+ ConnectionTracker connectionTracker = new ConnectionTrackingCoordinator();
+
+ PoolingSupport poolingSupport = new SinglePool(
+ _odeConfig.getPoolMaxSize(),
+ _odeConfig.getPoolMinSize(),
+ CONNECTION_MAX_WAIT_MILLIS,
+ CONNECTION_MAX_IDLE_MINUTES,
+ true, // match one
+ false, // match all
+ false); // select one assume match
+
+ _connectionManager = new GenericConnectionManager(
+ transactionSupport,
+ poolingSupport,
+ null,
+ connectionTracker,
+ (RecoverableTransactionManager) _txm,
+ getClass().getName(),
+ getClass().getClassLoader());
+
+ JDBCDriverMCF mcf = new JDBCDriverMCF();
+ try {
+ mcf.setDriver(driverClass);
+ mcf.setConnectionURL(url);
+ if (username != null) {
+ mcf.setUserName(username);
+ }
+ if (password != null) {
+ mcf.setPassword(password);
+ }
+ _connectionManager.doStart();
+ _dataSource = (DataSource) mcf.createConnectionFactory(_connectionManager);
+ } catch (Exception ex) {
+ String errmsg = __msgs.msgOdeDbPoolStartupFailed(url);
+ __log.error(errmsg, ex);
+ throw new DatabaseConfigException(errmsg, ex);
+ }
+ }
+
+ public void shutdown() throws DatabaseConfigException {
+ try {
+ _connectionManager.doStop();
+ } catch (Exception ex) {
+ String errmsg = __msgs.msgOdeDbPoolStartupFailed(_url);
+ __log.error(errmsg, ex);
+ throw new DatabaseConfigException(errmsg, ex);
+ }
+ }
+
+ public DataSource getDataSource() {
+ return _dataSource;
+ }
+}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DerbyDatabase.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DerbyDatabase.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DerbyDatabase.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/DerbyDatabase.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,104 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.dbutil;
+
+import java.io.File;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import javax.sql.DataSource;
+import javax.transaction.TransactionManager;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.derby.impl.io.VFMemoryStorageFactory;
+import org.apache.derby.jdbc.EmbeddedDataSource;
+import org.apache.ode.il.config.OdeConfigProperties;
+
+public class DerbyDatabase implements EmbeddedDatabase {
+
+ private static final Log __log = LogFactory.getLog(DerbyDatabase.class);
+ private DatabaseConnectionManager _connectionManager;
+ private String _dbUrl = null;
+ private DataSource _dataSource = null;
+ private File _workRoot = null;
+ private String _dbName = null;
+
+ public void init(File workRoot, OdeConfigProperties props, TransactionManager txm) {
+ _workRoot = workRoot;
+ _dbName = props.getDbEmbeddedName();
+ if (_workRoot == null) {
+ _dbUrl = "jdbc:derby:memory:" + _dbName + ";create=true";
+ try {
+ DriverManager.getConnection(_dbUrl).close();
+ } catch (SQLException se) {
+ __log.error(se);
+ }
+ EmbeddedDataSource dds = new EmbeddedDataSource();
+ dds.setDatabaseName("memory:" + _dbName);
+ dds.setUser("sa");
+ dds.setCreateDatabase("true");
+ _dataSource = dds;
+ } else {
+ _dbUrl = "jdbc:derby:" + _workRoot + File.separator + _dbName;
+ if (props.isDbEmbeddedCreate()) {
+ _dbUrl += ";create=true";
+ }
+ String clazz = org.apache.derby.jdbc.EmbeddedDriver.class.getName();
+ _connectionManager = new DatabaseConnectionManager(txm, props);
+ try {
+ _connectionManager.init(_dbUrl, clazz, "sa", null);
+ } catch (DatabaseConfigException ex) {
+ __log.error("Unable to initialize connection pool", ex);
+ }
+ _dataSource = _connectionManager.getDataSource();
+ __log.debug("Using Embedded Database: " + _dbUrl);
+ }
+ }
+
+ public void shutdown() {
+ if (_connectionManager != null) {
+ try {
+ _connectionManager.shutdown();
+ } catch (DatabaseConfigException ex) {
+ __log.error("unable to shutdown connection pool", ex);
+ }
+ }
+ try {
+ DriverManager.getConnection(_dbUrl + ";shutdown=true").close();
+ } catch (SQLException ex) {
+ // Shutdown will always return an exeption!
+ if (ex.getErrorCode() != 45000) {
+ __log.error("Error shutting down Derby: " + ex.getErrorCode(), ex);
+ }
+ } catch (Throwable ex) {
+ __log.debug("Error shutting down Derby.", ex);
+ }
+ if (_workRoot == null) {
+ try {
+ //Don't worry about File IO, this is only virtual
+ VFMemoryStorageFactory.purgeDatabase(new File(_dbName).getCanonicalPath());
+ } catch (Exception e) {
+ __log.debug("Error shutting down Derby.", e);
+ }
+ }
+ }
+
+ public DataSource getDataSource() {
+ return _dataSource;
+ }
+}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/EmbeddedDatabase.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/EmbeddedDatabase.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/EmbeddedDatabase.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/EmbeddedDatabase.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.dbutil;
+
+import java.io.File;
+import javax.sql.DataSource;
+import javax.transaction.TransactionManager;
+import org.apache.ode.il.config.OdeConfigProperties;
+
+public interface EmbeddedDatabase {
+
+ void init(File workRoot, OdeConfigProperties props, TransactionManager txm);
+
+ void shutdown();
+
+ DataSource getDataSource();
+}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/H2Database.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/H2Database.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/H2Database.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/dbutil/H2Database.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,81 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.dbutil;
+
+import java.io.File;
+import java.sql.Connection;
+import javax.sql.DataSource;
+import javax.transaction.TransactionManager;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ode.il.config.OdeConfigProperties;
+import org.h2.jdbcx.JdbcDataSource;
+
+public class H2Database implements EmbeddedDatabase {
+
+ private static final Log __log = LogFactory.getLog(H2Database.class);
+ private DatabaseConnectionManager _connectionManager;
+ private String _dbUrl = null;
+ private DataSource _dataSource = null;
+
+ public void init(File workRoot, OdeConfigProperties props, TransactionManager txm) {
+ String db = props.getDbEmbeddedName();
+ if (workRoot == null) {
+ _dbUrl = "jdbc:h2:mem:" + db + ";DB_CLOSE_DELAY=-1";
+ JdbcDataSource hds = new JdbcDataSource();
+ hds.setURL(_dbUrl);
+ hds.setUser("sa");
+ _dataSource = hds;
+ } else {
+ _dbUrl = "jdbc:h2:" + workRoot + File.separator + db;
+ if (!props.isDbEmbeddedCreate()) {
+ _dbUrl += ";IFEXISTS=TRUE";
+ }
+ String clazz = org.h2.Driver.class.getName();
+ _connectionManager = new DatabaseConnectionManager(txm, props);
+ try {
+ _connectionManager.init(_dbUrl, clazz, "sa", null);
+ } catch (DatabaseConfigException ex) {
+ __log.error("Unable to initialize connection pool", ex);
+ }
+ _dataSource = _connectionManager.getDataSource();
+ }
+ __log.debug("Using Embedded Database: " + _dbUrl);
+ }
+
+ public void shutdown() {
+ if (_connectionManager != null) {
+ try {
+ _connectionManager.shutdown();
+ } catch (DatabaseConfigException ex) {
+ __log.error("unable to shutdown connection pool", ex);
+ }
+ }
+ try {
+ Connection conn = getDataSource().getConnection();
+ conn.createStatement().execute("SHUTDOWN");
+ } catch (Throwable ex) {
+ __log.debug("Error shutting down H2.", ex);
+ }
+ }
+
+ public DataSource getDataSource() {
+ return _dataSource;
+ }
+}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TransactionConfigException.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TransactionConfigException.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TransactionConfigException.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TransactionConfigException.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.txutil;
+
+public class TransactionConfigException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ public TransactionConfigException(String msg, Exception ex) {
+ super(msg,ex);
+ }
+
+}
Added: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TxManager.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TxManager.java?rev=986561&view=auto
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TxManager.java (added)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/txutil/TxManager.java Wed Aug 18 04:12:49 2010
@@ -0,0 +1,173 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.il.txutil;
+
+import javax.transaction.HeuristicMixedException;
+import javax.transaction.HeuristicRollbackException;
+import javax.transaction.InvalidTransactionException;
+import javax.transaction.NotSupportedException;
+import javax.transaction.RollbackException;
+import javax.transaction.Synchronization;
+import javax.transaction.SystemException;
+import javax.transaction.Transaction;
+import javax.transaction.TransactionManager;
+import javax.transaction.xa.XAResource;
+
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ode.il.config.OdeConfigProperties;
+
+
+/**
+ * Does the dirty work of setting up / obtaining a TransactionManager based on the configuration in the {@link OdeConfigProperties} object.
+ *
+ */
+public class TxManager {
+ private static final Log __log = LogFactory.getLog(TxManager.class);
+
+ private OdeConfigProperties _odeConfig;
+ private boolean _debugTxn = false;
+
+
+ public TxManager(OdeConfigProperties props) {
+ if (props == null)
+ throw new NullPointerException("Must provide a configuration.");
+
+ _odeConfig = props;
+ _debugTxn=Boolean.valueOf(_odeConfig.getProperty("tx.debug","false"));
+ }
+
+
+ public TransactionManager createTransactionManager() throws TransactionConfigException {
+ String txFactoryName = _odeConfig.getTxFactoryClass();
+ __log.debug("Initializing transaction manager using " + txFactoryName);
+ try {
+ Class txFactClass = Class.forName(txFactoryName);
+ Object txFact = txFactClass.newInstance();
+ TransactionManager txMgr = (TransactionManager) txFactClass.getMethod("getTransactionManager", (Class[]) null).invoke(txFact);
+ if (__log.isDebugEnabled() && _debugTxn)
+ txMgr = new DebugTxMgr(txMgr);
+ return txMgr;
+ } catch (Exception e) {
+ __log.fatal("Couldn't initialize a transaction manager with factory: " + txFactoryName, e);
+ throw new TransactionConfigException("Couldn't initialize a transaction manager with factory: " + txFactoryName, e);
+ }
+ }
+
+
+ // Transactional debugging stuff, to track down all these little annoying bugs.
+ public static class DebugTxMgr implements TransactionManager {
+ protected TransactionManager _tm;
+
+ public DebugTxMgr(TransactionManager tm) {
+ _tm = tm;
+ }
+
+ public void begin() throws NotSupportedException, SystemException {
+ __log.debug("Txm begin");
+ _tm.begin();
+ }
+
+ public void commit() throws HeuristicMixedException, HeuristicRollbackException, IllegalStateException, RollbackException, SecurityException, SystemException {
+ __log.debug("Txm commit");
+ for (StackTraceElement traceElement : Thread.currentThread().getStackTrace()) {
+ __log.debug(traceElement.toString());
+ }
+ _tm.commit();
+ }
+
+ public int getStatus() throws SystemException {
+ __log.debug("Txm status");
+ return _tm.getStatus();
+ }
+
+ public Transaction getTransaction() throws SystemException {
+ Transaction tx = _tm.getTransaction();
+ __log.debug("Txm get tx " + tx);
+ return tx == null ? null : new DebugTx(tx);
+ }
+
+ public void resume(Transaction transaction) throws IllegalStateException, InvalidTransactionException, SystemException {
+ __log.debug("Txm resume");
+ _tm.resume(transaction);
+ }
+
+ public void rollback() throws IllegalStateException, SecurityException, SystemException {
+ __log.debug("Txm rollback");
+ _tm.rollback();
+ }
+
+ public void setRollbackOnly() throws IllegalStateException, SystemException {
+ __log.debug("Txm set rollback");
+ _tm.setRollbackOnly();
+ }
+
+ public void setTransactionTimeout(int i) throws SystemException {
+ __log.debug("Txm set tiemout " + i);
+ _tm.setTransactionTimeout(i);
+ }
+
+ public Transaction suspend() throws SystemException {
+ __log.debug("Txm suspend");
+ return _tm.suspend();
+ }
+ }
+
+ public static class DebugTx implements Transaction {
+ private Transaction _tx;
+
+ public DebugTx(Transaction tx) {
+ _tx = tx;
+ }
+
+ public void commit() throws HeuristicMixedException, HeuristicRollbackException, RollbackException, SecurityException, SystemException {
+ __log.debug("Tx commit");
+ _tx.commit();
+ }
+
+ public boolean delistResource(XAResource xaResource, int i) throws IllegalStateException, SystemException {
+ return _tx.delistResource(xaResource, i);
+ }
+
+ public boolean enlistResource(XAResource xaResource) throws IllegalStateException, RollbackException, SystemException {
+ return _tx.enlistResource(xaResource);
+ }
+
+ public int getStatus() throws SystemException {
+ return _tx.getStatus();
+ }
+
+ public void registerSynchronization(Synchronization synchronization) throws IllegalStateException, RollbackException, SystemException {
+ __log.debug("Synchronization registration on " + synchronization.getClass().getName());
+ _tx.registerSynchronization(synchronization);
+ }
+
+ public void rollback() throws IllegalStateException, SystemException {
+ __log.debug("Tx rollback");
+ _tx.rollback();
+ }
+
+ public void setRollbackOnly() throws IllegalStateException, SystemException {
+ __log.debug("Tx set rollback");
+ _tx.setRollbackOnly();
+ }
+ }
+
+}
Modified: ode/trunk/bpel-runtime/pom.xml
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/pom.xml?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/pom.xml (original)
+++ ode/trunk/bpel-runtime/pom.xml Wed Aug 18 04:12:49 2010
@@ -39,6 +39,10 @@
</dependency>
<dependency>
<groupId>org.apache.ode</groupId>
+ <artifactId>ode-agents</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ode</groupId>
<artifactId>ode-bpel-api</artifactId>
</dependency>
<dependency>
@@ -81,6 +85,11 @@
</dependency>
<dependency>
<groupId>org.apache.ode</groupId>
+ <artifactId>ode-dao-jpa-ojpa</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ode</groupId>
<artifactId>ode-dao-hibernate</artifactId>
<scope>test</scope>
</dependency>
@@ -95,10 +104,10 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
<scope>test</scope>
- </dependency>
+ </dependency>
<dependency>
<groupId>jmock</groupId>
<artifactId>jmock</artifactId>
@@ -110,27 +119,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.apache.ode</groupId>
- <artifactId>ode-agents</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.ode</groupId>
- <artifactId>ode-jacob</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.ode</groupId>
- <artifactId>ode-utils</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.ode</groupId>
- <artifactId>ode-bpel-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.ode</groupId>
- <artifactId>ode-bpel-dao</artifactId>
- </dependency>
- <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
@@ -191,18 +179,21 @@
<artifactId>xercesImpl</artifactId>
</dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
-
<dependency>
<groupId>tranql</groupId>
<artifactId>tranql-connector-derby-common</artifactId>
<version>1.1</version>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </dependency>
</dependencies>
<build>
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelDatabase.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelDatabase.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelDatabase.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelDatabase.java Wed Aug 18 04:12:49 2010
@@ -22,9 +22,9 @@ package org.apache.ode.bpel.engine;
import javax.xml.namespace.QName;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.BpelDAOConnectionFactory;
import org.apache.ode.bpel.iapi.Scheduler;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelEngineImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelEngineImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelEngineImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelEngineImpl.java Wed Aug 18 04:12:49 2010
@@ -34,9 +34,6 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.evt.BpelEvent;
import org.apache.ode.bpel.iapi.BpelEngine;
import org.apache.ode.bpel.iapi.BpelEngineException;
@@ -64,6 +61,9 @@ import org.apache.ode.bpel.o.OConstants;
import org.apache.ode.bpel.o.OPartnerLink;
import org.apache.ode.bpel.o.OProcess;
import org.apache.ode.bpel.runtime.InvalidProcessException;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
import org.apache.ode.utils.DOMUtils;
import org.apache.ode.utils.Namespaces;
import org.apache.ode.utils.msg.MessageBundle;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelManagementFacadeImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelManagementFacadeImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelManagementFacadeImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelManagementFacadeImpl.java Wed Aug 18 04:12:49 2010
@@ -18,24 +18,38 @@
*/
package org.apache.ode.bpel.engine;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
import org.apache.ode.bpel.bdi.breaks.ActivityBreakpoint;
import org.apache.ode.bpel.bdi.breaks.Breakpoint;
import org.apache.ode.bpel.bdi.breaks.VariableModificationBreakpoint;
import org.apache.ode.bpel.common.CorrelationKey;
-import org.apache.ode.bpel.dao.*;
import org.apache.ode.bpel.iapi.BpelServer;
import org.apache.ode.bpel.iapi.ProcessStore;
import org.apache.ode.bpel.o.OProcess;
-import org.apache.ode.bpel.pmapi.*;
+import org.apache.ode.bpel.pmapi.BpelManagementFacade;
+import org.apache.ode.bpel.pmapi.EventInfoListDocument;
+import org.apache.ode.bpel.pmapi.InstanceNotFoundException;
+import org.apache.ode.bpel.pmapi.InvalidRequestException;
+import org.apache.ode.bpel.pmapi.ManagementException;
+import org.apache.ode.bpel.pmapi.ProcessingException;
import org.apache.ode.bpel.pmapi.TInstanceInfo.EventInfo;
import org.apache.ode.bpel.runtime.breaks.ActivityBreakpointImpl;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.CorrelationSetDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
+import org.apache.ode.dao.bpel.ScopeDAO;
+import org.apache.ode.dao.bpel.XmlDataDAO;
import org.apache.ode.utils.DOMUtils;
import org.apache.ode.utils.uuid.UUIDGen;
import org.w3c.dom.Node;
-import javax.xml.namespace.QName;
-import java.util.*;
-
/**
* Implementation of the instance/process management interaction. This class implements
* the methods necessary to support process debugging. It also implements all the methods in the
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java Wed Aug 18 04:12:49 2010
@@ -21,15 +21,12 @@ package org.apache.ode.bpel.engine;
import java.io.InputStream;
import java.net.URI;
import java.util.ArrayList;
-import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.Callable;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
import javax.wsdl.Fault;
import javax.xml.namespace.QName;
@@ -39,13 +36,6 @@ import org.apache.commons.logging.LogFac
import org.apache.ode.agents.memory.SizingAgent;
import org.apache.ode.bpel.common.FaultException;
import org.apache.ode.bpel.common.ProcessState;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.DeferredProcessInstanceCleanable;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl;
import org.apache.ode.bpel.engine.extvar.ExternalVariableConf;
import org.apache.ode.bpel.engine.extvar.ExternalVariableManager;
import org.apache.ode.bpel.evt.ProcessInstanceEvent;
@@ -59,7 +49,6 @@ import org.apache.ode.bpel.iapi.MessageE
import org.apache.ode.bpel.iapi.PartnerRoleChannel;
import org.apache.ode.bpel.iapi.PartnerRoleMessageExchange;
import org.apache.ode.bpel.iapi.ProcessConf;
-import org.apache.ode.bpel.iapi.Scheduler;
import org.apache.ode.bpel.iapi.MessageExchange.Status;
import org.apache.ode.bpel.iapi.ProcessConf.CLEANUP_CATEGORY;
import org.apache.ode.bpel.iapi.Scheduler.JobDetails;
@@ -79,6 +68,10 @@ import org.apache.ode.bpel.runtime.Inval
import org.apache.ode.bpel.runtime.PROCESS;
import org.apache.ode.bpel.runtime.PropertyAliasEvaluationContext;
import org.apache.ode.bpel.runtime.channels.FaultData;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
import org.apache.ode.jacob.soup.ReplacementMap;
import org.apache.ode.utils.ObjectPrinter;
import org.apache.ode.utils.Properties;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcessDatabase.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcessDatabase.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcessDatabase.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcessDatabase.java Wed Aug 18 04:12:49 2010
@@ -18,9 +18,9 @@
*/
package org.apache.ode.bpel.engine;
-import org.apache.ode.bpel.dao.BpelDAOConnectionFactory;
-import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.iapi.Scheduler;
+import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
+import org.apache.ode.dao.bpel.ProcessDAO;
import javax.xml.namespace.QName;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java Wed Aug 18 04:12:49 2010
@@ -40,17 +40,6 @@ import org.apache.ode.bpel.common.Correl
import org.apache.ode.bpel.common.CorrelationKeySet;
import org.apache.ode.bpel.common.FaultException;
import org.apache.ode.bpel.common.ProcessState;
-import org.apache.ode.bpel.dao.CorrelationSetDAO;
-import org.apache.ode.bpel.dao.CorrelatorDAO;
-import org.apache.ode.bpel.dao.MessageDAO;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
-import org.apache.ode.bpel.dao.MessageRouteDAO;
-import org.apache.ode.bpel.dao.PartnerLinkDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.apache.ode.bpel.dao.ScopeDAO;
-import org.apache.ode.bpel.dao.ScopeStateEnum;
-import org.apache.ode.bpel.dao.XmlDataDAO;
import org.apache.ode.bpel.evar.ExternalVariableModuleException;
import org.apache.ode.bpel.evar.ExternalVariableModule.Value;
import org.apache.ode.bpel.evt.CorrelationSetWriteEvent;
@@ -109,6 +98,17 @@ import org.apache.ode.utils.Namespaces;
import org.apache.ode.utils.ObjectPrinter;
import org.apache.ode.bpel.evar.ExternalVariableModuleException;
import org.apache.ode.bpel.evar.ExternalVariableModule.Value;
+import org.apache.ode.dao.bpel.CorrelationSetDAO;
+import org.apache.ode.dao.bpel.CorrelatorDAO;
+import org.apache.ode.dao.bpel.MessageDAO;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
+import org.apache.ode.dao.bpel.MessageRouteDAO;
+import org.apache.ode.dao.bpel.PartnerLinkDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
+import org.apache.ode.dao.bpel.ScopeDAO;
+import org.apache.ode.dao.bpel.ScopeStateEnum;
+import org.apache.ode.dao.bpel.XmlDataDAO;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java Wed Aug 18 04:12:49 2010
@@ -35,10 +35,6 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.BpelDAOConnectionFactory;
-import org.apache.ode.bpel.dao.DeferredProcessInstanceCleanable;
-import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.engine.cron.CronScheduler;
import org.apache.ode.bpel.engine.migration.MigrationHandler;
import org.apache.ode.bpel.evar.ExternalVariableModule;
@@ -59,6 +55,10 @@ import org.apache.ode.bpel.iapi.Schedule
import org.apache.ode.bpel.iapi.Scheduler.Synchronizer;
import org.apache.ode.bpel.intercept.MessageExchangeInterceptor;
import org.apache.ode.bpel.o.OProcess;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
+import org.apache.ode.dao.bpel.DeferredProcessInstanceCleanable;
+import org.apache.ode.dao.bpel.ProcessDAO;
import org.apache.ode.utils.msg.MessageBundle;
import org.apache.ode.utils.stl.CollectionsX;
import org.apache.ode.utils.stl.MemberOfFunction;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BrokeredMyRoleMessageExchangeImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BrokeredMyRoleMessageExchangeImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BrokeredMyRoleMessageExchangeImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BrokeredMyRoleMessageExchangeImpl.java Wed Aug 18 04:12:49 2010
@@ -28,12 +28,12 @@ import java.util.concurrent.TimeoutExcep
import javax.wsdl.Operation;
import javax.wsdl.PortType;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.iapi.BpelEngineException;
import org.apache.ode.bpel.iapi.EndpointReference;
import org.apache.ode.bpel.iapi.Message;
import org.apache.ode.bpel.iapi.MyRoleMessageExchange;
import org.apache.ode.bpel.iapi.ProcessState;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
/**
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/Contexts.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/Contexts.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/Contexts.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/Contexts.java Wed Aug 18 04:12:49 2010
@@ -19,7 +19,6 @@
package org.apache.ode.bpel.engine;
-import org.apache.ode.bpel.dao.BpelDAOConnectionFactory;
import org.apache.ode.bpel.iapi.BindingContext;
import org.apache.ode.bpel.iapi.BpelEventListener;
import org.apache.ode.bpel.iapi.EndpointReferenceContext;
@@ -28,6 +27,7 @@ import org.apache.ode.bpel.iapi.Schedule
import org.apache.ode.bpel.intercept.MessageExchangeInterceptor;
import org.apache.ode.bpel.engine.cron.CronScheduler;
import org.apache.ode.bpel.evar.ExternalVariableModule;
+import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
import java.util.HashMap;
import java.util.List;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/DebuggerSupport.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/DebuggerSupport.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/DebuggerSupport.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/DebuggerSupport.java Wed Aug 18 04:12:49 2010
@@ -25,9 +25,6 @@ import org.apache.ode.bpel.iapi.Schedule
import org.apache.ode.bpel.iapi.Scheduler.JobType;
import org.apache.ode.bpel.bdi.breaks.Breakpoint;
import org.apache.ode.bpel.common.ProcessState;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.evt.ActivityExecStartEvent;
import org.apache.ode.bpel.evt.BpelEvent;
import org.apache.ode.bpel.evt.ProcessCompletionEvent;
@@ -41,6 +38,9 @@ import org.apache.ode.bpel.pmapi.Instanc
import org.apache.ode.bpel.pmapi.ManagementException;
import org.apache.ode.bpel.pmapi.ProcessingException;
import org.apache.ode.bpel.runtime.breaks.BreakpointImpl;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
import org.apache.ode.utils.CollectionUtils;
import org.apache.ode.utils.msg.MessageBundle;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/InterceptorContextImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/InterceptorContextImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/InterceptorContextImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/InterceptorContextImpl.java Wed Aug 18 04:12:49 2010
@@ -18,11 +18,11 @@
*/
package org.apache.ode.bpel.engine;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.iapi.BpelEngine;
import org.apache.ode.bpel.iapi.ProcessConf;
import org.apache.ode.bpel.intercept.MessageExchangeInterceptor.InterceptorContext;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.ProcessDAO;
/**
* Implementation of the {@link org.apache.ode.bpel.intercept.MessageExchangeInterceptor.InterceptorContext}
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageExchangeImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageExchangeImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageExchangeImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageExchangeImpl.java Wed Aug 18 04:12:49 2010
@@ -21,12 +21,12 @@ package org.apache.ode.bpel.engine;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.MessageDAO;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.iapi.BpelEngineException;
import org.apache.ode.bpel.iapi.EndpointReference;
import org.apache.ode.bpel.iapi.Message;
import org.apache.ode.bpel.iapi.MessageExchange;
+import org.apache.ode.dao.bpel.MessageDAO;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
import org.apache.ode.utils.msg.MessageBundle;
import org.w3c.dom.Element;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MessageImpl.java Wed Aug 18 04:12:49 2010
@@ -31,8 +31,8 @@ import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import org.w3c.dom.Document;
-import org.apache.ode.bpel.dao.MessageDAO;
import org.apache.ode.bpel.iapi.Message;
+import org.apache.ode.dao.bpel.MessageDAO;
import org.apache.ode.utils.DOMUtils;
public class MessageImpl implements Message {
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MexDaoUtil.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MexDaoUtil.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MexDaoUtil.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MexDaoUtil.java Wed Aug 18 04:12:49 2010
@@ -21,12 +21,12 @@ package org.apache.ode.bpel.engine;
import javax.xml.namespace.QName;
-import org.apache.ode.bpel.dao.MessageDAO;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.iapi.Message;
import org.apache.ode.bpel.iapi.MessageExchange;
import org.apache.ode.bpel.iapi.MessageExchange.FailureType;
import org.apache.ode.bpel.iapi.MessageExchange.Status;
+import org.apache.ode.dao.bpel.MessageDAO;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
import org.w3c.dom.Element;
/**
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MyRoleMessageExchangeImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MyRoleMessageExchangeImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MyRoleMessageExchangeImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/MyRoleMessageExchangeImpl.java Wed Aug 18 04:12:49 2010
@@ -33,7 +33,6 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.engine.replayer.Replayer;
import org.apache.ode.bpel.iapi.Message;
import org.apache.ode.bpel.iapi.MessageExchange;
@@ -48,6 +47,7 @@ import org.apache.ode.bpel.intercept.Fau
import org.apache.ode.bpel.intercept.InterceptorInvoker;
import org.apache.ode.bpel.intercept.MessageExchangeInterceptor;
import org.apache.ode.bpel.intercept.MessageExchangeInterceptor.InterceptorContext;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerLinkMyRoleImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerLinkMyRoleImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerLinkMyRoleImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerLinkMyRoleImpl.java Wed Aug 18 04:12:49 2010
@@ -35,10 +35,6 @@ import org.apache.ode.bpel.common.Correl
import org.apache.ode.bpel.common.FaultException;
import org.apache.ode.bpel.common.InvalidMessageException;
import org.apache.ode.bpel.common.OptionalCorrelationKey;
-import org.apache.ode.bpel.dao.CorrelatorDAO;
-import org.apache.ode.bpel.dao.MessageRouteDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.evt.CorrelationMatchEvent;
import org.apache.ode.bpel.evt.CorrelationNoMatchEvent;
import org.apache.ode.bpel.evt.NewProcessInstanceEvent;
@@ -56,6 +52,10 @@ import org.apache.ode.bpel.o.OProcess;
import org.apache.ode.bpel.o.OScope;
import org.apache.ode.bpel.runtime.InvalidProcessException;
import org.apache.ode.bpel.runtime.PROCESS;
+import org.apache.ode.dao.bpel.CorrelatorDAO;
+import org.apache.ode.dao.bpel.MessageRouteDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
import org.apache.ode.utils.ObjectPrinter;
import org.apache.ode.utils.msg.MessageBundle;
import org.w3c.dom.Element;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerRoleMessageExchangeImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerRoleMessageExchangeImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerRoleMessageExchangeImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/PartnerRoleMessageExchangeImpl.java Wed Aug 18 04:12:49 2010
@@ -21,7 +21,6 @@ package org.apache.ode.bpel.engine;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.engine.replayer.Replayer;
import org.apache.ode.bpel.iapi.BpelEngineException;
import org.apache.ode.bpel.iapi.EndpointReference;
@@ -30,6 +29,7 @@ import org.apache.ode.bpel.iapi.PartnerR
import org.apache.ode.bpel.iapi.PartnerRoleMessageExchange;
import org.apache.ode.bpel.iapi.Scheduler.JobDetails;
import org.apache.ode.bpel.iapi.Scheduler.JobType;
+import org.apache.ode.dao.bpel.MessageExchangeDAO;
import org.apache.ode.utils.DOMUtils;
import org.w3c.dom.Element;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java Wed Aug 18 04:12:49 2010
@@ -46,16 +46,6 @@ import org.apache.ode.bpel.common.BpelEv
import org.apache.ode.bpel.common.Filter;
import org.apache.ode.bpel.common.InstanceFilter;
import org.apache.ode.bpel.common.ProcessFilter;
-import org.apache.ode.bpel.dao.ActivityRecoveryDAO;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.CorrelationSetDAO;
-import org.apache.ode.bpel.dao.PartnerLinkDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.apache.ode.bpel.dao.ScopeDAO;
-import org.apache.ode.bpel.dao.XmlDataDAO;
-import org.apache.ode.bpel.dao.ProcessManagementDAO.FailedSummaryValue;
-import org.apache.ode.bpel.dao.ProcessManagementDAO.InstanceSummaryKey;
import org.apache.ode.bpel.engine.replayer.Replayer;
import org.apache.ode.bpel.evt.ActivityEvent;
import org.apache.ode.bpel.evt.BpelEvent;
@@ -136,6 +126,16 @@ import org.apache.ode.bpel.pmapi.TScopeR
import org.apache.ode.bpel.pmapi.TVariableInfo;
import org.apache.ode.bpel.pmapi.TVariableRef;
import org.apache.ode.bpel.pmapi.VariableInfoDocument;
+import org.apache.ode.dao.bpel.ActivityRecoveryDAO;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.CorrelationSetDAO;
+import org.apache.ode.dao.bpel.PartnerLinkDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
+import org.apache.ode.dao.bpel.ScopeDAO;
+import org.apache.ode.dao.bpel.XmlDataDAO;
+import org.apache.ode.dao.bpel.ProcessManagementDAO.FailedSummaryValue;
+import org.apache.ode.dao.bpel.ProcessManagementDAO.InstanceSummaryKey;
import org.apache.ode.utils.DOMUtils;
import org.apache.ode.utils.ISO8601DateParser;
import org.apache.ode.utils.msg.MessageBundle;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java Wed Aug 18 04:12:49 2010
@@ -26,11 +26,11 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.ode.bpel.dao.DeferredProcessInstanceCleanable;
-import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.engine.BpelServerImpl.ContextsAware;
import org.apache.ode.bpel.iapi.Scheduler.JobDetails;
import org.apache.ode.bpel.iapi.Scheduler.MapSerializableRunnable;
+import org.apache.ode.dao.bpel.DeferredProcessInstanceCleanable;
+import org.apache.ode.dao.bpel.ProcessDAO;
public class ProcessCleanUpRunnable implements MapSerializableRunnable, ContextsAware {
private static final long serialVersionUID = 1L;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java Wed Aug 18 04:12:49 2010
@@ -24,10 +24,10 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.ode.bpel.common.ProcessState;
-import org.apache.ode.bpel.dao.ScopeStateEnum;
import org.apache.ode.bpel.pmapi.ProcessingException;
import org.apache.ode.bpel.pmapi.TInstanceStatus;
import org.apache.ode.bpel.pmapi.TScopeStatus;
+import org.apache.ode.dao.bpel.ScopeStateEnum;
/**
* Class for converting status codes from external (PMAPI) to internal (DAO) representation.
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java Wed Aug 18 04:12:49 2010
@@ -28,14 +28,14 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ode.bpel.common.InstanceFilter;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.FilteredInstanceDeletable;
import org.apache.ode.bpel.engine.Contexts;
import org.apache.ode.bpel.engine.BpelServerImpl.ContextsAware;
import org.apache.ode.bpel.iapi.ProcessConf.CLEANUP_CATEGORY;
import org.apache.ode.bpel.iapi.ProcessConf.CleanupInfo;
import org.apache.ode.bpel.iapi.Scheduler.JobDetails;
import org.apache.ode.bpel.iapi.Scheduler.MapSerializableRunnable;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.FilteredInstanceDeletable;
public class RuntimeDataCleanupRunnable implements MapSerializableRunnable, ContextsAware {
private final Log _log = LogFactory.getLog(RuntimeDataCleanupRunnable.class);
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java Wed Aug 18 04:12:49 2010
@@ -19,24 +19,28 @@
package org.apache.ode.bpel.engine.migration;
-import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.engine.ReplacementMapImpl;
-import org.apache.ode.bpel.engine.OutstandingRequestManager;
-import org.apache.ode.bpel.dao.*;
-import org.apache.ode.bpel.common.CorrelationKey;
-import org.apache.ode.bpel.o.*;
-import org.apache.ode.bpel.runtime.Selector;
-import org.apache.ode.jacob.vpu.ExecutionQueueImpl;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Set;
-import javax.xml.namespace.QName;
import javax.wsdl.Operation;
-import java.util.*;
-import java.io.ObjectStreamClass;
-import java.io.FileInputStream;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
+import javax.xml.namespace.QName;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ode.bpel.common.CorrelationKey;
+import org.apache.ode.bpel.engine.BpelProcess;
+import org.apache.ode.bpel.o.OBase;
+import org.apache.ode.bpel.o.OPartnerLink;
+import org.apache.ode.bpel.o.OScope;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.CorrelationSetDAO;
+import org.apache.ode.dao.bpel.CorrelatorDAO;
+import org.apache.ode.dao.bpel.CorrelatorMessageDAO;
+import org.apache.ode.dao.bpel.MessageRouteDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
/**
* Migrates the correlation key values to a scheme containing the OModel correlation
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetDataMigration.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetDataMigration.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetDataMigration.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetDataMigration.java Wed Aug 18 04:12:49 2010
@@ -20,13 +20,13 @@
package org.apache.ode.bpel.engine.migration;
import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.CorrelatorDAO;
-import org.apache.ode.bpel.dao.MessageRouteDAO;
import org.apache.ode.bpel.o.OPartnerLink;
import org.apache.ode.bpel.common.CorrelationKey;
import org.apache.ode.bpel.common.CorrelationKeySet;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.CorrelatorDAO;
+import org.apache.ode.dao.bpel.MessageRouteDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java Wed Aug 18 04:12:49 2010
@@ -22,13 +22,13 @@ package org.apache.ode.bpel.engine.migra
import org.apache.ode.bpel.engine.BpelProcess;
import org.apache.ode.bpel.engine.OutstandingRequestManager;
import org.apache.ode.bpel.engine.ReplacementMapImpl;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.runtime.Selector;
import org.apache.ode.bpel.common.CorrelationKey;
import org.apache.ode.bpel.common.CorrelationKeySet;
import org.apache.ode.bpel.o.OProcess;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.ProcessDAO;
+import org.apache.ode.dao.bpel.ProcessInstanceDAO;
import org.apache.ode.jacob.vpu.ExecutionQueueImpl;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelatorsMigration.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelatorsMigration.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelatorsMigration.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelatorsMigration.java Wed Aug 18 04:12:49 2010
@@ -20,10 +20,10 @@
package org.apache.ode.bpel.engine.migration;
import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
-import org.apache.ode.bpel.dao.ProcessDAO;
-import org.apache.ode.bpel.dao.CorrelatorDAO;
import org.apache.ode.bpel.o.OPartnerLink;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
+import org.apache.ode.dao.bpel.CorrelatorDAO;
+import org.apache.ode.dao.bpel.ProcessDAO;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/Migration.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/Migration.java?rev=986561&r1=986560&r2=986561&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/Migration.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/Migration.java Wed Aug 18 04:12:49 2010
@@ -20,7 +20,7 @@
package org.apache.ode.bpel.engine.migration;
import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
+import org.apache.ode.dao.bpel.BpelDAOConnection;
import java.util.Set;