You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2018/01/04 20:46:24 UTC

[10/14] jena git commit: JENA-1458: Reduce use of default methods

JENA-1458: Reduce use of default methods


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/c4e5c543
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/c4e5c543
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/c4e5c543

Branch: refs/heads/master
Commit: c4e5c543b20c74bac7491b66973c59a5c17e85b5
Parents: d3ecb74
Author: Andy Seaborne <an...@apache.org>
Authored: Tue Jan 2 16:21:46 2018 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Tue Jan 2 16:22:19 2018 +0000

----------------------------------------------------------------------
 .../jena/sparql/core/DatasetGraphOne.java       |  2 ++
 .../jena/sparql/core/DatasetGraphSink.java      |  1 +
 .../apache/jena/sparql/core/Transactional.java  | 28 +++++++++++---------
 .../jena/sparql/core/TransactionalNull.java     |  5 ++++
 .../dboe/transaction/txn/TransactionalBase.java |  7 ++++-
 5 files changed, 30 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/c4e5c543/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphOne.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphOne.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphOne.java
index 601789e..40aa011 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphOne.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphOne.java
@@ -76,6 +76,7 @@ public class DatasetGraphOne extends DatasetGraphBaseFind {
     @Override public void begin(TxnType txnType)        { txn.begin(txnType); }
     @Override public void begin(ReadWrite mode)         { txn.begin(mode); }
     @Override public void commit()                      { txn.commit(); }
+    @Override public boolean promote()                  { return txn.promote(); }
     @Override public void abort()                       { txn.abort(); }
     @Override public boolean isInTransaction()          { return txn.isInTransaction(); }
     @Override public void end()                         { txn.end(); }
@@ -84,6 +85,7 @@ public class DatasetGraphOne extends DatasetGraphBaseFind {
     @Override public boolean supportsTransactions()     { return true; }
     // Because there are never any changes, abort() means "finish".  
     @Override public boolean supportsTransactionAbort() { return true; }
+    
     @Override
     public boolean containsGraph(Node graphNode) {
         if ( isDefaultGraph(graphNode) )

http://git-wip-us.apache.org/repos/asf/jena/blob/c4e5c543/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphSink.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphSink.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphSink.java
index b8852a1..1015ee6 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphSink.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphSink.java
@@ -44,6 +44,7 @@ public class DatasetGraphSink extends DatasetGraphBaseFind {
     private TransactionalNull txn                       = TransactionalNull.create();
     @Override public void begin(TxnType txnType)        { txn.begin(txnType); }
     @Override public void begin(ReadWrite mode)         { txn.begin(mode); }
+    @Override public boolean promote()                  { return txn.promote(); }
     @Override public void commit()                      { txn.commit(); }
     @Override public void abort()                       { txn.abort(); }
     @Override public boolean isInTransaction()          { return txn.isInTransaction(); }

http://git-wip-us.apache.org/repos/asf/jena/blob/c4e5c543/jena-arq/src/main/java/org/apache/jena/sparql/core/Transactional.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/Transactional.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/Transactional.java
index 08bc230..85f3b5d 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/Transactional.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/Transactional.java
@@ -100,25 +100,30 @@ public interface Transactional
      * transaction is the same as it was at the point the transaction started.
      * <p>
      * This operation is optional and some implementations may throw
-     * a {@link JenaTransactionException} exception for some or all {@link TxnType} values
+     * a {@link JenaTransactionException} exception for some or all {@link TxnType} values.
      * <p> 
      * See {@link #begin(ReadWrite)} for a form that is required of implementations.
      */
-    //public void begin(TxnType type);
-    public default void begin(TxnType type) { begin(TxnType.convert(type)); }
+    public void begin(TxnType type);
     
     /** Start either a READ or WRITE transaction. */ 
     public void begin(ReadWrite readWrite) ;
     
     /**
      * Attempt to promote a transaction from "read" to "write" and the transaction
-     * start with a "promote" mode. Always succeeeds of the transaction is already
-     * "write". Returns true if it succeeds or false if it does not (the transaction
-     * is still valid and in "read").
+     * start with a "promote" mode ({@code READ_PROMOTE} or {@code READ_COMMITTED_PROMOTE}).
+     * <p>
+     * Returns "true" if the transction is in write mode after the call.
+     * The method always succeeeds of the transaction is already
+     * "write".
+     * <p>
+     * This method returns true if a {@code READ_PROMOTE} or {@code READ_COMMITTED_PROMOTE} is promoted.
+     * <p>
+     * This method returns false if a {@code READ_PROMOTE} can't be promoted - the transaction is stil valid and in "read" mode. 
+     * <p>
+     * This method throws an exception if there is an attempt to promote a "READ" transaction. 
      */
-    
-    //public void promote();
-    public default boolean promote() { throw new JenaTransactionException("Not implemented"); }
+    public boolean promote();
 
     /** Commit a transaction - finish the transaction and make any changes permanent (if a "write" transaction) */  
     public void commit() ;
@@ -131,11 +136,10 @@ public interface Transactional
 
     /** Return the current mode of the transaction - "read" or "write" */ 
     public ReadWrite transactionMode();
-    //public default ReadWrite transactionMode()  { throw new JenaTransactionException("Not implemented"); }
 
     /** Return the transaction type used in {@code begin(TxnType)}. */ 
-    //public TxnMode transactionMode();
-    public default TxnType transactionType() { throw new JenaTransactionException("Not implemented"); }
+    public TxnType transactionType();
+    //public default TxnType transactionType() { throw new JenaTransactionException("Not implemented"); }
 
     /** Say whether inside a transaction. */ 
     public boolean isInTransaction() ;

http://git-wip-us.apache.org/repos/asf/jena/blob/c4e5c543/jena-arq/src/main/java/org/apache/jena/sparql/core/TransactionalNull.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/TransactionalNull.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/TransactionalNull.java
index 4b5ecf8..7b8071a 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/TransactionalNull.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/TransactionalNull.java
@@ -56,6 +56,11 @@ public class TransactionalNull implements Transactional {
     public ReadWrite transactionMode() {
         return txnMode.get();
     }
+    
+    @Override 
+    public TxnType transactionType() {
+        return txnType.get();
+    }
 
     @Override
     public void begin(ReadWrite readWrite) {

http://git-wip-us.apache.org/repos/asf/jena/blob/c4e5c543/jena-db/jena-dboe-transaction/src/main/java/org/apache/jena/dboe/transaction/txn/TransactionalBase.java
----------------------------------------------------------------------
diff --git a/jena-db/jena-dboe-transaction/src/main/java/org/apache/jena/dboe/transaction/txn/TransactionalBase.java b/jena-db/jena-dboe-transaction/src/main/java/org/apache/jena/dboe/transaction/txn/TransactionalBase.java
index 4c424a8..25807aa 100644
--- a/jena-db/jena-dboe-transaction/src/main/java/org/apache/jena/dboe/transaction/txn/TransactionalBase.java
+++ b/jena-db/jena-dboe-transaction/src/main/java/org/apache/jena/dboe/transaction/txn/TransactionalBase.java
@@ -95,6 +95,11 @@ public class TransactionalBase implements TransactionalSystem {
             Log.info(this,  "<< attach");
     } 
     
+  @Override
+  public final void begin(ReadWrite readWrite) { 
+      begin(TxnType.convert(readWrite));
+  }
+    
     @Override
     public final void begin(TxnType txnType) {
         Objects.nonNull(txnType) ;
@@ -105,7 +110,7 @@ public class TransactionalBase implements TransactionalSystem {
     }
     
     @Override
-    public boolean promote() {
+    public final boolean promote() {
         checkActive() ;
         Transaction txn = getValidTransaction() ;
         return txn.promote() ;