Author: ppoddar
Date: Wed Apr 28 22:47:15 2010
New Revision: 939125
URL: http://svn.apache.org/viewvc?rev=939125&view=rev
Log:
OPENJPA-1643: Parse connection factory name. Add a constructor for
serializability. Make CriteriaQuery sharable among slices.
Modified:
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/Slice.java
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCConfigurationImpl.java
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCStoreManager.java
Modified:
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
URL:
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java?rev=939125&r1=939124&r2=939125&view=diff
==============================================================================
---
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
(original)
+++
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
Wed Apr 28 22:47:15 2010
@@ -85,7 +85,7 @@ public class CriteriaBuilderImpl impleme
public Value[] eval(String[] vals, ExpressionStoreQuery query,
ExpressionFactory factory, ClassMetaData candidate) {
- throw new AbstractMethodError();
+ return null;
}
public String getLanguage() {
Modified:
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
URL:
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java?rev=939125&r1=939124&r2=939125&view=diff
==============================================================================
---
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
(original)
+++
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
Wed Apr 28 22:47:15 2010
@@ -494,7 +494,8 @@ class CriteriaQueryImpl<T> implements Op
*/
public void registerVariable(Selection<?> node, Value var, Value path) {
if (isRegistered(node)) {
- throw new RuntimeException(node + " is already bound");
+ return;
+ //throw new RuntimeException(node + " is already bound");
}
if (!var.isVariable())
throw new RuntimeException(var.getClass() + " is not a variable");
Modified:
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/Slice.java
URL:
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/Slice.java?rev=939125&r1=939124&r2=939125&view=diff
==============================================================================
---
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/Slice.java
(original)
+++
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/Slice.java
Wed Apr 28 22:47:15 2010
@@ -18,6 +18,8 @@
*/
package org.apache.openjpa.slice;
+import java.io.Serializable;
+
import org.apache.openjpa.conf.OpenJPAConfiguration;
/**
@@ -27,7 +29,7 @@ import org.apache.openjpa.conf.OpenJPACo
* @author Pinaki Poddar
*
*/
-public class Slice implements Comparable<Slice> {
+public class Slice implements Comparable<Slice>,Serializable {
public enum Status {
NOT_INITIALIZED,
ACTIVE,
Modified:
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCConfigurationImpl.java
URL:
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCConfigurationImpl.java?rev=939125&r1=939124&r2=939125&view=diff
==============================================================================
---
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCConfigurationImpl.java
(original)
+++
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCConfigurationImpl.java
Wed Apr 28 22:47:15 2010
@@ -84,6 +84,10 @@ public class DistributedJDBCConfiguratio
private static Localizer _loc =
Localizer.forPackage(DistributedJDBCConfigurationImpl.class);
+ public DistributedJDBCConfigurationImpl() {
+ super();
+ }
+
/**
* Configure itself as well as underlying slices.
*
@@ -283,15 +287,18 @@ public class DistributedJDBCConfiguratio
DataSource createDataSource(Slice slice) throws Exception {
JDBCConfiguration conf = (JDBCConfiguration)slice.getConfiguration();
- Log log = conf.getConfigurationLog();
- String url = getConnectionInfo(conf);
- if (log.isInfoEnabled())
- log.info(_loc.get("slice-connect", slice, url));
- DataSource ds = DataSourceFactory.newDataSource(conf, false);
- DecoratingDataSource dds = DecoratingDataSource.
- newDecoratingDataSource(ds);
- ds = DataSourceFactory.installDBDictionary(
- conf.getDBDictionaryInstance(), dds, conf, false);
+ DataSource ds = (DataSource)conf.getConnectionFactory();
+ if (ds == null) {
+ Log log = conf.getConfigurationLog();
+ String url = getConnectionInfo(conf);
+ if (log.isInfoEnabled())
+ log.info(_loc.get("slice-connect", slice, url));
+ ds = DataSourceFactory.newDataSource(conf, false);
+ DecoratingDataSource dds = DecoratingDataSource.
+ newDecoratingDataSource(ds);
+ ds = DataSourceFactory.installDBDictionary(
+ conf.getDBDictionaryInstance(), dds, conf, false);
+ }
verifyDataSource(slice, ds, conf);
return ds;
Modified:
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCStoreManager.java
URL:
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCStoreManager.java?rev=939125&r1=939124&r2=939125&view=diff
==============================================================================
---
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCStoreManager.java
(original)
+++
openjpa/trunk/openjpa-slice/src/main/java/org/apache/openjpa/slice/jdbc/DistributedJDBCStoreManager.java
Wed Apr 28 22:47:15 2010
@@ -430,10 +430,6 @@ class DistributedJDBCStoreManager extend
return _master.newDataStoreId(oidVal, meta);
}
- public FetchConfiguration newFetchConfiguration() {
- return _master.newFetchConfiguration();
- }
-
/**
* Construct a distributed query to be executed against all the slices.
*/