refactor(main): move file operation functions to new source (#2124)

This commit is contained in:
ReenigneArcher
2024-02-10 07:37:27 -05:00
committed by GitHub
parent 1c50bc502b
commit cd2153f340
11 changed files with 113 additions and 78 deletions

View File

@@ -758,57 +758,3 @@ main(int argc, char *argv[]) {
return lifetime::desired_exit_code;
}
/**
* @brief Read a file to string.
* @param path The path of the file.
* @return `std::string` : The contents of the file.
*
* EXAMPLES:
* ```cpp
* std::string contents = read_file("path/to/file");
* ```
*/
std::string
read_file(const char *path) {
if (!std::filesystem::exists(path)) {
BOOST_LOG(debug) << "Missing file: " << path;
return {};
}
std::ifstream in(path);
std::string input;
std::string base64_cert;
while (!in.eof()) {
std::getline(in, input);
base64_cert += input + '\n';
}
return base64_cert;
}
/**
* @brief Writes a file.
* @param path The path of the file.
* @param contents The contents to write.
* @return `int` : `0` on success, `-1` on failure.
*
* EXAMPLES:
* ```cpp
* int write_status = write_file("path/to/file", "file contents");
* ```
*/
int
write_file(const char *path, const std::string_view &contents) {
std::ofstream out(path);
if (!out.is_open()) {
return -1;
}
out << contents;
return 0;
}