This is an automated email from the ASF dual-hosted git repository.
pcristof pushed a commit to branch OPENJPA-2940
in repository https://gitbox.apache.org/repos/asf/openjpa.git
The following commit(s) were added to refs/heads/OPENJPA-2940 by this push:
new f6f4c1a37 [OPENJPA-2940][WIP] Updated JPA to 3.2
f6f4c1a37 is described below
commit f6f4c1a37ba2cc884e768783587a6adf2f58e7c1
Author: Paulo Cristovão de Araújo Silva Filho <[email protected]>
AuthorDate: Tue Jul 8 21:49:27 2025 -0300
[OPENJPA-2940][WIP] Updated JPA to 3.2
* Updated dependency version
* Added API new methods to API implementation classes with methods that
throw UnsupportedOperationException, except for four methods in
EntityManagerImpl that required proper implementations to pass tests
* Project is still passing tests on derby and postgresql, at least
---
openjpa-examples/openbooks/pom.xml | 21 ++++
.../persistence/provider/DummyProvider1.java | 7 ++
.../persistence/provider/DummyProvider2.java | 7 ++
.../persistence/jdbc/meta/TestEagerDistinct.java | 10 +-
.../jdbc/meta/TestEagerOuterToManyJoins.java | 24 ++--
.../persistence/jdbc/meta/TestMappedByKeyMaps.java | 7 +-
.../jdbc/meta/TestMultiTableMappings.java | 2 +-
.../persistence/jdbc/meta/TestNoClassColumn.java | 2 +-
.../persistence/jdbc/meta/TestStateImage.java | 4 +-
.../meta/vertical/TestSubclassJoinRelations.java | 2 +-
.../jdbc/query/TestNamedSQLQueries.java | 2 +-
.../jdbc/query/TestStringFunctions.java | 2 +-
.../persistence/simple/TestJava8TimeTypes.java | 1 -
.../TestPersistenceProviderFilteringTestCase.java | 6 +
openjpa-persistence-locking/pom.xml | 1 +
.../persistence/EntityManagerFactoryImpl.java | 86 ++++++++++++-
.../openjpa/persistence/EntityManagerImpl.java | 100 ++++++++++++++-
.../apache/openjpa/persistence/JPAProperties.java | 4 +-
.../persistence/OpenJPAPersistenceUtil.java | 3 +-
.../persistence/PersistenceProviderImpl.java | 7 ++
.../persistence/PersistenceUnitInfoImpl.java | 11 ++
.../org/apache/openjpa/persistence/QueryImpl.java | 38 ++++++
.../persistence/StoredProcedureQueryImpl.java | 38 ++++++
.../persistence/criteria/CompareByExample.java | 25 ++++
.../persistence/criteria/CriteriaBuilderImpl.java | 137 +++++++++++++++++++++
.../persistence/criteria/CriteriaQueryImpl.java | 16 +++
.../persistence/criteria/ExpressionImpl.java | 30 +++++
.../openjpa/persistence/criteria/FromImpl.java | 58 +++++++++
.../apache/openjpa/persistence/criteria/Joins.java | 30 +++++
.../openjpa/persistence/criteria/OrderImpl.java | 7 ++
.../criteria/ParameterExpressionImpl.java | 32 +++++
.../openjpa/persistence/criteria/PathImpl.java | 35 +++++-
.../persistence/criteria/PredicateImpl.java | 30 +++++
.../openjpa/persistence/criteria/SubqueryImpl.java | 56 +++++++++
.../openjpa/persistence/meta/MetamodelImpl.java | 6 +
openjpa-xmlstore/pom.xml | 1 +
pom.xml | 2 +-
37 files changed, 804 insertions(+), 46 deletions(-)
diff --git a/openjpa-examples/openbooks/pom.xml
b/openjpa-examples/openbooks/pom.xml
index f3df61ba4..9abcb576b 100644
--- a/openjpa-examples/openbooks/pom.xml
+++ b/openjpa-examples/openbooks/pom.xml
@@ -129,6 +129,7 @@
<execution>
<id>genmodel</id>
<phase>process-resources</phase>
+ <?m2e execute
onConfiguration,onIncremental?>
<configuration>
<target>
<echo>Running OpenBooks genmodel</echo>
@@ -146,6 +147,7 @@
<execution>
<id>enhance</id>
<phase>process-classes</phase>
+ <?m2e execute
onConfiguration,onIncremental?>
<configuration>
<target>
<echo>Running OpenBooks Enhance</echo>
@@ -163,6 +165,7 @@
<execution>
<id>generate-source</id>
<phase>prepare-package</phase>
+ <?m2e execute
onConfiguration,onIncremental?>
<configuration>
<target>
<echo>Running OpenBooks Generate
Source</echo>
@@ -184,6 +187,24 @@
</execution>
</executions>
</plugin>
+ <plugin>
+
<groupId>org.codehaus.mojo</groupId>
+
<artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+
<id>add-source</id>
+
<phase>generate-sources</phase>
+ <goals>
+
<goal>add-source</goal>
+ </goals>
+ <configuration>
+
<sources>
+
<source>${project.build.directory}/generated-metamodel/java</source>
+
</sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
diff --git
a/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider1.java
b/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider1.java
index 952951009..93c506c03 100644
---
a/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider1.java
+++
b/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider1.java
@@ -21,6 +21,7 @@ package org.apache.openjpa.integration.persistence.provider;
import java.util.Map;
import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.PersistenceConfiguration;
import jakarta.persistence.spi.PersistenceProvider;
import jakarta.persistence.spi.PersistenceUnitInfo;
import jakarta.persistence.spi.ProviderUtil;
@@ -53,4 +54,10 @@ public class DummyProvider1 implements PersistenceProvider {
return null;
}
+ @Override
+ public EntityManagerFactory
createEntityManagerFactory(PersistenceConfiguration configuration) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
}
diff --git
a/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider2.java
b/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider2.java
index 3068683fe..06a3f2365 100644
---
a/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider2.java
+++
b/openjpa-integration/validation/src/test/java/org/apache/openjpa/integration/persistence/provider/DummyProvider2.java
@@ -21,6 +21,7 @@ package org.apache.openjpa.integration.persistence.provider;
import java.util.Map;
import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.PersistenceConfiguration;
import jakarta.persistence.spi.PersistenceProvider;
import jakarta.persistence.spi.PersistenceUnitInfo;
import jakarta.persistence.spi.ProviderUtil;
@@ -53,4 +54,10 @@ public class DummyProvider2 implements PersistenceProvider {
return null;
}
+ @Override
+ public EntityManagerFactory
createEntityManagerFactory(PersistenceConfiguration configuration) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
}
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerDistinct.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerDistinct.java
index e30448234..897ce2c28 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerDistinct.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerDistinct.java
@@ -104,8 +104,7 @@ public class TestEagerDistinct
private void eagerParallelWithNonDistinctQuery(int fetchSize)
throws Exception {
OpenJPAEntityManager pm = getPM();
- OpenJPAQuery q = pm.createNativeQuery(
- "stringField.startsWith ('pc')", HelperPC2.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("stringField.startsWith ('pc')", HelperPC2.class);
//FIXME jthomas
//q.setOrdering("stringField ascending");
q.getFetchPlan().setFetchBatchSize(fetchSize);
@@ -144,7 +143,7 @@ public class TestEagerDistinct
private void eagerParallelWithDistinctQuery(int fetchSize)
throws Exception {
OpenJPAEntityManager pm = getPM();
- OpenJPAQuery q = pm.createNativeQuery(
+ OpenJPAQuery q = (OpenJPAQuery) pm.createNativeQuery(
"helperCollection.contains (h) && h.stringField == 'shared'",
HelperPC2.class);
//FIXME jthomas
@@ -176,7 +175,7 @@ public class TestEagerDistinct
private void nestedEagerParallel(int fetchSize)
throws Exception {
OpenJPAEntityManager pm = getPM();
- OpenJPAQuery q = pm.createNativeQuery("",HelperPC2.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",HelperPC2.class);
//FIXME jthomas
//q.setOrdering("stringField ascending");
List helpers = (List) q.getResultList();
@@ -206,8 +205,7 @@ public class TestEagerDistinct
sql.clear();
pm = getPM();
- q = pm.createNativeQuery("stringField.startsWith ('eager')",
- EagerPC.class);
+ q = (OpenJPAQuery) pm.createNativeQuery("stringField.startsWith
('eager')", EagerPC.class);
//FIXME jthomas
//q.setOrdering("stringField ascending");
q.getFetchPlan().setFetchBatchSize(fetchSize);
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerOuterToManyJoins.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerOuterToManyJoins.java
index 48d8346a5..282bd8ab4 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerOuterToManyJoins.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestEagerOuterToManyJoins.java
@@ -117,7 +117,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "stringCollection");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
@@ -199,7 +199,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "stringList");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -287,7 +287,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "oneManyCollection");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -369,7 +369,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "manyManyCollection");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -467,7 +467,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "manyManyList");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -567,7 +567,7 @@ public class TestEagerOuterToManyJoins
fetch.addField(EagerOuterJoinPC.class, "manyManyList");
fetch.setFetchBatchSize(-1);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -641,7 +641,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "stringList");
fetch.setFetchBatchSize(3);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
List results = (List) q.getResultList();
@@ -665,7 +665,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "stringList");
fetch.setFetchBatchSize(3);
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
//q.setRange(5, 20);
@@ -705,7 +705,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC2.class, "ref");
fetch.addField(EagerOuterJoinPC.class, "stringCollection");
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC2.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC2.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -735,7 +735,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "manyManyList");
fetch.addField(EagerOuterJoinPC2.class, "helper");
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -762,7 +762,7 @@ public class TestEagerOuterToManyJoins
FetchPlan fetch = (FetchPlan) pm.getFetchPlan();
fetch.addField(EagerOuterJoinPC.class, "manyManyList");
fetch.addField(EagerOuterJoinPC2.class, "stringCollection");
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
@@ -795,7 +795,7 @@ public class TestEagerOuterToManyJoins
fetch.addField(EagerOuterJoinPC.class, "oneManyCollection");
fetch.addField(EagerOuterJoinPC.class, "helper");
fetch.addField(EagerOuterJoinPC2.class, "helper");
- OpenJPAQuery q = pm.createNativeQuery("",EagerOuterJoinPC.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",EagerOuterJoinPC.class);
//FIXME jthomas
//q.setOrdering("name ascending");
Collection results = (Collection) q.getResultList();
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMappedByKeyMaps.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMappedByKeyMaps.java
index 70a651b9e..fd723e97f 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMappedByKeyMaps.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMappedByKeyMaps.java
@@ -232,20 +232,19 @@ public class TestMappedByKeyMaps
pm.close();
pm = (OpenJPAEntityManager)currentEntityManager();
- OpenJPAQuery q = pm.createNativeQuery("stringField == 'h2'",
- HelperPC.class);
+ OpenJPAQuery q = (OpenJPAQuery) pm.createNativeQuery("stringField ==
'h2'", HelperPC.class);
//FIXME jthomas
//q.setUnique(true);
HelperPC h2 = (HelperPC) q.getSingleResult();
- q = pm.createNativeQuery("helpers.containsKey ('h2')",pc.getClass());
+ q = (OpenJPAQuery) pm.createNativeQuery("helpers.containsKey
('h2')",pc.getClass());
//FIXME jthomas
//q.setUnique(true);
pc = (MappedByMapPC) q.getSingleResult();
assertEquals(3, pc.getHelpers().size());
assertEquals(h2, pc.getHelpers().get("h2"));
- q = pm.createNativeQuery("helpers.containsValue (:h2)",pc.getClass());
+ q = (OpenJPAQuery) pm.createNativeQuery("helpers.containsValue
(:h2)",pc.getClass());
//FIXME jthomas
//q.setUnique(true);
pc = (MappedByMapPC) q.getSingleResult();
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMultiTableMappings.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMultiTableMappings.java
index af4e05ef1..872c97185 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMultiTableMappings.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestMultiTableMappings.java
@@ -175,7 +175,7 @@ public class TestMultiTableMappings
public void testVerticalQueryModeQueries() {
OpenJPAEntityManager pm =(OpenJPAEntityManager)currentEntityManager();
- OpenJPAQuery<MultiA> q = pm.createNativeQuery("",MultiA.class);
+ OpenJPAQuery<MultiA> q = (OpenJPAQuery<MultiA>)
pm.createNativeQuery("",MultiA.class);
((JDBCFetchPlan)
q.getFetchPlan()).setSubclassFetchMode(FetchMode.PARALLEL);
// we need ordering; otherwise kodo is smart enough to only run first
// select until its results are exhausted
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestNoClassColumn.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestNoClassColumn.java
index 2a89f6c0f..74fa79618 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestNoClassColumn.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestNoClassColumn.java
@@ -48,7 +48,7 @@ public class TestNoClassColumn
public void testQuery() {
OpenJPAEntityManager pm =(OpenJPAEntityManager)currentEntityManager();
- OpenJPAQuery q = pm.createNativeQuery("",NoClassColumn.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",NoClassColumn.class);
//FIXME jthomas
//q.declareParameters("java.lang.String input");
//q.setFilter("test==input");
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestStateImage.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestStateImage.java
index 648262cf6..4e12ffaea 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestStateImage.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestStateImage.java
@@ -160,7 +160,7 @@ public class TestStateImage
// have to load via query or extent where we're selecting the vertical
// field in the initial SELECT
- OpenJPAQuery q1 = pm1.createNativeQuery("",StateImagePC2.class);
+ OpenJPAQuery q1 = (OpenJPAQuery)
pm1.createNativeQuery("",StateImagePC2.class);
//FIXME jthomas
//q1.setOrdering("intField ascending");
StateImagePC2 pc1 =
@@ -168,7 +168,7 @@ public class TestStateImage
iterator().next();
q1.closeAll();
- OpenJPAQuery q2 = pm2.createNativeQuery("",StateImagePC2.class);
+ OpenJPAQuery q2 = (OpenJPAQuery)
pm2.createNativeQuery("",StateImagePC2.class);
//FIXME jthomas
//q2.setOrdering("intField ascending");
StateImagePC2 pc2 =
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/vertical/TestSubclassJoinRelations.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/vertical/TestSubclassJoinRelations.java
index aaf4e3490..98761b00e 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/vertical/TestSubclassJoinRelations.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/vertical/TestSubclassJoinRelations.java
@@ -432,7 +432,7 @@ public class TestSubclassJoinRelations
public void testProjections()
throws Exception {
OpenJPAEntityManager pm =(OpenJPAEntityManager)currentEntityManager();
- OpenJPAQuery q = pm.createNativeQuery("",Relations.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("",Relations.class);
//FIXME jthomas
/*
q.setResult("base, baseSub1, baseSub1Sub2");
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestNamedSQLQueries.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestNamedSQLQueries.java
index c0596d135..fbfa179f2 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestNamedSQLQueries.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestNamedSQLQueries.java
@@ -66,7 +66,7 @@ public class TestNamedSQLQueries
public void testNamedQuery() {
OpenJPAEntityManager pm =(OpenJPAEntityManager)currentEntityManager();
- OpenJPAQuery q = pm.createNativeQuery("cls",NamedSQL.class);
+ OpenJPAQuery q = (OpenJPAQuery)
pm.createNativeQuery("cls",NamedSQL.class);
assertEquals("javax.jdo.query.SQL", ((OpenJPAQuery) q).getLanguage());
Collection results = (Collection) q.getCandidateCollection();
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestStringFunctions.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestStringFunctions.java
index 12dd3dc33..f05c7c4a9 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestStringFunctions.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/query/TestStringFunctions.java
@@ -110,7 +110,7 @@ public class TestStringFunctions
}
private void assertMatch(String filter) {
- OpenJPAQuery q = _pm.createNativeQuery(filter,QueryTest1.class);
+ OpenJPAQuery q = (OpenJPAQuery)
_pm.createNativeQuery(filter,QueryTest1.class);
Collection res = (Collection) q.getCandidateCollection();
assertEquals(1, res.size());
assertEquals(_match, res.iterator().next());
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/simple/TestJava8TimeTypes.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/simple/TestJava8TimeTypes.java
index db1a7447c..e7b7c6af0 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/simple/TestJava8TimeTypes.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/simple/TestJava8TimeTypes.java
@@ -261,7 +261,6 @@ public class TestJava8TimeTypes extends SingleEMFTestCase {
final TypedQuery<Java8TimeTypes> qry
= em.createQuery("select j from Java8TimeTypes AS j where
j.localTimeField < LOCAL TIME", Java8TimeTypes.class);
final List<Java8TimeTypes> times = qry.getResultList();
-System.err.println(times);
assertNotNull(times);
assertFalse(times.isEmpty());
em.close();
diff --git
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/TestPersistenceProviderFilteringTestCase.java
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/TestPersistenceProviderFilteringTestCase.java
index 78676d216..6a61c0f08 100644
---
a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/TestPersistenceProviderFilteringTestCase.java
+++
b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/TestPersistenceProviderFilteringTestCase.java
@@ -24,6 +24,7 @@ import org.apache.openjpa.persistence.entity.EntityB;
import org.apache.openjpa.persistence.entity.EntityC;
import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.PersistenceConfiguration;
import jakarta.persistence.spi.PersistenceProvider;
import jakarta.persistence.spi.PersistenceUnitInfo;
import jakarta.persistence.spi.ProviderUtil;
@@ -93,5 +94,10 @@ public class TestPersistenceProviderFilteringTestCase
extends SQLListenerTestCas
@Override public ProviderUtil getProviderUtil() {
return null;
}
+
+ @Override
+ public EntityManagerFactory
createEntityManagerFactory(PersistenceConfiguration configuration) {
+ return null;
+ }
}
}
diff --git a/openjpa-persistence-locking/pom.xml
b/openjpa-persistence-locking/pom.xml
index 240c57a37..8a0a3fec7 100644
--- a/openjpa-persistence-locking/pom.xml
+++ b/openjpa-persistence-locking/pom.xml
@@ -118,6 +118,7 @@
<goals>
<goal>unpack</goal>
</goals>
+ <?m2e ignore?>
<configuration>
<artifactItems>
<artifactItem>
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
index 0070d32b1..45a4f4a9a 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
@@ -24,13 +24,20 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
+import java.util.function.Consumer;
+import java.util.function.Function;
import jakarta.persistence.Cache;
import jakarta.persistence.EntityGraph;
+import jakarta.persistence.EntityManager;
import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.PersistenceUnitTransactionType;
import jakarta.persistence.PersistenceUnitUtil;
import jakarta.persistence.Query;
+import jakarta.persistence.SchemaManager;
import jakarta.persistence.SynchronizationType;
+import jakarta.persistence.TypedQueryReference;
+import jakarta.persistence.metamodel.Attribute;
import jakarta.persistence.spi.LoadState;
import org.apache.openjpa.conf.OpenJPAConfiguration;
@@ -67,8 +74,7 @@ public class EntityManagerFactoryImpl
private static final long serialVersionUID = 1L;
- private static final Localizer _loc = Localizer.forPackage
- (EntityManagerFactoryImpl.class);
+ private static final Localizer _loc =
Localizer.forPackage(EntityManagerFactoryImpl.class);
private DelegatingBrokerFactory _factory = null;
private transient Constructor<FetchPlan> _plan = null;
@@ -427,6 +433,11 @@ public class EntityManagerFactoryImpl
}
return _metaModel;
}
+
+ @Override
+ public String getName() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
@Override
public PersistenceUnitUtil getPersistenceUnitUtil() {
@@ -454,7 +465,12 @@ public class EntityManagerFactoryImpl
public <T> void addNamedEntityGraph(String graphName, EntityGraph<T>
entityGraph) {
throw new UnsupportedOperationException("JPA 2.1");
}
-
+
+ @Override
+ public <E> Map<String, EntityGraph<? extends E>>
getNamedEntityGraphs(Class<E> entityType) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
/**
* Get the identifier for the specified entity. If not managed by any
* of the em's in this PU or not persistence capable, return null.
@@ -466,7 +482,7 @@ public class EntityManagerFactoryImpl
@Override
public boolean isLoaded(Object entity) {
- return isLoaded(entity, null);
+ return isLoaded(entity, (String) null);
}
@Override
@@ -477,7 +493,67 @@ public class EntityManagerFactoryImpl
return (OpenJPAPersistenceUtil.isManagedBy(this, entity) &&
(OpenJPAPersistenceUtil.isLoaded(entity, attribute) ==
LoadState.LOADED));
}
-
+
+ @Override
+ public <E> boolean isLoaded(E entity, Attribute<? super E, ?> attribute) {
+ return isLoaded(entity, attribute.getName());
+ }
+
+ @Override
+ public SchemaManager getSchemaManager() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <R> R callInTransaction(Function<EntityManager, R> work) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void runInTransaction(Consumer<EntityManager> work) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> Class<? extends T> getClass(T entity) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <R> Map<String, TypedQueryReference<R>> getNamedQueries(Class<R>
resultType) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public PersistenceUnitTransactionType getTransactionType() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Object getVersion(Object entity) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public boolean isInstance(Object entity, Class<?> entityClass) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void load(Object entity) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void load(Object entity, String attributeName) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <E> void load(E entity, Attribute<? super E, ?> attribute) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
private void validateCfNameProps(OpenJPAConfiguration conf, String cfName,
String cf2Name) {
if (StringUtil.isNotEmpty(cfName) || StringUtil.isNotEmpty(cf2Name)) {
if (conf.getDataCache() != "false" && conf.getDataCache() != null)
{
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
index 9ea1d7a51..f432ab1a6 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
@@ -37,22 +37,30 @@ import java.util.EnumSet;
import java.util.HashMap;
import java.util.IdentityHashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Set;
import jakarta.persistence.CacheRetrieveMode;
import jakarta.persistence.CacheStoreMode;
+import jakarta.persistence.ConnectionConsumer;
+import jakarta.persistence.ConnectionFunction;
import jakarta.persistence.EntityGraph;
import jakarta.persistence.EntityManager;
+import jakarta.persistence.FindOption;
import jakarta.persistence.FlushModeType;
import jakarta.persistence.LockModeType;
+import jakarta.persistence.LockOption;
import jakarta.persistence.PessimisticLockScope;
import jakarta.persistence.Query;
+import jakarta.persistence.RefreshOption;
import jakarta.persistence.StoredProcedureQuery;
import jakarta.persistence.Tuple;
import jakarta.persistence.TypedQuery;
+import jakarta.persistence.TypedQueryReference;
import jakarta.persistence.criteria.CriteriaDelete;
import jakarta.persistence.criteria.CriteriaQuery;
+import jakarta.persistence.criteria.CriteriaSelect;
import jakarta.persistence.criteria.CriteriaUpdate;
import jakarta.persistence.criteria.ParameterExpression;
import jakarta.persistence.metamodel.Metamodel;
@@ -2093,15 +2101,13 @@ public class EntityManagerImpl
CacheRetrieveMode rMode =
JPAProperties.getEnumValue(CacheRetrieveMode.class,
JPAProperties.CACHE_RETRIEVE_MODE, properties);
if (rMode != null) {
-
fetch.setCacheRetrieveMode(JPAProperties.convertToKernelValue(DataCacheRetrieveMode.class,
- JPAProperties.CACHE_RETRIEVE_MODE, rMode));
+
fetch.setCacheRetrieveMode(DataCacheRetrieveMode.valueOf(rMode.toString().trim().toUpperCase(Locale.ENGLISH)));
properties.remove(JPAProperties.CACHE_RETRIEVE_MODE);
}
CacheStoreMode sMode = JPAProperties.getEnumValue(CacheStoreMode.class,
JPAProperties.CACHE_STORE_MODE, properties);
if (sMode != null) {
-
fetch.setCacheStoreMode(JPAProperties.convertToKernelValue(DataCacheStoreMode.class,
- JPAProperties.CACHE_STORE_MODE, sMode));
+
fetch.setCacheStoreMode(DataCacheStoreMode.valueOf(sMode.toString().trim().toUpperCase(Locale.ENGLISH)));
properties.remove(JPAProperties.CACHE_STORE_MODE);
}
}
@@ -2246,4 +2252,90 @@ public class EntityManagerImpl
}
return meta;
}
+
+ @Override
+ public <T> T find(Class<T> entityClass, Object primaryKey,
FindOption... options) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> T find(EntityGraph<T> entityGraph, Object primaryKey,
FindOption... options) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> T getReference(T entity) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void lock(Object entity, LockModeType lockMode, LockOption...
options) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void refresh(Object entity, RefreshOption... options) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CacheRetrieveMode getCacheRetrieveMode() {
+ return getFetchPlan().getCacheRetrieveMode() ==
DataCacheRetrieveMode.USE ? CacheRetrieveMode.USE : CacheRetrieveMode.BYPASS;
+ }
+
+ @Override
+ public void setCacheRetrieveMode(CacheRetrieveMode cacheRetrieveMode) {
+ getFetchPlan().setCacheRetrieveMode(cacheRetrieveMode ==
CacheRetrieveMode.USE
+ ? DataCacheRetrieveMode.USE :
DataCacheRetrieveMode.BYPASS);
+ }
+
+ @Override
+ public void setCacheStoreMode(CacheStoreMode cacheStoreMode) {
+ DataCacheStoreMode storeMode = switch (cacheStoreMode) {
+ case USE: yield DataCacheStoreMode.USE;
+ case REFRESH: yield DataCacheStoreMode.REFRESH;
+ default: yield DataCacheStoreMode.BYPASS;
+ };
+ getFetchPlan().setCacheStoreMode(storeMode);
+ }
+
+ @Override
+ public CacheStoreMode getCacheStoreMode() {
+ return switch (getFetchPlan().getCacheStoreMode()) {
+ case USE: yield CacheStoreMode.USE;
+ case REFRESH: yield CacheStoreMode.REFRESH;
+ default: yield CacheStoreMode.BYPASS;
+ };
+ }
+
+ @Override
+ public <T> TypedQuery<T> createQuery(CriteriaSelect<T> selectQuery) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> TypedQuery<T> createQuery(TypedQueryReference<T> reference) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <C> void runWithConnection(ConnectionConsumer<C> action) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <C, T> T callWithConnection(ConnectionFunction<C, T> function) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public void setTimeout(Integer timeout) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Integer getTimeout() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPAProperties.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPAProperties.java
index d8dd41a63..fa57f1049 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPAProperties.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPAProperties.java
@@ -130,9 +130,9 @@ public class JPAProperties {
if (JPAProperties.isValidKey(key)) {
// works because enum values are identical String
if (value instanceof CacheRetrieveMode || (value instanceof String
&& CACHE_RETRIEVE_MODE.equals(key))) {
- return
(T)DataCacheRetrieveMode.valueOf(value.toString().trim().toUpperCase(Locale.ENGLISH));
+ return (T) value;
} else if (value instanceof CacheStoreMode || (value instanceof
String && CACHE_STORE_MODE.equals(key))) {
- return
(T)DataCacheStoreMode.valueOf(value.toString().trim().toUpperCase(Locale.ENGLISH));
+ return (T) value;
}
// If the value doesn't match the result type, attempt to convert
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAPersistenceUtil.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAPersistenceUtil.java
index 8bd47d0aa..7e04b506a 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAPersistenceUtil.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAPersistenceUtil.java
@@ -57,8 +57,7 @@ public class OpenJPAPersistenceUtil {
public static Object getIdentifier(OpenJPAEntityManagerFactory emf,
Object entity) {
- if (entity instanceof PersistenceCapable) {
- PersistenceCapable pc = (PersistenceCapable)entity;
+ if (entity instanceof PersistenceCapable pc) {
// Per contract, if not managed by the owning emf, return null.
if (emf != null) {
if (!isManagedBy(emf, pc)) {
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java
index e3d59a27c..09e30477d 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java
@@ -41,6 +41,8 @@ import
org.apache.openjpa.persistence.validation.ValidationUtils;
import org.apache.openjpa.util.ClassResolver;
import jakarta.persistence.EntityManager;
+import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.PersistenceConfiguration;
import jakarta.persistence.spi.ClassTransformer;
import jakarta.persistence.spi.LoadState;
import jakarta.persistence.spi.PersistenceProvider;
@@ -484,4 +486,9 @@ public class PersistenceProviderImpl
return OpenJPAPersistenceUtil.isLoaded(obj, attr);
}
+
+ @Override
+ public EntityManagerFactory
createEntityManagerFactory(PersistenceConfiguration configuration) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java
index dca4b9a3d..4acc8e4b4 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java
@@ -605,4 +605,15 @@ public class PersistenceUnitInfoImpl
public void setSharedCacheMode(SharedCacheMode mode) {
_sharedCacheMode = mode;
}
+
+ @Override
+ public String getScopeAnnotationName() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public List<String> getQualifierAnnotationNames() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java
index e140ecbc1..d07b02aee 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java
@@ -28,6 +28,8 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.locks.ReentrantLock;
+import jakarta.persistence.CacheRetrieveMode;
+import jakarta.persistence.CacheStoreMode;
import jakarta.persistence.FlushModeType;
import jakarta.persistence.LockModeType;
import jakarta.persistence.NoResultException;
@@ -688,4 +690,40 @@ public class QueryImpl<X> extends AbstractQuery<X>
implements Serializable {
String result = _query.getQueryString();
return result != null ? result : _id;
}
+
+ @Override
+ public X getSingleResultOrNull() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public TypedQuery<X> setCacheRetrieveMode(CacheRetrieveMode
cacheRetrieveMode) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CacheRetrieveMode getCacheRetrieveMode() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CacheStoreMode getCacheStoreMode() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public TypedQuery<X> setCacheStoreMode(CacheStoreMode cacheStoreMode) {
+ throw new UnsupportedOperationException("Not yet implemented
(JPA 3.2)");
+ }
+
+ @Override
+ public Integer getTimeout() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public TypedQuery<X> setTimeout(Integer timeout) {
+ throw new UnsupportedOperationException("Not yet implemented
(JPA 3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoredProcedureQueryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoredProcedureQueryImpl.java
index 91a7e6623..d672b4d75 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoredProcedureQueryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoredProcedureQueryImpl.java
@@ -24,6 +24,8 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
+import jakarta.persistence.CacheRetrieveMode;
+import jakarta.persistence.CacheStoreMode;
import jakarta.persistence.FlushModeType;
import jakarta.persistence.LockModeType;
import jakarta.persistence.NoResultException;
@@ -419,4 +421,40 @@ public class StoredProcedureQueryImpl implements
StoredProcedureQuery {
public String toString() {
return _name;
}
+
+ @Override
+ public CacheRetrieveMode getCacheRetrieveMode() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CacheStoreMode getCacheStoreMode() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public StoredProcedureQuery setCacheRetrieveMode(CacheRetrieveMode
cacheRetrieveMode) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public StoredProcedureQuery setCacheStoreMode(CacheStoreMode
cacheStoreMode) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public StoredProcedureQuery setTimeout(Integer timeout) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Integer getTimeout() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Object getSingleResultOrNull() {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CompareByExample.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CompareByExample.java
index 49c79f9c8..836015c76 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CompareByExample.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CompareByExample.java
@@ -125,4 +125,29 @@ class CompareByExample<T> extends PredicateImpl {
static <T> BooleanOperator extractOperator(ComparisonStyle style) {
return style == null ? BooleanOperator.AND : style.isDisjunction() ?
BooleanOperator.OR : BooleanOperator.AND;
}
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
index 68d2e89c4..680a884b9 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaBuilderImpl.java
@@ -27,8 +27,10 @@ import java.sql.Timestamp;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
+import java.time.temporal.Temporal;
import java.util.Collection;
import java.util.Collections;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -36,12 +38,14 @@ import jakarta.persistence.Tuple;
import jakarta.persistence.criteria.CollectionJoin;
import jakarta.persistence.criteria.CompoundSelection;
import jakarta.persistence.criteria.CriteriaDelete;
+import jakarta.persistence.criteria.CriteriaSelect;
import jakarta.persistence.criteria.CriteriaUpdate;
import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.From;
import jakarta.persistence.criteria.Join;
import jakarta.persistence.criteria.ListJoin;
import jakarta.persistence.criteria.MapJoin;
+import jakarta.persistence.criteria.Nulls;
import jakarta.persistence.criteria.Order;
import jakarta.persistence.criteria.ParameterExpression;
import jakarta.persistence.criteria.Path;
@@ -51,6 +55,7 @@ import jakarta.persistence.criteria.Root;
import jakarta.persistence.criteria.Selection;
import jakarta.persistence.criteria.SetJoin;
import jakarta.persistence.criteria.Subquery;
+import jakarta.persistence.criteria.TemporalField;
import jakarta.persistence.metamodel.Attribute;
import jakarta.persistence.metamodel.ManagedType;
import jakarta.persistence.metamodel.Metamodel;
@@ -1043,4 +1048,136 @@ public class CriteriaBuilderImpl implements
OpenJPACriteriaBuilder, ExpressionPa
return new Expressions.CurrentLocalTime();
}
+ @Override
+ public CompoundSelection<Tuple> tuple(List<Selection<?>> selections) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CompoundSelection<Object[]> array(List<Selection<?>> selections)
{
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Order asc(Expression<?> expression, Nulls nullPrecedence) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Order desc(Expression<?> expression, Nulls nullPrecedence) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate and(List<Predicate> restrictions) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate or(List<Predicate> restrictions) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> concat(List<Expression<String>> expressions) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> left(Expression<String> x, int len) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> right(Expression<String> x, int len) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> left(Expression<String> x,
Expression<Integer> len) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> right(Expression<String> x,
Expression<Integer> len) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> replace(Expression<String> x,
Expression<String> substring, Expression<String> replacement) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> replace(Expression<String> x, String
substring, Expression<String> replacement) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> replace(Expression<String> x,
Expression<String> substring, String replacement) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Expression<String> replace(Expression<String> x, String
substring, String replacement) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <N, T extends Temporal> Expression<N> extract(TemporalField<N,
T> field, Expression<T> temporal) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> union(CriteriaSelect<? extends T> left,
CriteriaSelect<? extends T> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> unionAll(CriteriaSelect<? extends T> left,
CriteriaSelect<? extends T> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> intersect(CriteriaSelect<? super T> left,
CriteriaSelect<? super T> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> intersectAll(CriteriaSelect<? super T>
left, CriteriaSelect<? super T> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> except(CriteriaSelect<T> left,
CriteriaSelect<?> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <T> CriteriaSelect<T> exceptAll(CriteriaSelect<T> left,
CriteriaSelect<?> right) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
index 977796ebb..468158e7d 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/CriteriaQueryImpl.java
@@ -795,4 +795,20 @@ class CriteriaQueryImpl<T> implements
OpenJPACriteriaQuery<T>, AliasContext {
return true;
return false;
}
+
+ @Override
+ public CriteriaQuery<T> where(List<Predicate> restrictions) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public CriteriaQuery<T> having(List<Predicate> restrictions) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <U> Subquery<U> subquery(EntityType<U> type) {
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ExpressionImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ExpressionImpl.java
index d13c7dd22..8aa9f8040 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ExpressionImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ExpressionImpl.java
@@ -112,6 +112,36 @@ public Predicate in(Object... values) {
public Predicate isNull() {
return new Expressions.IsNull(this);
}
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
//
------------------------------------------------------------------------------------
// Contract for bridge pattern to convert to an equivalent kernel
representation.
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/FromImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/FromImpl.java
index 61c13aa57..f4fc38eef 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/FromImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/FromImpl.java
@@ -22,15 +22,18 @@ package org.apache.openjpa.persistence.criteria;
import java.util.HashSet;
import jakarta.persistence.criteria.CollectionJoin;
+import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Fetch;
import jakarta.persistence.criteria.From;
import jakarta.persistence.criteria.Join;
import jakarta.persistence.criteria.JoinType;
import jakarta.persistence.criteria.ListJoin;
import jakarta.persistence.criteria.MapJoin;
+import jakarta.persistence.criteria.Predicate;
import jakarta.persistence.criteria.SetJoin;
import jakarta.persistence.metamodel.Attribute;
import jakarta.persistence.metamodel.CollectionAttribute;
+import jakarta.persistence.metamodel.EntityType;
import jakarta.persistence.metamodel.ListAttribute;
import jakarta.persistence.metamodel.ManagedType;
import jakarta.persistence.metamodel.MapAttribute;
@@ -333,4 +336,59 @@ class FromImpl<Z,X> extends PathImpl<Z,X> implements
From<Z,X> {
public From<Z,X> getCorrelationParent() {
return (From<Z,X>)getCorrelatedPath();
}
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <Y> Join<X, Y> join(Class<Y> entityClass) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <Y> Join<X, Y> join(Class<Y> entityClass, JoinType joinType) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <Y> Join<X, Y> join(EntityType<Y> entity) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <Y> Join<X, Y> join(EntityType<Y> entity, JoinType joinType) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Joins.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Joins.java
index 340f41f7c..f6e0398f4 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Joins.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Joins.java
@@ -754,6 +754,36 @@ abstract class Joins {
buffer.append(var != null ? var.getName() :
map.asValue(q)).append(")");
return buffer;
}
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet
implemented (JPA 3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet
implemented (JPA 3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet
implemented (JPA 3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet
implemented (JPA 3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet
implemented (JPA 3.2)");
+ }
}
/**
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/OrderImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/OrderImpl.java
index ebcb8d403..f0ce9588d 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/OrderImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/OrderImpl.java
@@ -19,6 +19,7 @@
package org.apache.openjpa.persistence.criteria;
import jakarta.persistence.criteria.Expression;
+import jakarta.persistence.criteria.Nulls;
import jakarta.persistence.criteria.Order;
/**
@@ -79,4 +80,10 @@ class OrderImpl implements Order, CriteriaExpression {
public StringBuilder asVariable(AliasContext q) {
throw new IllegalStateException(this + " can not be rendered as
variable");
}
+
+ @Override
+ public Nulls getNullPrecedence() {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ParameterExpressionImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ParameterExpressionImpl.java
index 528079f8e..5a0257789 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ParameterExpressionImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/ParameterExpressionImpl.java
@@ -20,7 +20,9 @@ package org.apache.openjpa.persistence.criteria;
import java.util.Collection;
+import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.ParameterExpression;
+import jakarta.persistence.criteria.Predicate;
import org.apache.openjpa.kernel.exps.ExpressionFactory;
import org.apache.openjpa.kernel.exps.Value;
@@ -167,4 +169,34 @@ class ParameterExpressionImpl<T> extends ExpressionImpl<T>
return value != null ? value.equals(that.value) : that.value == null;
}
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PathImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PathImpl.java
index d2c93b2ee..fa8d88a58 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PathImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PathImpl.java
@@ -23,6 +23,7 @@ import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Join;
import jakarta.persistence.criteria.JoinType;
import jakarta.persistence.criteria.Path;
+import jakarta.persistence.criteria.Predicate;
import jakarta.persistence.metamodel.Bindable;
import jakarta.persistence.metamodel.ManagedType;
import jakarta.persistence.metamodel.MapAttribute;
@@ -255,7 +256,7 @@ class PathImpl<Z,X> extends ExpressionImpl<X> implements
Path<X> {
* Gets a new path that represents the given multi-valued attribute from
this path.
*/
@Override
- public <E, C extends java.util.Collection<E>> Expression<C>
get(PluralAttribute<X, C, E> coll) {
+ public <E, C extends java.util.Collection<E>> Expression<C>
get(PluralAttribute<? super X, C, E> coll) {
if (getType() != coll.getDeclaringType()) {
coll =
(PluralAttribute)((ManagedType)getType()).getAttribute(coll.getName());
}
@@ -266,7 +267,7 @@ class PathImpl<Z,X> extends ExpressionImpl<X> implements
Path<X> {
* Gets a new path that represents the given map-valued attribute from
this path.
*/
@Override
- public <K, V, M extends java.util.Map<K, V>> Expression<M>
get(MapAttribute<X, K, V> map) {
+ public <K, V, M extends java.util.Map<K, V>> Expression<M>
get(MapAttribute<? super X, K, V> map) {
if (getType() != map.getDeclaringType()) {
map =
(MapAttribute)((ManagedType)getType()).getAttribute(map.getName());
}
@@ -326,4 +327,34 @@ class PathImpl<Z,X> extends ExpressionImpl<X> implements
Path<X> {
Value var = q.getRegisteredVariable(this);
return asValue(q).append(" ").append(var == null ? "?" :
var.getName());
}
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PredicateImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PredicateImpl.java
index 6acb771a1..434508f2f 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PredicateImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/PredicateImpl.java
@@ -202,6 +202,36 @@ abstract class PredicateImpl extends
ExpressionImpl<Boolean> implements Predicat
if (isNegated()) buffer.insert(0, "NOT ");
return buffer;
}
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
/**
* Concrete AND predicate.
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/SubqueryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/SubqueryImpl.java
index 663e9f8e7..f628c8726 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/SubqueryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/SubqueryImpl.java
@@ -32,6 +32,7 @@ import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Join;
import jakarta.persistence.criteria.ListJoin;
import jakarta.persistence.criteria.MapJoin;
+import jakarta.persistence.criteria.ParameterExpression;
import jakarta.persistence.criteria.Predicate;
import jakarta.persistence.criteria.Root;
import jakarta.persistence.criteria.SetJoin;
@@ -404,4 +405,59 @@ class SubqueryImpl<T> extends ExpressionImpl<T> implements
Subquery<T> {
public StringBuilder asVariable(AliasContext q) {
return asValue(q);
}
+
+ @Override
+ public <U> Subquery<U> subquery(EntityType<U> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Set<ParameterExpression<?>> getParameters() {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate equalTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Expression<?> value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Predicate notEqualTo(Object value) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public <X> Expression<X> cast(Class<X> type) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Subquery<T> where(List<Predicate> restrictions) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
+ @Override
+ public Subquery<T> having(List<Predicate> restrictions) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
+
}
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/meta/MetamodelImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/meta/MetamodelImpl.java
index cb7ca63a5..b29b9b70b 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/meta/MetamodelImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/meta/MetamodelImpl.java
@@ -454,4 +454,10 @@ public class MetamodelImpl implements Metamodel, Resolver {
public QueryContext getQueryContext() {
throw new UnsupportedOperationException();
}
+
+ @Override
+ public EntityType<?> entity(String entityName) {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("Not yet implemented (JPA
3.2)");
+ }
}
diff --git a/openjpa-xmlstore/pom.xml b/openjpa-xmlstore/pom.xml
index 50673c31e..abef44bd4 100644
--- a/openjpa-xmlstore/pom.xml
+++ b/openjpa-xmlstore/pom.xml
@@ -69,6 +69,7 @@
<goals>
<goal>unpack</goal>
</goals>
+ <?m2e ignore?>
<configuration>
<artifactItems>
<artifactItem>
diff --git a/pom.xml b/pom.xml
index b4fec496f..fd4c807be 100644
--- a/pom.xml
+++ b/pom.xml
@@ -101,7 +101,7 @@
<pool2.version>2.12.1</pool2.version>
<jakarta.annotation-api.version>2.1.1</jakarta.annotation-api.version>
-
<jakarta.persistence-api.version>3.1.0</jakarta.persistence-api.version>
+
<jakarta.persistence-api.version>3.2.0</jakarta.persistence-api.version>
<jakarta.transaction-api.version>2.0.1</jakarta.transaction-api.version>
<jakarta.validation-api.version>3.0.2</jakarta.validation-api.version>
<jakarta.jms-api.version>3.1.0</jakarta.jms-api.version>