public interface SegmentArchiveManager
The implementation doesn't need to be thread-safe.
Modifier and Type | Method and Description |
---|---|
void |
backup(@NotNull java.lang.String archiveName,
@NotNull java.lang.String backupArchiveName,
@NotNull java.util.Set<java.util.UUID> recoveredEntries)
Method that is doing a backup of the archive given with
archiveName into backupArchiveName . |
void |
copyFile(@NotNull java.lang.String from,
@NotNull java.lang.String to)
Copies the archive with all the segments.
|
@NotNull SegmentArchiveWriter |
create(@NotNull java.lang.String archiveName)
Creates a new archive.
|
boolean |
delete(@NotNull java.lang.String archiveName)
Deletes the archive if exists.
|
boolean |
exists(@NotNull java.lang.String archiveName)
Check if archive exists.
|
@Nullable SegmentArchiveReader |
forceOpen(java.lang.String archiveName)
Opens an archive that wasn't closed correctly.
|
@NotNull java.util.List<java.lang.String> |
listArchives()
List names of the available .tar archives.
|
@Nullable SegmentArchiveReader |
open(@NotNull java.lang.String archiveName)
Opens a given archive for reading.
|
void |
recoverEntries(@NotNull java.lang.String archiveName,
@NotNull java.util.LinkedHashMap<java.util.UUID,byte[]> entries)
Finds all the segments included in the archive.
|
boolean |
renameTo(@NotNull java.lang.String from,
@NotNull java.lang.String to)
Renames the archive.
|
@NotNull @NotNull java.util.List<java.lang.String> listArchives() throws java.io.IOException
java.io.IOException
@Nullable @Nullable SegmentArchiveReader open(@NotNull @NotNull java.lang.String archiveName) throws java.io.IOException
archiveName
- java.io.IOException
@Nullable @Nullable SegmentArchiveReader forceOpen(java.lang.String archiveName) throws java.io.IOException
archiveName
- java.io.IOException
@NotNull @NotNull SegmentArchiveWriter create(@NotNull @NotNull java.lang.String archiveName) throws java.io.IOException
archiveName
- java.io.IOException
boolean delete(@NotNull @NotNull java.lang.String archiveName)
archiveName
- boolean renameTo(@NotNull @NotNull java.lang.String from, @NotNull @NotNull java.lang.String to)
from
- the existing archiveto
- new namevoid copyFile(@NotNull @NotNull java.lang.String from, @NotNull @NotNull java.lang.String to) throws java.io.IOException
from
- the existing archiveto
- new namejava.io.IOException
boolean exists(@NotNull @NotNull java.lang.String archiveName)
archiveName
- archive to checkvoid recoverEntries(@NotNull @NotNull java.lang.String archiveName, @NotNull @NotNull java.util.LinkedHashMap<java.util.UUID,byte[]> entries) throws java.io.IOException
archiveName
- archive to recoverentries
- results will be put there, in the order of presence in the
archivejava.io.IOException
void backup(@NotNull @NotNull java.lang.String archiveName, @NotNull @NotNull java.lang.String backupArchiveName, @NotNull @NotNull java.util.Set<java.util.UUID> recoveredEntries) throws java.io.IOException
archiveName
into backupArchiveName
.
In addition, set of UUIDs of recovered segments is provided which can be inspected during backup.
Method is invoked during archive recovery procedure and concrete implementation can decide whether original archive
should be deleted or modified.archiveName
- backupArchiveName
- recoveredEntries
- java.io.IOException
Copyright © 2012–2022 The Apache Software Foundation. All rights reserved.