mirror of
https://github.com/chararomandroid/android_device_samsung_a20
synced 2026-08-23 12:35:33 -04:00
universal7885: aidl-support: Mark unstable and fix errors
This commit is contained in:
parent
53b5d14b3c
commit
efc9f1063b
8 changed files with 26 additions and 3 deletions
|
|
@ -0,0 +1,9 @@
|
|||
cc_library_shared {
|
||||
name: "libfileio",
|
||||
srcs: ["FileIO.cpp"],
|
||||
cppflags: ["-fexceptions"],
|
||||
local_include_dirs: ["include"],
|
||||
export_include_dirs: ["include"],
|
||||
shared_libs: ["liblog"],
|
||||
}
|
||||
|
||||
50
universal7885-common/apps/aidl-support/libfileio/FileIO.cpp
Normal file
50
universal7885-common/apps/aidl-support/libfileio/FileIO.cpp
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
#define LOG_TAG "libFileIO"
|
||||
|
||||
#include <log/log.h>
|
||||
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
|
||||
namespace FileIO {
|
||||
|
||||
constexpr const int EXIT_ERR = -1;
|
||||
|
||||
int readline(const char *path) {
|
||||
std::ifstream file;
|
||||
std::string value;
|
||||
file.open(path);
|
||||
ALOGD("%s: Opening %s", __func__, path);
|
||||
if (file.is_open()) {
|
||||
getline(file, value);
|
||||
file.close();
|
||||
} else {
|
||||
ALOGE("%s: Failed to open %s", __func__, path);
|
||||
return EXIT_ERR;
|
||||
}
|
||||
try {
|
||||
return stoi(value);
|
||||
} catch (std::invalid_argument const &ex) {
|
||||
ALOGE("%s: stoi(): invalid argument: for %s", __func__, value.c_str());
|
||||
} catch (std::out_of_range const &ex) {
|
||||
ALOGE("%s: stoi(): out of range: for %s", __func__, value.c_str());
|
||||
}
|
||||
return EXIT_ERR;
|
||||
}
|
||||
|
||||
void writeline(const char *path, const std::string& data) {
|
||||
std::ofstream file;
|
||||
file.open(path);
|
||||
ALOGD("%s: Opening %s", __func__, path);
|
||||
if (file.is_open()) {
|
||||
file << data;
|
||||
file.close();
|
||||
return;
|
||||
}
|
||||
ALOGE("%s: Failed to open %s", __func__, path);
|
||||
}
|
||||
|
||||
void writeline(const char *path, const int data) {
|
||||
writeline(path, std::to_string(data));
|
||||
}
|
||||
|
||||
} // namespace FileIO
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
namespace FileIO {
|
||||
int readline(const char *path);
|
||||
|
||||
void writeline(const char *path, const std::string& data);
|
||||
void writeline(const char *path, const int data);
|
||||
} // namespace FileIO
|
||||
Loading…
Reference in a new issue