You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/12/23 12:03:37 UTC

[isis] branch master updated: ISIS-2033: simplify

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new a1d6c00  ISIS-2033: simplify
a1d6c00 is described below

commit a1d6c00b0fffe72505183e263bf89c703136aac0
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Dec 23 13:03:22 2020 +0100

    ISIS-2033: simplify
---
 .../metamodel/context/HasMetaModelContext.java     |  1 +
 .../persistence/JdoPersistenceSession.java         |  4 +-
 .../persistence/HasPersistenceManager.java         | 34 +++++++++++++
 .../provider/persistence/JdoTypedQuerySupport.java | 57 ----------------------
 4 files changed, 36 insertions(+), 60 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/HasMetaModelContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/HasMetaModelContext.java
index b0ebc4a..dfd56bf 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/HasMetaModelContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/HasMetaModelContext.java
@@ -40,6 +40,7 @@ import org.apache.isis.core.security.authentication.AuthenticationContext;
 import org.apache.isis.core.security.authentication.manager.AuthenticationManager;
 import org.apache.isis.core.security.authorization.manager.AuthorizationManager;
 
+@FunctionalInterface
 public interface HasMetaModelContext {
 
     // -- INTERFACE
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/JdoPersistenceSession.java b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/JdoPersistenceSession.java
index c96c2ff..a99b803 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/JdoPersistenceSession.java
+++ b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/JdoPersistenceSession.java
@@ -30,13 +30,11 @@ import org.apache.isis.core.metamodel.context.HasMetaModelContext;
 import org.apache.isis.core.metamodel.spec.ManagedObject;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.persistence.jdo.provider.persistence.HasPersistenceManager;
-import org.apache.isis.persistence.jdo.provider.persistence.JdoTypedQuerySupport;
 
 public interface JdoPersistenceSession 
 extends 
     HasMetaModelContext,
-    HasPersistenceManager,
-    JdoTypedQuerySupport {
+    HasPersistenceManager {
 
     // -------------------------------------------------------------------------------------------------
     // -- STABLE API (DRAFT)
diff --git a/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/HasPersistenceManager.java b/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/HasPersistenceManager.java
index 840e87f..a42210c 100644
--- a/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/HasPersistenceManager.java
+++ b/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/HasPersistenceManager.java
@@ -18,7 +18,41 @@
  */
 package org.apache.isis.persistence.jdo.provider.persistence;
 
+@FunctionalInterface
 public interface HasPersistenceManager {
     
+    // -- INTERFACE
+    
     javax.jdo.PersistenceManager getPersistenceManager();
+    
+    // -- SHURTCUTS
+    
+    /**
+     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newNamedQuery(cls, queryName)}
+     * @param cls
+     * @param queryName
+     * @return
+     */
+    default <T> javax.jdo.Query<T> newJdoNamedQuery(Class<T> cls, String queryName){
+        return getPersistenceManager().newNamedQuery(cls, queryName);
+    }
+
+    /**
+     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newQuery(cls, queryName)}
+     * @param cls
+     * @return
+     */
+    default <T> javax.jdo.Query<T> newJdoQuery(Class<T> cls){
+        return getPersistenceManager().newQuery(cls);
+    }
+
+    /**
+     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newQuery(cls, filter)}
+     * @param cls
+     * @param filter
+     * @return
+     */
+    default <T> javax.jdo.Query<T> newJdoQuery(Class<T> cls, String filter){
+        return getPersistenceManager().newQuery(cls, filter);
+    }
 }
diff --git a/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/JdoTypedQuerySupport.java b/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/JdoTypedQuerySupport.java
deleted file mode 100644
index 6897526..0000000
--- a/persistence/jdo/provider/src/main/java/org/apache/isis/persistence/jdo/provider/persistence/JdoTypedQuerySupport.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- *  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.isis.persistence.jdo.provider.persistence;
-
-/**
- * 
- * @since 2.0
- */
-public interface JdoTypedQuerySupport 
-extends HasPersistenceManager {
-
-    /**
-     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newNamedQuery(cls, queryName)}
-     * @param cls
-     * @param queryName
-     * @return
-     */
-    default <T> javax.jdo.Query<T> newJdoNamedQuery(Class<T> cls, String queryName){
-        return getPersistenceManager().newNamedQuery(cls, queryName);
-    }
-
-    /**
-     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newQuery(cls, queryName)}
-     * @param cls
-     * @return
-     */
-    default <T> javax.jdo.Query<T> newJdoQuery(Class<T> cls){
-        return getPersistenceManager().newQuery(cls);
-    }
-
-    /**
-     * Not type safe. For type-safe queries use <br/><br/> {@code pm().newQuery(cls, filter)}
-     * @param cls
-     * @param filter
-     * @return
-     */
-    default <T> javax.jdo.Query<T> newJdoQuery(Class<T> cls, String filter){
-        return getPersistenceManager().newQuery(cls, filter);
-    }
-    
-}