Class JCRLocalOneDrive

  • All Implemented Interfaces:
    org.exoplatform.services.cms.clouddrives.CloudDriveSecurity, org.exoplatform.services.cms.clouddrives.CloudDriveStorage, org.exoplatform.services.cms.clouddrives.oauth2.UserTokenRefreshListener

    public class JCRLocalOneDrive
    extends org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
    implements org.exoplatform.services.cms.clouddrives.oauth2.UserTokenRefreshListener
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      class  JCRLocalOneDrive.OneDriveState  
      protected class  JCRLocalOneDrive.OneDriveSyncCommand  
      • Nested classes/interfaces inherited from class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive

        org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.AbstractCommand, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.AbstractFileAPI, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.CommandCallable, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.ConnectCommand, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.DriveState, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.ExoJCREnvironment, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.ExoJCRSettings, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.FileChange, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.JCRListener, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.NoConnectCommand, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.NoSyncCommand, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.SyncCommand, org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.SyncFilesCommand
      • Nested classes/interfaces inherited from class org.exoplatform.services.cms.clouddrives.CloudDrive

        org.exoplatform.services.cms.clouddrives.CloudDrive.Command, org.exoplatform.services.cms.clouddrives.CloudDrive.CommandProgress, org.exoplatform.services.cms.clouddrives.CloudDrive.FilesState, org.exoplatform.services.cms.clouddrives.CloudDrive.ListenerSupport
      • Nested classes/interfaces inherited from interface org.exoplatform.services.cms.clouddrives.CloudDriveStorage

        org.exoplatform.services.cms.clouddrives.CloudDriveStorage.Change<R extends Object>
    • Field Summary

      • Fields inherited from class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive

        accentsConverter, actionDrive, ALREADY_DONE, COMMAND_CHANGES_CHUNK, commandEnv, CURRENT_LOCALFORMAT, currentChangeId, currentConnect, currentSync, delayedSyncFiles, driveCommands, 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, mimeTypes, MIX_REFERENCEABLE, MIX_VERSIONABLE, noConnect, noSync, NT_FILE, NT_FOLDER, NT_RESOURCE, NT_UNSTRUCTURED, repository, rootNodeHolder, rootSystemNodeHolder, rootUUID, rootWorkspace, sessionProviders, state, syncFilesMessages, syncLock, updating, user, USER_NODEPATH, USER_SESSIONPROVIDER, USER_WORKSPACE, workerExecutor
      • Fields inherited from class org.exoplatform.services.cms.clouddrives.CloudDrive

        listeners
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected JCRLocalOneDrive​(org.exoplatform.services.cms.clouddrives.CloudUser user, javax.jcr.Node driveNode, org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders, org.exoplatform.services.cms.clouddrives.jcr.NodeFinder finder, org.exoplatform.services.cms.clouddrives.utils.ExtendedMimeTypeResolver mimeTypes)  
      protected JCRLocalOneDrive​(org.exoplatform.services.cms.clouddrives.onedrive.OneDriveConnector.API apiBuilder, OneDriveProvider provider, javax.jcr.Node driveNode, org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders, org.exoplatform.services.cms.clouddrives.jcr.NodeFinder finder, org.exoplatform.services.cms.clouddrives.utils.ExtendedMimeTypeResolver mimeTypes)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.exoplatform.services.cms.clouddrives.onedrive.JCRLocalOneDrive.OneDriveFileAPI createFileAPI()  
      protected org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.ConnectCommand getConnectCommand()  
      org.exoplatform.services.cms.clouddrives.CloudFile getFile​(String path)
      JCRLocalOneDrive.OneDriveState getState()  
      protected org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.SyncCommand getSyncCommand()  
      OneDriveUser getUser()  
      protected void initDrive​(javax.jcr.Node driveNode)  
      protected static OneDriveUser loadUser​(org.exoplatform.services.cms.clouddrives.onedrive.OneDriveConnector.API apiBuilder, OneDriveProvider provider, javax.jcr.Node driveNode)  
      void onUserTokenRefresh​(org.exoplatform.services.cms.clouddrives.oauth2.UserToken token)  
      void onUserTokenRemove()
      protected Long readChangeId()  
      protected void refreshAccess()  
      protected void saveChangeId​(Long id)  
      protected void updateAccess​(org.exoplatform.services.cms.clouddrives.CloudUser newUser)  
      • Methods inherited from class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive

        addJCRListener, addUpdating, await, checkNotTrashed, cleanName, cleanRemoved, cleanup, cleanUpdated, commitChanges, configure, connect, copyFile, create, currentUserName, disconnect, editLink, ensureSame, fileNode, findNode, findNodes, fixNameConflict, getChangeId, getConnectDate, getCurentCommand, getFileContent, getFilePreview, getId, getInitDate, getLink, getLocalUser, getOrCleanFileNode, getPath, getTitle, getWorkspace, hasChange, hasFile, hasRemoved, hasUpdated, ignore, initCommon, initCopy, initFile, initFolder, initRemove, initUpdating, isConnected, isDrive, isDrive, isIgnored, isInDrive, isInTrash, isLocal, isNew, isNewOrUpdating, isPrivilegedUser, isSameDrive, isSharingSupported, isUpdating, link, listFiles, listFiles, loadHistory, localChange, migrateName, moveFile, nextChangeId, nodeName, openFile, openFolder, parentPath, previewLink, readFile, readNode, readNodes, removeJCRListener, removeLinks, removeLinks, removeNode, removeUpdating, rollback, rollbackAllChanges, rootNode, rootNode, saveChanges, savedChanges, session, setChangeId, shareFile, size, synchronize, systemSession, thumbnailLink, title, unignore, unshareFile
      • Methods inherited from class org.exoplatform.services.cms.clouddrives.CloudDrive

        addListener, initCreated, removeListener, toString
    • Constructor Detail

      • JCRLocalOneDrive

        protected JCRLocalOneDrive​(org.exoplatform.services.cms.clouddrives.CloudUser user,
                                   javax.jcr.Node driveNode,
                                   org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders,
                                   org.exoplatform.services.cms.clouddrives.jcr.NodeFinder finder,
                                   org.exoplatform.services.cms.clouddrives.utils.ExtendedMimeTypeResolver mimeTypes)
                            throws org.exoplatform.services.cms.clouddrives.CloudDriveException,
                                   javax.jcr.RepositoryException
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
        javax.jcr.RepositoryException
      • JCRLocalOneDrive

        protected JCRLocalOneDrive​(org.exoplatform.services.cms.clouddrives.onedrive.OneDriveConnector.API apiBuilder,
                                   OneDriveProvider provider,
                                   javax.jcr.Node driveNode,
                                   org.exoplatform.services.jcr.ext.app.SessionProviderService sessionProviders,
                                   org.exoplatform.services.cms.clouddrives.jcr.NodeFinder finder,
                                   org.exoplatform.services.cms.clouddrives.utils.ExtendedMimeTypeResolver mimeTypes)
                            throws javax.jcr.RepositoryException,
                                   org.exoplatform.services.cms.clouddrives.CloudDriveException,
                                   IOException
        Throws:
        javax.jcr.RepositoryException
        org.exoplatform.services.cms.clouddrives.CloudDriveException
        IOException
    • Method Detail

      • loadUser

        protected static OneDriveUser loadUser​(org.exoplatform.services.cms.clouddrives.onedrive.OneDriveConnector.API apiBuilder,
                                               OneDriveProvider provider,
                                               javax.jcr.Node driveNode)
                                        throws javax.jcr.RepositoryException,
                                               org.exoplatform.services.cms.clouddrives.CloudDriveException,
                                               IOException
        Throws:
        javax.jcr.RepositoryException
        org.exoplatform.services.cms.clouddrives.CloudDriveException
        IOException
      • getConnectCommand

        protected org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.ConnectCommand getConnectCommand()
                                                                                                            throws org.exoplatform.services.cms.clouddrives.DriveRemovedException,
                                                                                                                   javax.jcr.RepositoryException
        Specified by:
        getConnectCommand in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.DriveRemovedException
        javax.jcr.RepositoryException
      • getSyncCommand

        protected org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive.SyncCommand getSyncCommand()
        Specified by:
        getSyncCommand in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
      • getState

        public JCRLocalOneDrive.OneDriveState getState()
                                                throws org.exoplatform.services.cms.clouddrives.DriveRemovedException,
                                                       org.exoplatform.services.cms.clouddrives.RefreshAccessException,
                                                       org.exoplatform.services.cms.clouddrives.CloudProviderException,
                                                       javax.jcr.RepositoryException
        Overrides:
        getState in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.DriveRemovedException
        org.exoplatform.services.cms.clouddrives.RefreshAccessException
        org.exoplatform.services.cms.clouddrives.CloudProviderException
        javax.jcr.RepositoryException
      • createFileAPI

        protected org.exoplatform.services.cms.clouddrives.onedrive.JCRLocalOneDrive.OneDriveFileAPI createFileAPI()
        Specified by:
        createFileAPI in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
      • readChangeId

        protected Long readChangeId()
        Specified by:
        readChangeId in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
      • saveChangeId

        protected void saveChangeId​(Long id)
        Specified by:
        saveChangeId in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
      • getUser

        public OneDriveUser getUser()
        Specified by:
        getUser in class org.exoplatform.services.cms.clouddrives.CloudDrive
      • refreshAccess

        protected void refreshAccess()
                              throws org.exoplatform.services.cms.clouddrives.CloudDriveException
        Specified by:
        refreshAccess in class org.exoplatform.services.cms.clouddrives.CloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
      • initDrive

        protected void initDrive​(javax.jcr.Node driveNode)
                          throws org.exoplatform.services.cms.clouddrives.CloudDriveException,
                                 javax.jcr.RepositoryException
        Overrides:
        initDrive in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
        javax.jcr.RepositoryException
      • updateAccess

        protected void updateAccess​(org.exoplatform.services.cms.clouddrives.CloudUser newUser)
                             throws org.exoplatform.services.cms.clouddrives.CloudDriveException
        Specified by:
        updateAccess in class org.exoplatform.services.cms.clouddrives.CloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
      • onUserTokenRefresh

        public void onUserTokenRefresh​(org.exoplatform.services.cms.clouddrives.oauth2.UserToken token)
                                throws org.exoplatform.services.cms.clouddrives.CloudDriveException
        Specified by:
        onUserTokenRefresh in interface org.exoplatform.services.cms.clouddrives.oauth2.UserTokenRefreshListener
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
      • onUserTokenRemove

        public void onUserTokenRemove()
                               throws org.exoplatform.services.cms.clouddrives.CloudDriveException
        Specified by:
        onUserTokenRemove in interface org.exoplatform.services.cms.clouddrives.oauth2.UserTokenRefreshListener
        Throws:
        org.exoplatform.services.cms.clouddrives.CloudDriveException
      • getFile

        public org.exoplatform.services.cms.clouddrives.CloudFile getFile​(String path)
                                                                   throws org.exoplatform.services.cms.clouddrives.DriveRemovedException,
                                                                          org.exoplatform.services.cms.clouddrives.NotCloudDriveException,
                                                                          org.exoplatform.services.cms.clouddrives.NotCloudFileException,
                                                                          org.exoplatform.services.cms.clouddrives.NotYetCloudFileException,
                                                                          javax.jcr.RepositoryException
        Overrides:
        getFile in class org.exoplatform.services.cms.clouddrives.jcr.JCRLocalCloudDrive
        Throws:
        org.exoplatform.services.cms.clouddrives.DriveRemovedException
        org.exoplatform.services.cms.clouddrives.NotCloudDriveException
        org.exoplatform.services.cms.clouddrives.NotCloudFileException
        org.exoplatform.services.cms.clouddrives.NotYetCloudFileException
        javax.jcr.RepositoryException