Interface WriteableTransaction
- All Superinterfaces:
ReadableTransaction
Represents a writeable transaction on a storage engine.
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidcreateTreeIfAbsent(TreeName name) Ensures that the tree identified by the provided name exists, creating it if it does not.default booleandelete(TreeName treeName, ByteString key) Deletes the record with the provided key, in the tree whose name is provided.default voiddeleteTree(TreeName name) Deletes the tree identified by the provided name if it exists.default voidput(TreeName treeName, ByteString key, ByteString value) Adds a record with the provided key and value, replacing any existing record having the same key.default booleanupdate(TreeName treeName, ByteString key, UpdateFunction f) Atomically adds, deletes, or replaces a record with the provided key according to the new value computed by the update function.Methods inherited from interface org.opends.server.backends.pluggable.spi.ReadableTransaction
getLookThroughCounter, getRecordCount, openCursor, openCursor, read, setLookThroughLimit
-
Method Details
-
createTreeIfAbsent
Ensures that the tree identified by the provided name exists, creating it if it does not.- Parameters:
name- the tree name- Throws:
ReadOnlyStorageException- If the tree specified by the name does not exist and cannot be created as a result of the underlying storage being opened in read-only mode.- See Also:
-
deleteTree
Deletes the tree identified by the provided name if it exists. Otherwise, do nothing.- Parameters:
name- the tree name- Throws:
ReadOnlyStorageException- if the underlying storage has been opened in read-only mode.- See Also:
-
put
Adds a record with the provided key and value, replacing any existing record having the same key.- Parameters:
treeName- the tree name. If the tree does not exist, it will be created.key- the key of the new recordvalue- the value of the new record- Throws:
ReadOnlyStorageException- if the underlying storage has been opened in read-only mode.- See Also:
-
update
Atomically adds, deletes, or replaces a record with the provided key according to the new value computed by the update function.- Parameters:
treeName- the tree name. If the tree does not exist, it will be created.key- the key of the new recordf- the update function- Returns:
trueif an update was performed,falseotherwise- Throws:
ReadOnlyStorageException- if the underlying storage has been opened in read-only mode.- See Also:
-
delete
Deletes the record with the provided key, in the tree whose name is provided.- Parameters:
treeName- the tree name. If the tree does not exist, it will be created.key- the key of the record to delete- Returns:
trueif the record could be deleted,falseotherwise- Throws:
ReadOnlyStorageException- if the underlying storage has been opened in read-only mode.- See Also:
-