org.exoplatform.clouddrive.cmis
Class JCRLocalCMISDrive.Sync.TraversingAlgorithm

java.lang.Object
  extended by org.exoplatform.clouddrive.cmis.JCRLocalCMISDrive.Sync.TraversingAlgorithm
Enclosing class:
JCRLocalCMISDrive.Sync

protected class JCRLocalCMISDrive.Sync.TraversingAlgorithm
extends Object

CMIS drive sync based on all remote files traversing: we do compare all remote files with locals by its change log and fetch an item if the logs differ.


Nested Class Summary
protected  class JCRLocalCMISDrive.Sync.TraversingAlgorithm.CMISItem
           
protected  class JCRLocalCMISDrive.Sync.TraversingAlgorithm.FolderReader
           
 
Field Summary
protected  Queue<JCRLocalCMISDrive.Sync.TraversingAlgorithm.CMISItem> allItems
           
protected  Map<String,List<javax.jcr.Node>> allLocal
           
protected  Queue<Future<org.apache.chemistry.opencmis.client.api.Folder>> readers
           
 
Constructor Summary
protected JCRLocalCMISDrive.Sync.TraversingAlgorithm()
           
 
Method Summary
protected  boolean isReadDone()
           
protected  Future<org.apache.chemistry.opencmis.client.api.Folder> readItems(String folderId)
           
protected  org.apache.chemistry.opencmis.client.api.Folder syncChilds(String folderId)
           
protected  void syncFiles()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

allLocal

protected final Map<String,List<javax.jcr.Node>> allLocal

allItems

protected final Queue<JCRLocalCMISDrive.Sync.TraversingAlgorithm.CMISItem> allItems

readers

protected final Queue<Future<org.apache.chemistry.opencmis.client.api.Folder>> readers
Constructor Detail

JCRLocalCMISDrive.Sync.TraversingAlgorithm

protected JCRLocalCMISDrive.Sync.TraversingAlgorithm()
Method Detail

readItems

protected Future<org.apache.chemistry.opencmis.client.api.Folder> readItems(String folderId)
                                                                     throws javax.jcr.RepositoryException,
                                                                            org.exoplatform.clouddrive.CloudDriveException
Throws:
javax.jcr.RepositoryException
org.exoplatform.clouddrive.CloudDriveException

syncFiles

protected void syncFiles()
                  throws javax.jcr.RepositoryException,
                         org.exoplatform.clouddrive.CloudDriveException,
                         InterruptedException
Throws:
javax.jcr.RepositoryException
org.exoplatform.clouddrive.CloudDriveException
InterruptedException

isReadDone

protected boolean isReadDone()

syncChilds

protected org.apache.chemistry.opencmis.client.api.Folder syncChilds(String folderId)
                                                              throws javax.jcr.RepositoryException,
                                                                     org.exoplatform.clouddrive.CloudDriveException,
                                                                     InterruptedException
Throws:
javax.jcr.RepositoryException
org.exoplatform.clouddrive.CloudDriveException
InterruptedException


Copyright © 2003–2015 eXo Platform SAS. All rights reserved.