electron/shell/common/asar/asar_util.h

37 lines
971 B
C
Raw Normal View History

// Copyright (c) 2015 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
2019-06-19 20:56:58 +00:00
#ifndef SHELL_COMMON_ASAR_ASAR_UTIL_H_
#define SHELL_COMMON_ASAR_ASAR_UTIL_H_
#include <memory>
2015-02-12 11:50:28 +00:00
#include <string>
namespace base {
class FilePath;
}
namespace asar {
class Archive;
// Gets or creates and caches a new Archive from the path.
std::shared_ptr<Archive> GetOrCreateAsarArchive(const base::FilePath& path);
2017-03-10 08:33:27 +00:00
// Destroy cached Archive objects.
void ClearArchives();
2015-02-12 09:31:14 +00:00
// Separates the path to Archive out.
bool GetAsarArchivePath(const base::FilePath& full_path,
base::FilePath* asar_path,
base::FilePath* relative_path,
bool allow_root = false);
2015-02-12 09:31:14 +00:00
// Same with base::ReadFileToString but supports asar Archive.
bool ReadFileToString(const base::FilePath& path, std::string* contents);
} // namespace asar
2019-06-19 20:56:58 +00:00
#endif // SHELL_COMMON_ASAR_ASAR_UTIL_H_