Class AsyncUploadCache

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      AsyncUploadCacheResult add​(java.lang.String fileName)
      This methods checks if file can be added to asyncUploadMap.
      void delete​(java.lang.String fileName)
      This methods deletes asynchronous upload for @param fileName if there exists asynchronous upload for @param fileName.
      java.util.Set<java.lang.String> deleteOlderThan​(long min)
      Delete in progress asynchronous uploads which are older than @param min.
      java.util.Set<java.lang.String> getAll()
      This methods returns the in progress asynchronous uploads which are not marked for delete.
      long getLastModified​(java.lang.String fileName)
      Returns lastModified from asyncUploadMap if found else returns 0.
      boolean hasEntry​(java.lang.String fileName, boolean touch)
      This methos checks if asynchronous upload is in progress for @param fileName.
      void init​(java.lang.String homeDir, java.lang.String path, int asyncUploadLimit)  
      AsyncUploadCacheResult remove​(java.lang.String fileName)
      This methods removes file (if found) from asyncUploadMap.
      void reset()
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AsyncUploadCache

        public AsyncUploadCache()
    • Method Detail

      • getAll

        public java.util.Set<java.lang.String> getAll()
        This methods returns the in progress asynchronous uploads which are not marked for delete.
      • hasEntry

        public boolean hasEntry​(java.lang.String fileName,
                                boolean touch)
                         throws java.io.IOException
        This methos checks if asynchronous upload is in progress for @param fileName. If @param touch is true, the lastModified is updated to current time.
        Throws:
        java.io.IOException
      • getLastModified

        public long getLastModified​(java.lang.String fileName)
        Returns lastModified from asyncUploadMap if found else returns 0.
      • delete

        public void delete​(java.lang.String fileName)
                    throws java.io.IOException
        This methods deletes asynchronous upload for @param fileName if there exists asynchronous upload for @param fileName.
        Throws:
        java.io.IOException
      • deleteOlderThan

        public java.util.Set<java.lang.String> deleteOlderThan​(long min)
                                                        throws java.io.IOException
        Delete in progress asynchronous uploads which are older than @param min. This method leverage lastModified stored in asyncUploadMap
        Throws:
        java.io.IOException
      • init

        public void init​(java.lang.String homeDir,
                         java.lang.String path,
                         int asyncUploadLimit)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
        Parameters:
        homeDir - home directory of repository.
        path - path of the LocalCache
        asyncUploadLimit - the maximum number of asynchronous uploads
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException