Class AwsArchiveManager
- java.lang.Object
-
- org.apache.jackrabbit.oak.segment.aws.AwsArchiveManager
-
- All Implemented Interfaces:
org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager
public class AwsArchiveManager extends java.lang.Object implements org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager
-
-
Constructor Summary
Constructors Constructor Description AwsArchiveManager(S3Directory directory, org.apache.jackrabbit.oak.segment.spi.monitor.IOMonitor ioMonitor, org.apache.jackrabbit.oak.segment.spi.monitor.FileStoreMonitor fileStoreMonitor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbackup(java.lang.String archiveName, java.lang.String backupArchiveName, java.util.Set<java.util.UUID> recoveredEntries)Avoids deleting segments from the directory given witharchiveName, if they are in the set of recovered segments.voidcopyFile(java.lang.String from, java.lang.String to)org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveWritercreate(java.lang.String archiveName)booleandelete(java.lang.String archiveName)booleanexists(java.lang.String archiveName)org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveReaderforceOpen(java.lang.String archiveName)java.util.List<java.lang.String>listArchives()org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveReaderopen(java.lang.String archiveName)voidrecoverEntries(java.lang.String archiveName, java.util.LinkedHashMap<java.util.UUID,byte[]> entries)booleanrenameTo(java.lang.String from, java.lang.String to)
-
-
-
Constructor Detail
-
AwsArchiveManager
public AwsArchiveManager(S3Directory directory, org.apache.jackrabbit.oak.segment.spi.monitor.IOMonitor ioMonitor, org.apache.jackrabbit.oak.segment.spi.monitor.FileStoreMonitor fileStoreMonitor)
-
-
Method Detail
-
listArchives
public java.util.List<java.lang.String> listArchives() throws java.io.IOException- Specified by:
listArchivesin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
open
public org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveReader open(java.lang.String archiveName) throws java.io.IOException- Specified by:
openin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
forceOpen
public org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveReader forceOpen(java.lang.String archiveName) throws java.io.IOException- Specified by:
forceOpenin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
create
public org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveWriter create(java.lang.String archiveName) throws java.io.IOException- Specified by:
createin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
delete
public boolean delete(java.lang.String archiveName)
- Specified by:
deletein interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager
-
renameTo
public boolean renameTo(java.lang.String from, java.lang.String to)- Specified by:
renameToin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager
-
copyFile
public void copyFile(java.lang.String from, java.lang.String to) throws java.io.IOException- Specified by:
copyFilein interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
exists
public boolean exists(java.lang.String archiveName)
- Specified by:
existsin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager
-
recoverEntries
public void recoverEntries(java.lang.String archiveName, java.util.LinkedHashMap<java.util.UUID,byte[]> entries) throws java.io.IOException- Specified by:
recoverEntriesin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
backup
public void backup(java.lang.String archiveName, java.lang.String backupArchiveName, java.util.Set<java.util.UUID> recoveredEntries) throws java.io.IOExceptionAvoids deleting segments from the directory given witharchiveName, if they are in the set of recovered segments. Reason for that is because during execution of this method, remote repository can be accessed by another application, and deleting a valid segment can cause consistency issues there.- Specified by:
backupin interfaceorg.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager- Throws:
java.io.IOException
-
-