Class ReadOnlyRevisions
java.lang.Object
org.apache.jackrabbit.oak.segment.file.ReadOnlyRevisions
- All Implemented Interfaces:
Closeable,AutoCloseable,Revisions
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.segment.Revisions
Revisions.Option -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()@NotNull RecordIdgetHead()Returns the record id of the head state.@NotNull RecordIdReturns the persisted to disk record id of the head state.setHead(@NotNull Function<RecordId, RecordId> newHead, @NotNull Revisions.Option... options) Atomically set the record id of the current head state to the value returned from thenewHeadfunction when called with the record id of the current head.booleansetHead(@NotNull RecordId expected, @NotNull RecordId head, @NotNull Revisions.Option... options) Atomically set the record id of the current head state to the givenheadstate if the current head state matches theexpectedvalue.
-
Constructor Details
-
ReadOnlyRevisions
-
-
Method Details
-
getHead
Description copied from interface:RevisionsReturns the record id of the head state. The returned id is a valid id for aSegmentNodeState. -
getPersistedHead
Description copied from interface:RevisionsReturns the persisted to disk record id of the head state. The returned id is a valid id for aSegmentNodeState.- Specified by:
getPersistedHeadin interfaceRevisions- Returns:
- id of the head state
-
setHead
public boolean setHead(@NotNull @NotNull RecordId expected, @NotNull @NotNull RecordId head, @NotNull @NotNull Revisions.Option... options) Description copied from interface:RevisionsAtomically set the record id of the current head state to the givenheadstate if the current head state matches theexpectedvalue.All record ids must be valid ids for
SegmentNodeStates.The locking behaviour of this method regarding implementation specific.
-
setHead
public RecordId setHead(@NotNull @NotNull Function<RecordId, RecordId> newHead, @NotNull @NotNull Revisions.Option... options) throws InterruptedExceptionDescription copied from interface:RevisionsAtomically set the record id of the current head state to the value returned from thenewHeadfunction when called with the record id of the current head.All record ids must be valid ids for
SegmentNodeStates.The behaviour of this method regarding locking and handling
nullvalues returned bynewHeadis implementation specific.- Specified by:
setHeadin interfaceRevisions- Parameters:
newHead- function mapping an record id to the record id to which the current head id should be set.options- implementation specific options- Returns:
- the record id of the root node if the current head was successfully
updated,
nullotherwise. - Throws:
InterruptedException- Blocking implementations may throw this exception whe interrupted.
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-