public interface Transaction extends Closeable
Graph instance. Vendors may
consider using AbstractTransaction as a base implementation
that provides default features for most of these methods.
ThreadLocal fashion. In other words
transactions are bound to the current thread, which means that any graph operation executed by the thread occurs
in the context of that transaction and that there may only be one thread executing in a single transaction.| Modifier and Type | Interface and Description |
|---|---|
static class |
Transaction.CLOSE_BEHAVIOR
Behaviors to supply to the
onClose(java.util.function.Consumer). |
static class |
Transaction.Exceptions |
static class |
Transaction.READ_WRITE_BEHAVIOR
Behaviors to supply to the
onReadWrite(java.util.function.Consumer). |
static class |
Transaction.Status
A status provided to transaction listeners to inform whether a transaction was successfully committed
or rolled back.
|
static class |
Transaction.Workload<R>
A
Transaction.Workload represents a unit of work constructed by the
submit(java.util.function.Function) method on the Transaction interface. |
| Modifier and Type | Method and Description |
|---|---|
void |
addTransactionListener(Consumer<Transaction.Status> listener)
Adds a listener that is called back with a status when a commit or rollback is successful.
|
void |
clearTransactionListeners()
Removes all transaction listeners.
|
void |
close()
Closes the transaction where the default close behavior will be executed.
|
void |
commit()
Commits a transaction.
|
<G extends Graph> |
create()
Creates a transaction that can be executed across multiple threads.
|
boolean |
isOpen()
Determines if a transaction is currently open.
|
Transaction |
onClose(Consumer<Transaction> consumer)
Describes what happens to a transaction on a call to
AutoCloseable.close(). |
Transaction |
onReadWrite(Consumer<Transaction> consumer)
Describes how a transaction is started when a read or a write occurs.
|
void |
open()
Opens a transaction.
|
void |
readWrite()
An internal function that signals a read or a write has occurred - not meant to be called directly by end users.
|
void |
removeTransactionListener(Consumer<Transaction.Status> listener)
Removes a transaction listener.
|
void |
rollback()
Rolls back a transaction.
|
<R> Transaction.Workload<R> |
submit(Function<Graph,R> work)
Submit a unit of work that represents a transaction returning a
Transaction.Workload that can be automatically
retried in the event of failure. |
void open()
void commit()
void rollback()
<R> Transaction.Workload<R> submit(Function<Graph,R> work)
Transaction.Workload that can be automatically
retried in the event of failure.<G extends Graph> G create()
boolean isOpen()
void readWrite()
void close()
close in interface AutoCloseableclose in interface CloseableTransaction onReadWrite(Consumer<Transaction> consumer)
Transaction.READ_WRITE_BEHAVIOR or a mapper Consumer function.Transaction onClose(Consumer<Transaction> consumer)
AutoCloseable.close().
This value can be set using standard behavior defined in Transaction.CLOSE_BEHAVIOR or a mapper Consumer
function.void addTransactionListener(Consumer<Transaction.Status> listener)
void removeTransactionListener(Consumer<Transaction.Status> listener)
void clearTransactionListeners()
Copyright © 2013–2015 Apache Software Foundation. All rights reserved.