You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by pp...@apache.org on 2011/11/10 16:46:15 UTC
svn commit: r1200388 - in
/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel:
ExpressionStoreQuery.java exps/CandidatePath.java exps/Exp.java
exps/InMemoryExpressionFactory.java
Author: ppoddar
Date: Thu Nov 10 15:46:14 2011
New Revision: 1200388
URL: http://svn.apache.org/viewvc?rev=1200388&view=rev
Log:
Relax query engine for extension
Modified:
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ExpressionStoreQuery.java
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/CandidatePath.java
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/Exp.java
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/InMemoryExpressionFactory.java
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ExpressionStoreQuery.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ExpressionStoreQuery.java?rev=1200388&r1=1200387&r2=1200388&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ExpressionStoreQuery.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ExpressionStoreQuery.java Thu Nov 10 15:46:14 2011
@@ -94,8 +94,8 @@ public class ExpressionStoreQuery
new StringContains(), new WildcardMatch(),
};
- private final ExpressionParser _parser;
- private transient Object _parsed;
+ protected final ExpressionParser _parser;
+ protected transient Object _parsed;
/**
* Construct a query with a parser for the language.
@@ -171,8 +171,8 @@ public class ExpressionStoreQuery
}
public Executor newInMemoryExecutor(ClassMetaData meta, boolean subs) {
- return new InMemoryExecutor(this, meta, subs, _parser,
- ctx.getCompilation());
+ return new InMemoryExecutor(this, meta, subs, _parser,
+ ctx.getCompilation(), new InMemoryExpressionFactory());
}
public Executor newDataStoreExecutor(ClassMetaData meta, boolean subs) {
@@ -576,7 +576,7 @@ public class ExpressionStoreQuery
/**
* Runs the expression query in memory.
*/
- private static class InMemoryExecutor
+ public static class InMemoryExecutor
extends AbstractExpressionExecutor
implements Executor, Serializable {
@@ -588,10 +588,10 @@ public class ExpressionStoreQuery
public InMemoryExecutor(ExpressionStoreQuery q,
ClassMetaData candidate, boolean subclasses,
- ExpressionParser parser, Object parsed) {
+ ExpressionParser parser, Object parsed, InMemoryExpressionFactory factory) {
_meta = candidate;
_subs = subclasses;
- _factory = new InMemoryExpressionFactory();
+ _factory = factory;
_exps = new QueryExpressions[] {
parser.eval(parsed, q, _factory, _meta)
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/CandidatePath.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/CandidatePath.java?rev=1200388&r1=1200387&r2=1200388&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/CandidatePath.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/CandidatePath.java Thu Nov 10 15:46:14 2011
@@ -167,7 +167,7 @@ public class CandidatePath
/**
* Represents a traversal through a field.
*/
- private static class Traversal {
+ public static class Traversal {
public final FieldMetaData field;
public final boolean nullTraversal;
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/Exp.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/Exp.java?rev=1200388&r1=1200387&r2=1200388&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/Exp.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/Exp.java Thu Nov 10 15:46:14 2011
@@ -27,7 +27,7 @@ import org.apache.openjpa.kernel.StoreCo
*
* @author Abe White
*/
-class Exp
+public class Exp
implements Expression {
/**
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/InMemoryExpressionFactory.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/InMemoryExpressionFactory.java?rev=1200388&r1=1200387&r2=1200388&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/InMemoryExpressionFactory.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/exps/InMemoryExpressionFactory.java Thu Nov 10 15:46:14 2011
@@ -82,7 +82,7 @@ public class InMemoryExpressionFactory
* of embedded procedural loops over the extents of all variables in the
* unbounds list.
*/
- private boolean matches(Exp exp, Object candidate, StoreContext ctx,
+ protected boolean matches(Exp exp, Object candidate, StoreContext ctx,
Object[] params, int i) {
// base case: all variables have been aliased; evaluate for current
// values