public class JCRLocalCMISDrive
extends org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive
| Modifier and Type | Class and Description |
|---|---|
protected class |
JCRLocalCMISDrive.Connect
Connect algorithm for Template drive.
|
protected class |
JCRLocalCMISDrive.FileAPI
CloudFileAPI implementation. |
protected static interface |
JCRLocalCMISDrive.LocalFile |
protected class |
JCRLocalCMISDrive.Sync
A facade
SyncCommand implementation. |
org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.AbstractCommand, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.AbstractFileAPI, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.CommandCallable, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.ConnectCommand, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.ExoJCREnvironment, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.ExoJCRSettings, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.FileChange, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.JCRListener, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.NoConnectCommand, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.NoSyncCommand, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.SyncCommand, org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.SyncFilesCommand| Modifier and Type | Field and Description |
|---|---|
protected AtomicLong |
changeIdSequencer |
static String |
EMPTY_TOKEN |
static long |
FULL_SYNC_PERIOD
Period to perform
FullSync as a next sync request. |
protected org.exoplatform.commons.utils.MimeTypeResolver |
mimeTypes |
accentsConverter, actionDrive, ALREADY_DONE, commandEnv, commandExecutor, CURRENT_LOCALFORMAT, currentChangeId, currentConnect, currentSync, DUMMY_DATA, ECD_CLOUDDRIVE, ECD_CLOUDFILE, ECD_CLOUDFILERESOURCE, ECD_CLOUDFOLDER, ECD_IGNORED, ECD_LOCALFORMAT, EXO_DATETIME, EXO_MODIFY, EXO_THUMBNAIL, EXO_THUMBNAILS, EXO_TRASHFOLDER, fileAPI, fileChanges, fileChangeSequencer, fileCopies, fileHistory, fileRemovals, fileSynchronizers, fileTrash, finder, HISTORY_EXPIRATION, HISTORY_MAX_LENGTH, jcrListener, MIX_REFERENCEABLE, noConnect, noSyncCommand, NT_FILE, NT_FOLDER, NT_RESOURCE, NT_UNSTRUCTURED, repository, rootNodeHolder, rootUUID, rootWorkspace, sessionProviders, syncLock, user, USER_NODEPATH, USER_SESSIONPROVIDER, USER_WORKSPACE, workerExecutor| Modifier | Constructor and Description |
|---|---|
protected |
JCRLocalCMISDrive(CMISConnector.API apiBuilder,
javax.jcr.Node driveNode,
org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders,
org.exoplatform.clouddrive.jcr.NodeFinder finder) |
protected |
JCRLocalCMISDrive(CMISUser user,
javax.jcr.Node driveNode,
org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders,
org.exoplatform.clouddrive.jcr.NodeFinder finder) |
| Modifier and Type | Method and Description |
|---|---|
protected org.exoplatform.clouddrive.CloudFileAPI |
createFileAPI() |
protected String |
editLink(String link) |
protected String |
getChangeToken(javax.jcr.Node localNode)
Read CMIS change token of a file.
Override this method to apply vendor specific logic (id type etc). |
protected org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.ConnectCommand |
getConnectCommand() |
Object |
getState() |
protected org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.SyncCommand |
getSyncCommand() |
CMISUser |
getUser() |
protected void |
initCMISItem(javax.jcr.Node localNode,
org.apache.chemistry.opencmis.client.api.CmisObject item)
Initialize CMIS specifics of files and folders.
|
protected void |
initDrive(javax.jcr.Node driveNode) |
protected static CMISUser |
loadUser(CMISConnector.API apiBuilder,
javax.jcr.Node driveNode)
Load user from the drive Node.
|
protected String |
previewLink(String link) |
protected Long |
readChangeId() |
protected void |
refreshAccess() |
protected void |
saveAccess(javax.jcr.Node driveNode,
String password,
String serviceURL,
String repositoryId)
Save user credentials in local drive.
|
protected void |
saveChangeId(Long id) |
protected void |
setChangeToken(javax.jcr.Node localNode,
String changeToken)
Initialize CMIS Change Token of a file.
Override this method to apply vendor specific logic (id type etc). |
protected void |
updateAccess(org.exoplatform.clouddrive.CloudUser newUser) |
protected org.exoplatform.clouddrive.jcr.JCRLocalCloudFile |
updateItem(CMISAPI api,
org.apache.chemistry.opencmis.client.api.CmisObject item,
javax.jcr.Node parent,
javax.jcr.Node node)
Update or create a local node of Cloud File.
|
addJCRListener, checkTrashed, cleanName, cleanNode, cleanRemoved, cleanup, cleanUpdated, commitChanges, configure, connect, copyNode, createIfNotCloudFile, disconnect, fileNode, findNode, findNodes, getChangeId, getConnectDate, getFile, getId, getInitDate, getLink, getLocalUser, getOrCleanFileNode, getPath, getTitle, hasFile, hasRemoved, hasUpdated, initCommon, initCopy, initFile, initFolder, initRemove, isConnected, isDrive, isDrive, isDrive, isSameDrive, listFiles, listFiles, listFiles, loadHistory, migrateName, moveFile, nextChangeId, openFile, openFolder, readFile, readNode, readNodes, removeJCRListener, rollback, rootNode, saveChanges, savedChanges, session, setChangeId, synchronize, systemSession, title, tryCreateCloudFilepublic static final long FULL_SYNC_PERIOD
FullSync as a next sync request. See implementation of
getSyncCommand().public static final String EMPTY_TOKEN
protected final org.exoplatform.commons.utils.MimeTypeResolver mimeTypes
protected final AtomicLong changeIdSequencer
protected JCRLocalCMISDrive(CMISUser user, javax.jcr.Node driveNode, org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders, org.exoplatform.clouddrive.jcr.NodeFinder finder) throws org.exoplatform.clouddrive.CloudDriveException, javax.jcr.RepositoryException
user - driveNode - sessionProviders - org.exoplatform.clouddrive.CloudDriveExceptionjavax.jcr.RepositoryExceptionprotected JCRLocalCMISDrive(CMISConnector.API apiBuilder, javax.jcr.Node driveNode, org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders, org.exoplatform.clouddrive.jcr.NodeFinder finder) throws javax.jcr.RepositoryException, org.exoplatform.clouddrive.CloudDriveException
javax.jcr.RepositoryExceptionorg.exoplatform.clouddrive.CloudDriveExceptionprotected void initDrive(javax.jcr.Node driveNode)
throws org.exoplatform.clouddrive.CloudDriveException,
javax.jcr.RepositoryException
initDrive in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveorg.exoplatform.clouddrive.CloudDriveExceptionjavax.jcr.RepositoryExceptionprotected static CMISUser loadUser(CMISConnector.API apiBuilder, javax.jcr.Node driveNode) throws javax.jcr.RepositoryException, CMISException, org.exoplatform.clouddrive.CloudDriveException
apiBuilder - CMISConnector.API API builderdriveNode - Node root of the driveCMISUserjavax.jcr.RepositoryExceptionCMISExceptionorg.exoplatform.clouddrive.CloudDriveExceptionprotected void saveAccess(javax.jcr.Node driveNode,
String password,
String serviceURL,
String repositoryId)
throws org.exoplatform.clouddrive.CloudDriveException
updateAccess(CloudUser).protected org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.ConnectCommand getConnectCommand()
throws org.exoplatform.clouddrive.DriveRemovedException,
javax.jcr.RepositoryException
getConnectCommand in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveorg.exoplatform.clouddrive.DriveRemovedExceptionjavax.jcr.RepositoryExceptionprotected org.exoplatform.clouddrive.jcr.JCRLocalCloudDrive.SyncCommand getSyncCommand()
throws org.exoplatform.clouddrive.DriveRemovedException,
org.exoplatform.clouddrive.SyncNotSupportedException,
javax.jcr.RepositoryException
getSyncCommand in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveorg.exoplatform.clouddrive.RefreshAccessExceptionorg.exoplatform.clouddrive.DriveRemovedExceptionorg.exoplatform.clouddrive.SyncNotSupportedExceptionjavax.jcr.RepositoryExceptionprotected org.exoplatform.clouddrive.CloudFileAPI createFileAPI()
throws org.exoplatform.clouddrive.DriveRemovedException,
org.exoplatform.clouddrive.SyncNotSupportedException,
javax.jcr.RepositoryException
createFileAPI in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveorg.exoplatform.clouddrive.DriveRemovedExceptionorg.exoplatform.clouddrive.SyncNotSupportedExceptionjavax.jcr.RepositoryExceptionprotected Long readChangeId() throws javax.jcr.RepositoryException, org.exoplatform.clouddrive.CloudDriveException
readChangeId in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDrivejavax.jcr.RepositoryExceptionorg.exoplatform.clouddrive.CloudDriveExceptionprotected void saveChangeId(Long id) throws org.exoplatform.clouddrive.CloudDriveException, javax.jcr.RepositoryException
saveChangeId in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveorg.exoplatform.clouddrive.CloudDriveExceptionjavax.jcr.RepositoryExceptionpublic CMISUser getUser()
getUser in class org.exoplatform.clouddrive.CloudDrivepublic Object getState() throws org.exoplatform.clouddrive.DriveRemovedException, org.exoplatform.clouddrive.CloudProviderException, javax.jcr.RepositoryException, org.exoplatform.clouddrive.RefreshAccessException
getState in class org.exoplatform.clouddrive.CloudDriveorg.exoplatform.clouddrive.DriveRemovedExceptionorg.exoplatform.clouddrive.CloudProviderExceptionjavax.jcr.RepositoryExceptionorg.exoplatform.clouddrive.RefreshAccessExceptionprotected void refreshAccess()
throws org.exoplatform.clouddrive.CloudDriveException
refreshAccess in class org.exoplatform.clouddrive.CloudDriveorg.exoplatform.clouddrive.CloudDriveExceptionprotected void updateAccess(org.exoplatform.clouddrive.CloudUser newUser)
throws org.exoplatform.clouddrive.CloudDriveException,
javax.jcr.RepositoryException
updateAccess in class org.exoplatform.clouddrive.CloudDriveorg.exoplatform.clouddrive.CloudDriveExceptionjavax.jcr.RepositoryExceptionprotected void initCMISItem(javax.jcr.Node localNode,
org.apache.chemistry.opencmis.client.api.CmisObject item)
throws javax.jcr.RepositoryException,
CMISException
localNode - Nodeitem - CmisObjectjavax.jcr.RepositoryExceptionCMISExceptionprotected void setChangeToken(javax.jcr.Node localNode,
String changeToken)
throws javax.jcr.RepositoryException,
CMISException
localNode - NodechangeToken - Stringjavax.jcr.RepositoryExceptionCMISExceptionprotected String getChangeToken(javax.jcr.Node localNode) throws javax.jcr.RepositoryException, CMISException
localNode - NodeStringjavax.jcr.RepositoryExceptionCMISExceptionprotected org.exoplatform.clouddrive.jcr.JCRLocalCloudFile updateItem(CMISAPI api, org.apache.chemistry.opencmis.client.api.CmisObject item, javax.jcr.Node parent, javax.jcr.Node node) throws javax.jcr.RepositoryException, org.exoplatform.clouddrive.CloudDriveException
null then it will be open on the
given parent and created if not already exists.api - CMISAPIitem - CmisObjectparent - Nodenode - Node, can be nullJCRLocalCloudFilejavax.jcr.RepositoryException - for storage errorsorg.exoplatform.clouddrive.CloudDriveException - for drive or format errorsprotected String previewLink(String link)
previewLink in class org.exoplatform.clouddrive.jcr.JCRLocalCloudDriveCopyright © 2003–2014 eXo Platform SAS. All rights reserved.