return output_string;
}
+std::string ltrim(const std::string& s) {
+ ScopeLogger();
+ std::string str = s;
+ auto pos = str.find_first_not_of(" ");
+ str.erase(0, pos);
+ return str;
+}
+
+std::string ConvertUriToPath(const std::string& str) {
+ const std::string URI_PREFIX = "file://";
+ ScopeLogger();
+ std::string path = ltrim(str);
+ std::string prefix = path.substr(0, URI_PREFIX.size());
+
+ if (prefix == URI_PREFIX) {
+ return path.substr(URI_PREFIX.size());
+ } else {
+ return path;
+ }
+}
+
} // namespace tools
} // namespace common
std::string ConvertToLowerCase(const std::string& input_string);
+std::string ConvertUriToPath(const std::string& uri);
+
} // namespace tools
} // namespace common
ScopeLogger();
const std::string& uri = args.get("uri").get<std::string>();
- const std::string& file_path = ExifUtil::convertUriToPath(uri);
+ const std::string& file_path = common::tools::ConvertUriToPath(uri);
const double callback_id = args.get("callbackId").get<double>();
const std::string& real_path = common::FilesystemProvider::Create().GetRealPath(file_path);
const double callback_id = args.get("callbackId").get<double>();
const std::string& file_uri = args.get("uri").get<std::string>();
- const std::string& file_path = ExifUtil::convertUriToPath(file_uri);
+ const std::string& file_path = common::tools::ConvertUriToPath(file_uri);
const std::string& real_path = common::FilesystemProvider::Create().GetRealPath(file_path);
CHECK_STORAGE_ACCESS(real_path, &out);
ScopeLogger();
const std::string& uri = args.get("uri").get<std::string>();
- const std::string& file_path = ExifUtil::ExifUtil::convertUriToPath(uri);
+ const std::string& file_path = common::tools::ConvertUriToPath(uri);
const std::string& real_path = common::FilesystemProvider::Create().GetRealPath(file_path);
CHECK_STORAGE_ACCESS(real_path, &out);
const std::string EXPOSURE_PROGRAM_LANDSCAPE_MODE = "LANDSCAPE_MODE";
const std::string DUMMY = ""; // For unexpected input handling
-
-const std::string URI_PREFIX = "file://";
} // namespace
const std::size_t ExifTypeInfo::ByteSize = 1;
}
}
-// Example:
-// in: uri = file://TZ_USER_IMAGES/exif.jpg
-// out: path = TZ_USER_IMAGES/exif.jpg
-std::string ExifUtil::convertUriToPath(const std::string& str) {
- ScopeLogger();
- std::string path = ltrim(str);
- std::string prefix = path.substr(0, URI_PREFIX.size());
-
- if (prefix == URI_PREFIX) {
- return path.substr(URI_PREFIX.size());
- } else {
- return path;
- }
-}
-
-std::string ExifUtil::ltrim(const std::string& s) {
- ScopeLogger();
- std::string str = s;
- std::string::iterator i;
- for (i = str.begin(); i != str.end(); ++i) {
- if (!isspace(*i)) {
- break;
- }
- }
-
- if (i == str.end()) {
- str.clear();
- } else {
- str.erase(str.begin(), i);
- }
- return str;
-}
-
time_t ExifUtil::exifDateTimeOriginalToTimeT(const char* string) {
ScopeLogger();
int year, month, day, hour, min, sec;
static ExposureProgram stringToExposureProgram(const std::string& exposure_program);
static const std::string& exposureProgramToString(ExposureProgram value);
- static std::string convertUriToPath(const std::string& str);
- static std::string ltrim(const std::string& s);
-
static time_t exifDateTimeOriginalToTimeT(const char* string);
static std::string timeTToExifDateTimeOriginal(time_t time);
static const Rationals timeTToExifGpsTimeStamp(time_t time);
#include "common/logger.h"
#include "common/platform_result.h"
+#include "common/tools.h"
#include "exif/exif_util.h"
PlatformResult GetExifInfo::LoadFromURI(const std::string& uri, JsonValue* result) {
ScopeLogger();
- const std::string& file_path = ExifUtil::convertUriToPath(uri);
+ const std::string& file_path = common::tools::ConvertUriToPath(uri);
ExifData* ed = exif_data_new_from_file(file_path.c_str());
if (!ed) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Error reading exif from file",
#include "common/platform_enum.h"
#include "common/platform_exception.h"
#include "common/scope_exit.h"
+#include "common/tools.h"
namespace extension {
namespace metadata {
}
}
-std::string ltrim(const std::string& s) {
- ScopeLogger();
- std::string str = s;
- std::string::iterator i;
- for (i = str.begin(); i != str.end(); ++i) {
- if (!isspace(*i)) {
- break;
- }
- }
- str.erase(str.begin(), i);
- return str;
-}
-
-std::string convertUriToPath(const std::string& str) {
- const std::string URI_PREFIX = "file://";
- ScopeLogger();
- std::string path = ltrim(str);
- std::string prefix = path.substr(0, URI_PREFIX.size());
-
- if (prefix == URI_PREFIX) {
- return path.substr(URI_PREFIX.size());
- } else {
- return path;
- }
-}
-
-MetadataFileHandle::MetadataFileHandle(int id) : handle_(nullptr), id_(id), width_(0), height_(0), lyrics_num_(0) {
+MetadataFileHandle::MetadataFileHandle(int id)
+ : handle_(nullptr), id_(id), width_(0), height_(0), lyrics_num_(0) {
ScopeLogger();
}
PlatformResult MetadataFileHandle::Initialize(const std::string& uri) {
ScopeLogger();
- auto path = convertUriToPath(uri);
+ auto path = common::tools::ConvertUriToPath(uri);
int result = metadata_extractor_create(&handle_);
if (METADATA_EXTRACTOR_ERROR_NONE != result) {
}
void MetadataInstance::MetadataFileHandleGetThumbnailFrame(const picojson::value& args,
- picojson::object& out) {
+ picojson::object& out) {
ScopeLogger();
const std::string& uri = args.get("uri").get<std::string>();
const int id = static_cast<int>(args.get("id").get<double>());
}
}
-static std::string ltrim(const std::string& s) {
- ScopeLogger();
- std::string str = s;
- std::string::iterator i;
- for (i = str.begin(); i != str.end(); ++i) {
- if (!isspace(*i)) {
- break;
- }
- }
- if (i == str.end()) {
- str.clear();
- } else {
- str.erase(str.begin(), i);
- }
- return str;
-}
-
-static std::string convertUriToPath(const std::string& uri) {
- ScopeLogger();
- std::string result;
- std::string schema("file://");
- std::string str = ltrim(uri);
-
- std::string _schema = str.substr(0, schema.size());
- if (_schema == schema) {
- result = str.substr(schema.size());
- } else {
- result = str;
- }
-
- return result;
-}
-
PackageInstance::PackageInstance() {
ScopeLogger();
int callback_id = static_cast<int>(args.get("callbackId").get<double>());
const std::string& packageFileURI =
- convertUriToPath(args.get("packageFileURI").get<std::string>());
+ common::tools::ConvertUriToPath(args.get("packageFileURI").get<std::string>());
int progress_callback_id = static_cast<int>(args.get("progressCallbackId").get<double>());
const std::string real_path = common::FilesystemProvider::Create().GetRealPath(packageFileURI);