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 2018/06/27 08:08:05 UTC
[isis] 04/04: ISIS-1960: moving TransactionServiceDefault
'metamodel' -> 'runtime'
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
commit ce0968e53742140577ecdd92a4d8cc3337164d15
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Jun 27 09:41:51 2018 +0200
ISIS-1960: moving TransactionServiceDefault 'metamodel' -> 'runtime'
also cleaning up 'Transaction' interface
Task-Url: https://issues.apache.org/jira/browse/ISIS-1960
---
.../org/apache/isis/applib/services/xactn/Transaction.java | 14 --------------
.../runtime}/services/xactn/TransactionServiceDefault.java | 8 ++++++--
.../core/runtime/system/transaction/IsisTransaction.java | 10 +++++++++-
3 files changed, 15 insertions(+), 17 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/xactn/Transaction.java b/core/applib/src/main/java/org/apache/isis/applib/services/xactn/Transaction.java
index a9857ab..cfc7c70 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/xactn/Transaction.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/xactn/Transaction.java
@@ -51,20 +51,6 @@ public interface Transaction extends HasTransactionId {
@Programmatic
void flush();
- /**
- * If the cause has been rendered higher up in the stack, then clear the cause so that
- * it won't be picked up and rendered elsewhere.
- *
- * <p>
- * DO NOT CALL - for framework use only.
- * </p>
- *
- * @deprecated - for framework use only
- */
- @Deprecated
- @Programmatic
- void clearAbortCause();
-
@Programmatic
TransactionState getTransactionState();
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/xactn/TransactionServiceDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
similarity index 90%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/xactn/TransactionServiceDefault.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
index d3ddf28..de21748 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/xactn/TransactionServiceDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.isis.core.metamodel.services.xactn;
+package org.apache.isis.core.runtime.services.xactn;
import java.util.concurrent.CountDownLatch;
@@ -29,6 +29,7 @@ import org.apache.isis.applib.services.xactn.TransactionService;
import org.apache.isis.applib.services.xactn.TransactionState;
import org.apache.isis.core.commons.exceptions.IsisException;
import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.runtime.system.transaction.IsisTransaction;
@DomainService(
nature = NatureOfService.DOMAIN,
@@ -72,7 +73,10 @@ public class TransactionServiceDefault implements TransactionService {
throw new IsisException("Transaction is marked to abort");
case ALWAYS:
persistenceSessionServiceInternal.abortTransaction();
- currentTransaction().clearAbortCause();
+ final Transaction currentTransaction = currentTransaction();
+ if(currentTransaction instanceof IsisTransaction) {
+ ((IsisTransaction)currentTransaction).clearAbortCause();
+ }
break;
}
break;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
index 6ebe65d..fef3fc9 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
@@ -476,7 +476,15 @@ public class IsisTransaction implements TransactionScopedComponent, Transaction
return abortCause;
}
- @Override
+ /**
+ * If the cause has been rendered higher up in the stack, then clear the cause so that
+ * it won't be picked up and rendered elsewhere.
+ *
+ * <p>
+ * for framework internal use only.
+ * </p>
+ *
+ */
public void clearAbortCause() {
abortCause = null;
}