public class MemoryNodeStore extends Object implements NodeStore, Observable
Constructor and Description |
---|
MemoryNodeStore() |
MemoryNodeStore(NodeState state) |
Modifier and Type | Method and Description |
---|---|
Closeable |
addObserver(Observer observer)
Register a new
Observer . |
String |
checkpoint(long lifetime)
Creates a new checkpoint of the latest root of the tree.
|
ArrayBasedBlob |
createBlob(InputStream inputStream)
Create a
Blob from the given input stream. |
Blob |
getBlob(String reference)
Get a blob by its reference.
|
NodeState |
getRoot()
Returns the latest state of the tree.
|
Set<String> |
listCheckpoints()
test purpose only!
|
NodeState |
merge(NodeBuilder builder,
CommitHook commitHook,
CommitInfo info)
This implementation is equal to first rebasing the builder and then applying it to a
new branch and immediately merging it back.
|
NodeState |
rebase(NodeBuilder builder)
This implementation is equal to applying the differences between the builders base state
and its head state to a fresh builder on the stores root state using
ConflictAnnotatingRebaseDiff for resolving
conflicts. |
void |
release(String checkpoint) |
NodeState |
reset(NodeBuilder builder)
This implementation is equal resetting the builder to the root of the store and returning
the resulting node state from the builder.
|
NodeState |
retrieve(String checkpoint)
Retrieves the root node from a previously created repository checkpoint.
|
String |
toString()
Returns a string representation the head state of this node store.
|
public MemoryNodeStore(NodeState state)
public MemoryNodeStore()
public String toString()
public Closeable addObserver(Observer observer)
Observable
Observer
. Clients need to call Closeable.close()
to stop getting notifications on the registered observer and to free up any resources
associated with the registration.addObserver
in interface Observable
Closeable
instance.public NodeState getRoot()
NodeStore
public NodeState merge(NodeBuilder builder, CommitHook commitHook, CommitInfo info) throws CommitFailedException
merge
in interface NodeStore
builder
- the builder whose changes to applycommitHook
- the commit hook to apply while merging changesinfo
- commit info associated with this merge operationCommitFailedException
IllegalArgumentException
- if the builder is not acquired from a root state of
this storepublic NodeState rebase(NodeBuilder builder)
ConflictAnnotatingRebaseDiff
for resolving
conflicts.rebase
in interface NodeStore
builder
- the builder to rebaseIllegalArgumentException
- if the builder is not acquired from a root state of
this storepublic NodeState reset(NodeBuilder builder)
reset
in interface NodeStore
builder
- the builder to resetIllegalArgumentException
- if the builder is not acquired from a root state of
this storepublic ArrayBasedBlob createBlob(InputStream inputStream) throws IOException
NodeStore
Blob
from the given input stream. The input stream
is closed after this method returns.createBlob
in interface NodeStore
inputStream
- The input stream for the Blob
ArrayBasedBlob
.IOException
- If an error occurs while reading from the streampublic Blob getBlob(String reference)
NodeStore
getBlob
in interface NodeStore
reference
- reference to the blobnull
if the reference does not resolve to a blob.Blob.getReference()
public String checkpoint(long lifetime)
NodeStore
checkpoint
in interface NodeStore
lifetime
- time (in milliseconds, > 0) that the checkpoint
should remain availablepublic NodeState retrieve(String checkpoint)
NodeStore
"Copyright © 2006 - 2015 Adobe Systems Incorporated. All Rights Reserved"