<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>Transactional (Apache Jena ARQ)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: module: org.apache.jena.arq, package: org.apache.jena.sparql.core, interface: Transactional">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/Transactional.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="module-label-in-type">Module</span>&nbsp;<a href="../../../../../module-summary.html">org.apache.jena.arq</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.jena.sparql.core</a></div>
<h1 title="Interface Transactional" class="title">Interface Transactional</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Known Subinterfaces:</dt>
<dd><code><a href="../../query/Dataset.html" title="interface in org.apache.jena.query">Dataset</a></code>, <code><a href="DatasetGraph.html" title="interface in org.apache.jena.sparql.core">DatasetGraph</a></code>, <code><a href="../../system/buffering/DatasetGraphBuffering.html" title="interface in org.apache.jena.system.buffering">DatasetGraphBuffering</a></code>, <code><a href="DatasetGraphWrapperView.html" title="interface in org.apache.jena.sparql.core">DatasetGraphWrapperView</a></code>, <code><a href="TransactionalNotSupportedMixin.html" title="interface in org.apache.jena.sparql.core">TransactionalNotSupportedMixin</a></code>, <code><a href="TransactionalTrait.html" title="interface in org.apache.jena.sparql.core">TransactionalTrait</a></code></dd>
</dl>
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="../../system/buffering/BufferingDatasetGraph.html" title="class in org.apache.jena.system.buffering">BufferingDatasetGraph</a></code>, <code><a href="DatasetGraphBase.html" title="class in org.apache.jena.sparql.core">DatasetGraphBase</a></code>, <code><a href="DatasetGraphBaseFind.html" title="class in org.apache.jena.sparql.core">DatasetGraphBaseFind</a></code>, <code><a href="DatasetGraphCollection.html" title="class in org.apache.jena.sparql.core">DatasetGraphCollection</a></code>, <code><a href="DatasetGraphFilteredView.html" title="class in org.apache.jena.sparql.core">DatasetGraphFilteredView</a></code>, <code><a href="mem/DatasetGraphInMemory.html" title="class in org.apache.jena.sparql.core.mem">DatasetGraphInMemory</a></code>, <code><a href="DatasetGraphMap.html" title="class in org.apache.jena.sparql.core">DatasetGraphMap</a></code>, <code><a href="DatasetGraphMapLink.html" title="class in org.apache.jena.sparql.core">DatasetGraphMapLink</a></code>, <code><a href="DatasetGraphNull.html" title="class in org.apache.jena.sparql.core">DatasetGraphNull</a></code>, <code><a href="DatasetGraphOne.html" title="class in org.apache.jena.sparql.core">DatasetGraphOne</a></code>, <code><a href="DatasetGraphQuads.html" title="class in org.apache.jena.sparql.core">DatasetGraphQuads</a></code>, <code><a href="../../rdfs/DatasetGraphRDFS.html" title="class in org.apache.jena.rdfs">DatasetGraphRDFS</a></code>, <code><a href="DatasetGraphReadOnly.html" title="class in org.apache.jena.sparql.core">DatasetGraphReadOnly</a></code>, <code><a href="DatasetGraphSink.html" title="class in org.apache.jena.sparql.core">DatasetGraphSink</a></code>, <code><a href="DatasetGraphTriplesQuads.html" title="class in org.apache.jena.sparql.core">DatasetGraphTriplesQuads</a></code>, <code><a href="DatasetGraphWrapper.html" title="class in org.apache.jena.sparql.core">DatasetGraphWrapper</a></code>, <code><a href="DatasetGraphZero.html" title="class in org.apache.jena.sparql.core">DatasetGraphZero</a></code>, <code><a href="DatasetImpl.html" title="class in org.apache.jena.sparql.core">DatasetImpl</a></code>, <code><a href="../util/DifferenceDatasetGraph.html" title="class in org.apache.jena.sparql.util">DifferenceDatasetGraph</a></code>, <code><a href="../util/DyadicDatasetGraph.html" title="class in org.apache.jena.sparql.util">DyadicDatasetGraph</a></code>, <code><a href="DynamicDatasets.DynamicDatasetGraph.html" title="class in org.apache.jena.sparql.core">DynamicDatasets.DynamicDatasetGraph</a></code>, <code><a href="../graph/GraphTxn.html" title="class in org.apache.jena.sparql.graph">GraphTxn</a></code>, <code><a href="../util/IntersectionDatasetGraph.html" title="class in org.apache.jena.sparql.util">IntersectionDatasetGraph</a></code>, <code><a href="TransactionalLock.html" title="class in org.apache.jena.sparql.core">TransactionalLock</a></code>, <code><a href="TransactionalNotSupported.html" title="class in org.apache.jena.sparql.core">TransactionalNotSupported</a></code>, <code><a href="TransactionalNull.html" title="class in org.apache.jena.sparql.core">TransactionalNull</a></code>, <code><a href="../../system/TxnCounter.html" title="class in org.apache.jena.system">TxnCounter</a></code>, <code><a href="TxnDataset2Graph.html" title="class in org.apache.jena.sparql.core">TxnDataset2Graph</a></code>, <code><a href="../util/UnionDatasetGraph.html" title="class in org.apache.jena.sparql.util">UnionDatasetGraph</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">Transactional</span></div>
<div class="block">Interface that encapsulates the  begin/abort|commit/end operations.
 <p>The read lifecycle is:
 <pre> begin(READ) ... end()</pre>
 <p><code>commit</code> and <code>abort</code> are allowed.
 <p>The write lifecycle is:
 <pre> begin(WRITE) ... abort() or commit() end()</pre>
 <p><code>end()</code> is optional for "write" but is preferred.
 </p>
 <h4>Application use</h4>
 Applications can conveniently execute the lifecycle with methods to read or write:
 <pre>dataset.executeRead(()-&gt; { ... sparql query ... });</pre>
 <pre>dataset.executeWrite(()-&gt; { ... sparql update ... });</pre>
 <p>
 Use one of <code>calculateRead</code> or <code>calculateWrite</code>
 to return a value for the transaction block.
 </p>
 <h4>Core Functionality</h4>
 Directly called, code might look like:
 <pre>
     Transactional object = ...
     object.begin(TxnMode.READ) ;
     try {
       ... actions inside a read transaction ...
     } finally { object.end() ; }
 </pre>

 <p>or</p>

 <pre>
     Transactional object = ...
     object.begin(TxnMode.WRITE) ;
     try {
        ... actions inside a write transaction ...
        object.commit() ;
     } finally {
        // This causes an abort if <code>commit</code> has not been called.
        object.end() ;
     }
 </pre></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../system/Txn.html" title="class in org.apache.jena.system"><code>Txn</code></a></li>
</ul>
</dd>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="caption"><span>Nested Classes</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Interface</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="Transactional.Promote.html" class="type-name-link" title="enum class in org.apache.jena.sparql.core">Transactional.Promote</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button><button id="method-summary-table-tab5" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab5', 3)" class="table-tab">Default Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#abort()" class="member-name-link">abort</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Abort a transaction - finish the transaction and undo any changes (if a "write" transaction)</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#begin()" class="member-name-link">begin</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Start a transaction which is READ mode and which will switch to WRITE if an update
 is attempted but only if no intermediate transaction has performed an update.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#begin(org.apache.jena.query.ReadWrite)" class="member-name-link">begin</a><wbr>(<a href="../../query/ReadWrite.html" title="enum class in org.apache.jena.query">ReadWrite</a>&nbsp;readWrite)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Start either a READ or WRITE transaction.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#begin(org.apache.jena.query.TxnType)" class="member-name-link">begin</a><wbr>(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;type)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Start a transaction.<br/>
 READ or WRITE transactions start in that state and do not change for the
 lifetime of the transaction.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default &lt;T&gt;&nbsp;T</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#calc(org.apache.jena.query.TxnType,java.util.function.Supplier)" class="member-name-link">calc</a><wbr>(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;txnType,
 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;T&gt;&nbsp;action)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute and return a value in a transaction with the given <a href="../../query/TxnType.html" title="enum class in org.apache.jena.query"><code>transaction type</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default &lt;X&gt;&nbsp;X</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#calculate(java.util.function.Supplier)" class="member-name-link">calculate</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute in a "read" transaction that can promote to "write" and return some calculated value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default &lt;X&gt;&nbsp;X</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#calculateRead(java.util.function.Supplier)" class="member-name-link">calculateRead</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute and return a value in a read transaction</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default &lt;X&gt;&nbsp;X</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#calculateWrite(java.util.function.Supplier)" class="member-name-link">calculateWrite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute and return a value in a write transaction.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#commit()" class="member-name-link">commit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Commit a transaction - finish the transaction and make any changes permanent (if a "write" transaction)</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#end()" class="member-name-link">end</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Finish the transaction - if a write transaction and commit() has not been called, then abort</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#exec(org.apache.jena.query.TxnType,java.lang.Runnable)" class="member-name-link">exec</a><wbr>(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;txnType,
 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;action)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute application code in a transaction with the given <a href="../../query/TxnType.html" title="enum class in org.apache.jena.query"><code>transaction type</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#execute(java.lang.Runnable)" class="member-name-link">execute</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute in a "read" transaction that can promote to "write".</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default &lt;T extends <a href="Transactional.html" title="interface in org.apache.jena.sparql.core">Transactional</a>&gt;<br>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#executeRead(java.lang.Runnable)" class="member-name-link">executeRead</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute in a read transaction</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#executeWrite(java.lang.Runnable)" class="member-name-link">executeWrite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Execute the Runnable in a write transaction</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#isInTransaction()" class="member-name-link">isInTransaction</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Say whether inside a transaction.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#promote()" class="member-name-link">promote</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Attempt to promote a transaction from "read" to "write" when the transaction
 started with a "promote" mode (<code>READ_PROMOTE</code> or
 <code>READ_COMMITTED_PROMOTE</code>).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#promote(org.apache.jena.sparql.core.Transactional.Promote)" class="member-name-link">promote</a><wbr>(<a href="Transactional.Promote.html" title="enum class in org.apache.jena.sparql.core">Transactional.Promote</a>&nbsp;mode)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Attempt to promote a transaction from "read" mode to "write" and the transaction.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="../../query/ReadWrite.html" title="enum class in org.apache.jena.query">ReadWrite</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#transactionMode()" class="member-name-link">transactionMode</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Return the current mode of the transaction - "read" or "write".</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#transactionType()" class="member-name-link">transactionType</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Return the transaction type used in <code>begin(TxnType)</code>.</div>
</div>
</div>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="begin()">
<h3>begin</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">begin</span>()</div>
<div class="block">Start a transaction which is READ mode and which will switch to WRITE if an update
 is attempted but only if no intermediate transaction has performed an update.
 <p>
 See <a href="#begin(org.apache.jena.query.TxnType)"><code>begin(TxnType)</code></a> for more details an options.
 <p>
 May not be implemented. See <a href="#begin(org.apache.jena.query.ReadWrite)"><code>begin(ReadWrite)</code></a> is guaranteed to be provided.</div>
</section>
</li>
<li>
<section class="detail" id="begin(org.apache.jena.query.TxnType)">
<h3>begin</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">begin</span><wbr><span class="parameters">(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;type)</span></div>
<div class="block">Start a transaction.<br/>
 READ or WRITE transactions start in that state and do not change for the
 lifetime of the transaction.
 <ul>

 <li><code>WRITE</code>: this guarantees a WRITE will complete if <code>commit()</code> is
 called. The same as <code>begin(ReadWrite.WRITE)</code>.

 <li><code>READ</code>: the transaction can not promote to WRITE,ensuring read-only
 access to the data. The same as <code>begin(ReadWrite.READ)</code>.

 <li><code>READ_PROMOTE</code>: the transaction will go from "read" to "write" if an
 update is attempted and if the dataset has not been changed by another write
 transaction. See also <a href="#promote()"><code>promote()</code></a>.

 <li><code>READ_COMMITTED_PROMOTE</code>: Use this with care. The promotion will
 succeed but changes from other transactions become visible.

 </ul>

 Read committed: at the point transaction attempts promotion from "read" to
 "write", the system checks if the dataset has change since the transaction started
 (called <code>begin</code>). If <code>READ_PROMOTE</code>, the dataset must not have
 changed; if <code>READ_COMMITTED_PROMOTE</code> any intermediate changes are
 visible but the application can not assume any data it has read in the
 transaction is the same as it was at the point the transaction started.
 <p>
 This operation is optional and some implementations may throw
 a <a href="../JenaTransactionException.html" title="class in org.apache.jena.sparql"><code>JenaTransactionException</code></a> exception for some or all <a href="../../query/TxnType.html" title="enum class in org.apache.jena.query"><code>TxnType</code></a> values.
 <p>
 See <a href="#begin(org.apache.jena.query.ReadWrite)"><code>begin(ReadWrite)</code></a> for a form that is required of implementations.</div>
</section>
</li>
<li>
<section class="detail" id="begin(org.apache.jena.query.ReadWrite)">
<h3>begin</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">begin</span><wbr><span class="parameters">(<a href="../../query/ReadWrite.html" title="enum class in org.apache.jena.query">ReadWrite</a>&nbsp;readWrite)</span></div>
<div class="block">Start either a READ or WRITE transaction.</div>
</section>
</li>
<li>
<section class="detail" id="promote()">
<h3>promote</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">promote</span>()</div>
<div class="block">Attempt to promote a transaction from "read" to "write" when the transaction
 started with a "promote" mode (<code>READ_PROMOTE</code> or
 <code>READ_COMMITTED_PROMOTE</code>).
 <p>
 Returns "true" if the transaction is in write mode after the call. The method
 always succeeds of the transaction is already "write".
 <p>
 A <code>READ_COMMITTED_PROMOTE</code> can always be promoted, but the call may need to
 wait.
 <p>
 This method returns true if a <code>READ_PROMOTE</code> or
 <code>READ_COMMITTED_PROMOTE</code> is promoted.
 <p>
 This method returns false if a <code>READ_PROMOTE</code> can't be promoted - the
 transaction is still valid and in "read" mode. Any further calls to
 <code>promote()</code> will also return false.
 <p>
 This method returns false if there is an attempt to promote a "READ" transaction.</div>
</section>
</li>
<li>
<section class="detail" id="promote(org.apache.jena.sparql.core.Transactional.Promote)">
<h3>promote</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">promote</span><wbr><span class="parameters">(<a href="Transactional.Promote.html" title="enum class in org.apache.jena.sparql.core">Transactional.Promote</a>&nbsp;mode)</span></div>
<div class="block">Attempt to promote a transaction from "read" mode to "write" and the transaction. This
 method allows the form of promotion to be specified. The transaction must not have been started
 with <code>READ</code>, which is read-only.
 <p>
 An argument of <code>READ_PROMOTE</code> treats the promotion as if the transaction was started
 with <code>READ_PROMOTE</code> (any other writer commiting since the transaction started
 blocks promotion) and <code>READ_COMMITTED_PROMOTE</code> treats the promotion as if the transaction was started
 with <code>READ_COMMITTED_PROMOTE</code> (intemediate writer commits become visible).
 <p>
 Returns "true" if the transaction is in write mode after the call. The method
 always succeeds of the transaction is already "write".
 <p>
 This method returns true if a <code>READ_PROMOTE</code> or
 <code>READ_COMMITTED_PROMOTE</code> is promoted.
 <p>
 This method returns false if a <code>READ_PROMOTE</code> can't be promoted - the
 transaction is still valid and in "read" mode.
 <p>
 This method throws an exception if there is an attempt to promote a <code>READ</code>
 transaction.</div>
</section>
</li>
<li>
<section class="detail" id="commit()">
<h3>commit</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">commit</span>()</div>
<div class="block">Commit a transaction - finish the transaction and make any changes permanent (if a "write" transaction)</div>
</section>
</li>
<li>
<section class="detail" id="abort()">
<h3>abort</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">abort</span>()</div>
<div class="block">Abort a transaction - finish the transaction and undo any changes (if a "write" transaction)</div>
</section>
</li>
<li>
<section class="detail" id="end()">
<h3>end</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">end</span>()</div>
<div class="block">Finish the transaction - if a write transaction and commit() has not been called, then abort</div>
</section>
</li>
<li>
<section class="detail" id="transactionMode()">
<h3>transactionMode</h3>
<div class="member-signature"><span class="return-type"><a href="../../query/ReadWrite.html" title="enum class in org.apache.jena.query">ReadWrite</a></span>&nbsp;<span class="element-name">transactionMode</span>()</div>
<div class="block">Return the current mode of the transaction - "read" or "write".
 If the caller is not in a transaction, this method returns null.</div>
</section>
</li>
<li>
<section class="detail" id="transactionType()">
<h3>transactionType</h3>
<div class="member-signature"><span class="return-type"><a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a></span>&nbsp;<span class="element-name">transactionType</span>()</div>
<div class="block">Return the transaction type used in <code>begin(TxnType)</code>.
 If the caller is not in a transaction, this method returns null.</div>
</section>
</li>
<li>
<section class="detail" id="isInTransaction()">
<h3>isInTransaction</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">isInTransaction</span>()</div>
<div class="block">Say whether inside a transaction.</div>
</section>
</li>
<li>
<section class="detail" id="exec(org.apache.jena.query.TxnType,java.lang.Runnable)">
<h3>exec</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">exec</span><wbr><span class="parameters">(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;txnType,
 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;action)</span></div>
<div class="block">Execute application code in a transaction with the given <a href="../../query/TxnType.html" title="enum class in org.apache.jena.query"><code>transaction type</code></a>. See <a href="../../system/Txn.html#exec(T,org.apache.jena.query.TxnType,java.lang.Runnable)"><code>Txn.exec(T, org.apache.jena.query.TxnType, java.lang.Runnable)</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="calc(org.apache.jena.query.TxnType,java.util.function.Supplier)">
<h3>calc</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type">T</span>&nbsp;<span class="element-name">calc</span><wbr><span class="parameters">(<a href="../../query/TxnType.html" title="enum class in org.apache.jena.query">TxnType</a>&nbsp;txnType,
 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;T&gt;&nbsp;action)</span></div>
<div class="block">Execute and return a value in a transaction with the given <a href="../../query/TxnType.html" title="enum class in org.apache.jena.query"><code>transaction type</code></a>. See <a href="../../system/Txn.html#calc(T,org.apache.jena.query.TxnType,java.util.function.Supplier)"><code>Txn.calc(T, org.apache.jena.query.TxnType, java.util.function.Supplier&lt;X&gt;)</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="execute(java.lang.Runnable)">
<h3>execute</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">execute</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</span></div>
<div class="block">Execute in a "read" transaction that can promote to "write".
 <p>
 Such a transaction may abort if an update is executed
 by another thread before this one is promoted to "write" mode.
 If so, the data protected by <code>txn</code> is unchanged.
 <p>
 If the application knows updates will be needed, consider using <a href="#executeWrite(java.lang.Runnable)"><code>executeWrite(java.lang.Runnable)</code></a>
 which starts in "write" mode.
 <p>
 The application code can call <a href="#promote()"><code>promote()</code></a> to attempt to
 change from "read" to "write"; the <a href="#promote()"><code>promote</code></a> method
 returns a boolean indicating whether the promotion was possible or not.</div>
</section>
</li>
<li>
<section class="detail" id="calculate(java.util.function.Supplier)">
<h3>calculate</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="type-parameters">&lt;X&gt;</span>&nbsp;<span class="return-type">X</span>&nbsp;<span class="element-name">calculate</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</span></div>
<div class="block">Execute in a "read" transaction that can promote to "write" and return some calculated value.
 <p>
 Such a transaction may abort if an update is executed
 by another thread before this one is promoted to "write" mode.
 If so, the data protected by <code>txn</code> is unchanged.
 <p>
 If the application knows updates will be needed, consider using <a href="#executeWrite(java.lang.Runnable)"><code>executeWrite(java.lang.Runnable)</code></a>
 which starts in "write" mode.
 <p>
 The application code can call <a href="#promote()"><code>promote()</code></a> to attempt to
 change from "read" to "write"; the <a href="#promote()"><code>promote</code></a> method
 returns a boolean indicating whether the promotion was possible or not.</div>
</section>
</li>
<li>
<section class="detail" id="executeRead(java.lang.Runnable)">
<h3>executeRead</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="type-parameters">&lt;T extends <a href="Transactional.html" title="interface in org.apache.jena.sparql.core">Transactional</a>&gt;</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">executeRead</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</span></div>
<div class="block">Execute in a read transaction</div>
</section>
</li>
<li>
<section class="detail" id="calculateRead(java.util.function.Supplier)">
<h3>calculateRead</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="type-parameters">&lt;X&gt;</span>&nbsp;<span class="return-type">X</span>&nbsp;<span class="element-name">calculateRead</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</span></div>
<div class="block">Execute and return a value in a read transaction</div>
</section>
</li>
<li>
<section class="detail" id="executeWrite(java.lang.Runnable)">
<h3>executeWrite</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">executeWrite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;r)</span></div>
<div class="block">Execute the Runnable in a write transaction</div>
</section>
</li>
<li>
<section class="detail" id="calculateWrite(java.util.function.Supplier)">
<h3>calculateWrite</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="type-parameters">&lt;X&gt;</span>&nbsp;<span class="return-type">X</span>&nbsp;<span class="element-name">calculateWrite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;X&gt;&nbsp;r)</span></div>
<div class="block">Execute and return a value in a write transaction.</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Licensed under the Apache License, Version 2.0</small></p>
</footer>
</div>
</div>
</body>
</html>
