|
ModeShape Distribution 3.2.0.Final | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.modeshape.jcr.federation.FederatedDocumentStore
public class FederatedDocumentStore
An implementation of DocumentStore
which is used when federation is enabled
Constructor Summary | |
---|---|
FederatedDocumentStore(Connectors connectors,
SchematicDb localDb)
Creates a new instance with the given connectors and local db. |
Method Summary | |
---|---|
boolean |
containsKey(String key)
Determine whether the database contains an entry with the supplied key. |
String |
createExternalProjection(String projectedNodeKey,
String sourceName,
String externalPath,
String alias)
Creates an external projection from the federated node with the given key, towards the external node from the given path, from a source. |
SchematicEntry |
get(String key)
Get the entry with the supplied key. |
Document |
getChildReference(String parentKey,
String childKey)
Returns a document representing a single child reference from the supplied parent to the supplied child. |
Document |
getChildrenBlock(String key)
Returns a document representing a block of children, that has the given key. |
ExternalBinaryValue |
getExternalBinary(String sourceName,
String id)
Retrieves a binary value which has the given id and which is not stored by ModeShape. |
String |
getLocalSourceKey()
Returns the value of the local repository source key. |
LocalDocumentStore |
localStore()
Returns a local store instance which will use the local Infinispan cache to store/retrieve information. |
String |
newDocumentKey(String parentKey,
Name documentName,
Name documentPrimaryType)
Generates a new key which will be assigned to a new child document when it is being added to its parent. |
boolean |
prepareDocumentsForUpdate(Collection<String> keys)
Prepare to update all of the documents with the given keys. |
boolean |
remove(String key)
Remove the existing document at the given key. |
void |
setLocalSourceKey(String localSourceKey)
Sets the value of the local repository source key. |
SchematicEntry |
storeDocument(String key,
Document document)
Store the supplied document at the given key. |
TransactionManager |
transactionManager()
Returns a transaction manager instance which can be used to manage transactions for this document store. |
protected DocumentTranslator |
translator()
|
void |
updateDocument(String key,
Document document,
SessionNode sessionNode)
Updates the content of the document at the given key with the given document. |
boolean |
updatesRequirePreparing()
Return whether DocumentStore.prepareDocumentsForUpdate(Collection) should be called before updating the documents. |
XAResource |
xaResource()
Returns a resource used in distributed transactions |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FederatedDocumentStore(Connectors connectors, SchematicDb localDb)
connectors
- a non-null
Connectors
instancelocalDb
- a non-null
SchematicDb
instanceMethod Detail |
---|
protected final DocumentTranslator translator()
public LocalDocumentStore localStore()
DocumentStore
localStore
in interface DocumentStore
LocalDocumentStore
instance.public String newDocumentKey(String parentKey, Name documentName, Name documentPrimaryType)
DocumentStore
newDocumentKey
in interface DocumentStore
parentKey
- a non-null
String
, the key of the existing parentdocumentName
- non-null
Name
, the name of the new child document.documentPrimaryType
- non-null
Name
, the name of the primary type of the new child document
String
which will be assigned as key to the new child, or null
indicating that no preferred key
is to be used. If this is the case, the repository will assign a random key.public SchematicEntry storeDocument(String key, Document document)
DocumentStore
storeDocument
in interface DocumentStore
key
- the key or identifier for the documentdocument
- the document that is to be stored
public void updateDocument(String key, Document document, SessionNode sessionNode)
DocumentStore
updateDocument
in interface DocumentStore
key
- the key or identifier for the documentdocument
- the content with which the existing document should be updatedsessionNode
- the SessionNode
instance which contains the changes that caused the updatepublic SchematicEntry get(String key)
DocumentStore
get
in interface DocumentStore
key
- the key or identifier for the document
public boolean containsKey(String key)
DocumentStore
containsKey
in interface DocumentStore
key
- the key or identifier for the document
public boolean remove(String key)
DocumentStore
remove
in interface DocumentStore
key
- the key or identifier for the document
public boolean updatesRequirePreparing()
DocumentStore
DocumentStore.prepareDocumentsForUpdate(Collection)
should be called before updating the documents.
updatesRequirePreparing
in interface DocumentStore
DocumentStore.prepareDocumentsForUpdate(Collection)
should be called, or false otherwisepublic boolean prepareDocumentsForUpdate(Collection<String> keys)
DocumentStore
prepareDocumentsForUpdate
in interface DocumentStore
keys
- the set of keys identifying the documents that are to be updated via
DocumentStore.updateDocument(String, Document, SessionNode)
or via DocumentStore.get(String)
followed by
SchematicEntry.editDocumentContent()
.
public TransactionManager transactionManager()
DocumentStore
transactionManager
in interface DocumentStore
TransactionManager
instance, never null.public XAResource xaResource()
DocumentStore
xaResource
in interface DocumentStore
instance
or null
public void setLocalSourceKey(String localSourceKey)
DocumentStore
setLocalSourceKey
in interface DocumentStore
localSourceKey
- a non-null
stringpublic String getLocalSourceKey()
DocumentStore
getLocalSourceKey
in interface DocumentStore
non-null
stringpublic String createExternalProjection(String projectedNodeKey, String sourceName, String externalPath, String alias)
DocumentStore
createExternalProjection
in interface DocumentStore
projectedNodeKey
- a non-null
string, the key of the federated node which will contain the projectionsourceName
- a non-null
string, the name of an external source.externalPath
- a non-null
string, representing a path towards a node from the sourcealias
- a non-null
string, representing the alias given to the projection.
non-null
string representing the node key of the external node located at externalPath
.public Document getChildrenBlock(String key)
DocumentStore
getChildrenBlock
in interface DocumentStore
key
- a non-null
String the key of the block
Document
with children and possibly a pointer to the next block, or null
if there isn't a
block with such a key.public Document getChildReference(String parentKey, String childKey)
DocumentStore
getChildReference
in interface DocumentStore
parentKey
- the key for the parentchildKey
- the key for the child
public ExternalBinaryValue getExternalBinary(String sourceName, String id)
DocumentStore
getExternalBinary
in interface DocumentStore
sourceName
- a non-null
String; the name of an external sourceid
- a non-null
String; the id of an external binary value
ExternalBinaryValue
implementation or null
|
ModeShape Distribution 3.2.0.Final | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |