public interface Session
Modifier and Type | Method and Description |
---|---|
void |
cancel()
Cancels changes done in this session.
|
void |
close()
Closes this session and saves changes on the workspace, if any.
|
Document |
copy(Document src,
Document dst,
String name)
Copies the source document to the given folder.
|
Document |
createProxy(Document doc,
Document folder)
Creates a generic proxy to the given document inside the given folder.
|
Query |
createQuery(String query,
Query.Type qType,
String... params)
Creates a query object given a SQL like query string.
|
Query |
createQuery(String query,
String queryType,
String... params)
Creates a query object given a SQL like query string.
|
void |
dispose()
Closes the session and cancel changes on workspace, if any.
|
InputStream |
getDataStream(String key)
Gets a blob stream using the given key.
|
Document |
getDocumentByUUID(String uuid)
Gets a document given its ID.
|
Document |
getNullDocument()
Gets the null document, to be used as a fake parent to add placeless
children.
|
Collection<Document> |
getProxies(Document doc,
Document folder)
Finds the proxies for a document.
|
Repository |
getRepository()
Gets the repository that created this session.
|
Document |
getRootDocument()
Gets the root document in this repository.
|
SecurityManager |
getSecurityManager()
Gets the security manager used by the repository.
|
Map<String,Serializable> |
getSessionContext()
Gets the session context used to create this session.
|
long |
getSessionId()
Gets the session id.
|
SchemaManager |
getTypeManager()
Gets the type manager used by the repository.
|
String |
getUserSessionId()
The unique ID of the user session on this repository.
|
Document |
getVersion(String versionableId,
VersionModel versionModel)
Gets a version of a document, given its versionable id and label.
|
XAResource |
getXAResource()
The XAResource corresponding to this session.
|
Document |
importDocument(String uuid,
Document parent,
String name,
String typeName,
Map<String,Serializable> properties)
Imports a document with a given id and parent.
|
boolean |
isLive()
Checks whether the session is alive.
|
boolean |
isStateSharedByAllThreadSessions()
Returns
true if all sessions in the current thread share the same
state. |
Document |
move(Document src,
Document dst,
String name)
Moves the source document to the given folder.
|
IterableQueryResult |
queryAndFetch(String query,
String queryType,
QueryFilter queryFilter,
Object... params) |
Document |
resolvePath(String path)
Gets the document at the given path, if any.
|
void |
save()
Saves this session.
|
void |
setProxyTarget(Document proxy,
Document target)
Sets a proxies' target.
|
static final String USER_NAME
long getSessionId()
This is an unique identifier of this session relative to the current JVM.
String getUserSessionId()
The ID is unique in the application (possible deployed on multiple machines).
This ID is normally passed by the session creator through the session context.
Repository getRepository()
Map<String,Serializable> getSessionContext()
Query createQuery(String query, String queryType, String... params) throws QueryException
query
- the SQL like queryQueryException
Query createQuery(String query, Query.Type qType, String... params) throws QueryException
query
- the SQL like queryQueryException
IterableQueryResult queryAndFetch(String query, String queryType, QueryFilter queryFilter, Object... params) throws QueryException
QueryException
SchemaManager getTypeManager()
SecurityManager getSecurityManager()
XAResource getXAResource()
void save() throws DocumentException
DocumentException
- if any error occursvoid cancel() throws DocumentException
DocumentException
- if any error occursboolean isLive()
boolean isStateSharedByAllThreadSessions()
true
if all sessions in the current thread share the same
state.void close() throws DocumentException
DocumentException
- if any error occursvoid dispose()
Document resolvePath(String path) throws DocumentException
path
- DocumentException
- if any error occursDocument getDocumentByUUID(String uuid) throws DocumentException
uuid
- the document idDocumentException
- if any error occursDocument getRootDocument() throws DocumentException
DocumentException
- if any error occursDocument getNullDocument() throws DocumentException
DocumentException
Document copy(Document src, Document dst, String name) throws DocumentException
If the destination document is not a folder, an exception is thrown.
src
- dst
- name
- DocumentException
- if any error occursDocument move(Document src, Document dst, String name) throws DocumentException
If the destination document is not a folder an exception is thrown.
src
- the source document to movedst
- the destination foldername
- the new name of the document or null if the original name
should be preservedDocumentException
- if any error occursInputStream getDataStream(String key) throws DocumentException
The implementation may use anything as the key. It may use the property path or a unique ID of the property.
This method can be used to lazily fetch blob content.
key
- the key of the blob dataDocumentException
- if any error occursDocument createProxy(Document doc, Document folder) throws DocumentException
doc
- the documentfolder
- the folderDocumentException
- if any error occursCollection<Document> getProxies(Document doc, Document folder) throws DocumentException
If the document is a version, then only proxies to that version will be looked up.
doc
- the document or versionfolder
- the folder, or nullDocumentException
- if any error occursvoid setProxyTarget(Document proxy, Document target) throws DocumentException
The target must have the same version series as the proxy.
proxy
- the proxytarget
- the new targetDocumentException
Document importDocument(String uuid, Document parent, String name, String typeName, Map<String,Serializable> properties) throws DocumentException
The document can then be filled with the normal imported properties.
uuid
- the document uuidparent
- the document parent, or null
for a versionname
- the document name in its parenttypeName
- the document type, or ecm:proxy
for a proxyproperties
- system properties of the document, which will vary
depending whether it's a live document, a version or a proxy
(see the various IMPORT_*
constants of
CoreSession
)Document
, even for proxies and versionsDocumentException
Document getVersion(String versionableId, VersionModel versionModel) throws DocumentException
The version model contains the label of the version to look for. On return, it is filled with the version's description and creation date.
versionableId
- the versionable idversionModel
- the version modelnull
if not foundDocumentException
Copyright © 2014 Nuxeo SA. All Rights Reserved.