9 #ifndef CVMFS_SYNC_UNION_TARBALL_H_
10 #define CVMFS_SYNC_UNION_TARBALL_H_
26 class AbstractSyncMediator;
32 const std::string &tarball_path,
33 const std::string &base_directory,
36 const std::string &to_delete,
37 const bool create_catalog_on_root);
85 std::map<std::string, SharedPtr<SyncItem> >
dirs_;
91 std::map<const std::string, std::list<std::string> >
hardlinks_;
118 #endif // CVMFS_SYNC_UNION_TARBALL_H_
std::map< const std::string, std::list< std::string > > hardlinks_
bool IsOpaqueDirectory(SharedPtr< SyncItem > directory) const
std::map< std::string, SharedPtr< SyncItem > > dirs_
const std::string base_directory_
std::string UnwindWhiteoutFilename(SharedPtr< SyncItem > entry) const
void CreateDirectories(const std::string &target)
const std::string tarball_path_
std::set< std::string > to_create_catalog_dirs_
SyncUnionTarball(AbstractSyncMediator *mediator, const std::string &rdonly_path, const std::string &tarball_path, const std::string &base_directory, const uid_t uid, const gid_t gid, const std::string &to_delete, const bool create_catalog_on_root)
std::string SanitizePath(const std::string &path)
Signal * read_archive_signal_
const std::string to_delete_
entity to delete before to extract the tar
void ProcessArchiveEntry(struct archive_entry *entry)
const bool create_catalog_on_root_
static const size_t kBlockSize
bool IsWhiteoutEntry(SharedPtr< SyncItem > entry) const
std::set< std::string > know_directories_
directory that we know already exist
std::string rdonly_path() const