public interface ITreeMutable extends ITree
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(@NotNull jetbrains.exodus.ByteIterable key,
@NotNull jetbrains.exodus.ByteIterable value)
If tree supports duplicates and key already exists, then return false.
|
boolean |
add(@NotNull INode ln)
If tree support duplicates and key already exists, then return false.
|
void |
cursorClosed(@NotNull ITreeCursorMutable cursor) |
boolean |
delete(@NotNull jetbrains.exodus.ByteIterable key)
Delete key/value pairs for given key.
|
boolean |
delete(@NotNull jetbrains.exodus.ByteIterable key,
@Nullable jetbrains.exodus.ByteIterable value,
@Nullable ITreeCursorMutable cursorToSkip)
Delete key/value pair, should be supported only by tree which allows duplicates if value is not null.
|
@NotNull jetbrains.exodus.tree.ExpiredLoggableCollection |
getExpiredLoggables() |
@Nullable java.lang.Iterable<ITreeCursorMutable> |
getOpenCursors() |
MutableTreeRoot |
getRoot() |
boolean |
isAllowingDuplicates() |
boolean |
put(@NotNull jetbrains.exodus.ByteIterable key,
@NotNull jetbrains.exodus.ByteIterable value)
If tree supports duplicates, then add key/value pair.
|
void |
put(@NotNull INode ln)
If tree supports duplicates, then add key/value pair.
|
void |
putRight(@NotNull jetbrains.exodus.ByteIterable key,
@NotNull jetbrains.exodus.ByteIterable value)
Add key/value pair with greatest (rightmost) key.
|
void |
putRight(@NotNull INode ln)
Add key/value pair with greatest (rightmost) key.
|
boolean |
reclaim(@NotNull RandomAccessLoggable loggable,
@NotNull java.util.Iterator<RandomAccessLoggable> loggables)
Same as reclaim with expirationChecker, but takes all loggables into account
|
long |
save()
Save changes to log.
|
addressIterator, dump, dump, get, getDataIterator, getLog, getMutableCopy, getRootAddress, getSize, getStructureId, hasKey, hasPair, isEmpty, openCursorMutableTreeRoot getRoot()
boolean isAllowingDuplicates()
@Nullable @Nullable java.lang.Iterable<ITreeCursorMutable> getOpenCursors()
void cursorClosed(@NotNull
@NotNull ITreeCursorMutable cursor)
boolean put(@NotNull
@NotNull jetbrains.exodus.ByteIterable key,
@NotNull
@NotNull jetbrains.exodus.ByteIterable value)
key - key.value - value.void putRight(@NotNull
@NotNull jetbrains.exodus.ByteIterable key,
@NotNull
@NotNull jetbrains.exodus.ByteIterable value)
key - key.value - value.boolean add(@NotNull
@NotNull jetbrains.exodus.ByteIterable key,
@NotNull
@NotNull jetbrains.exodus.ByteIterable value)
key - key.value - value.void put(@NotNull
@NotNull INode ln)
ln - leaf nodevoid putRight(@NotNull
@NotNull INode ln)
ln - leaf node, its key and values should be subtypes of ArrayByteIterableboolean add(@NotNull
@NotNull INode ln)
ln - leaf nodeboolean delete(@NotNull
@NotNull jetbrains.exodus.ByteIterable key)
key - key.boolean delete(@NotNull
@NotNull jetbrains.exodus.ByteIterable key,
@Nullable
@Nullable jetbrains.exodus.ByteIterable value,
@Nullable
@Nullable ITreeCursorMutable cursorToSkip)
key - key.value - value.cursorToSkip - mutable cursor to skip.long save()
@NotNull @NotNull jetbrains.exodus.tree.ExpiredLoggableCollection getExpiredLoggables()
boolean reclaim(@NotNull
@NotNull RandomAccessLoggable loggable,
@NotNull
@NotNull java.util.Iterator<RandomAccessLoggable> loggables)
loggable - a candidate to reclaim.loggables - loggables following the candidate.