diff options
author | Lev Dragunov <l.dragunov@corp.mail.ru> | 2015-03-06 15:16:43 +0300 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:38:24 +0300 |
commit | 21d8c2650fcedb1e0babbb8fb6cbd8c2edc09082 (patch) | |
tree | 60021afc4e63c2480c78f26e806ad700562e288d /platform | |
parent | c30ae8eab34ab5de5e7684400f5e9032fa8f3736 (diff) |
Mkdir platfom method
Diffstat (limited to 'platform')
-rw-r--r-- | platform/platform.cpp | 9 | ||||
-rw-r--r-- | platform/platform.hpp | 3 | ||||
-rw-r--r-- | platform/platform_android.cpp | 5 | ||||
-rw-r--r-- | platform/platform_ios.mm | 9 | ||||
-rw-r--r-- | platform/platform_linux.cpp | 9 | ||||
-rw-r--r-- | platform/platform_mac.mm | 9 | ||||
-rw-r--r-- | platform/platform_qt.cpp | 5 | ||||
-rw-r--r-- | platform/platform_tizen.cpp | 8 | ||||
-rw-r--r-- | platform/platform_win.cpp | 7 |
9 files changed, 26 insertions, 38 deletions
diff --git a/platform/platform.cpp b/platform/platform.cpp index 40ba3db712..021fe99289 100644 --- a/platform/platform.cpp +++ b/platform/platform.cpp @@ -2,6 +2,7 @@ #include "../coding/sha2.hpp" #include "../coding/base64.hpp" +#include "../coding/file_name_utils.hpp" #include "../base/logging.hpp" @@ -93,3 +94,11 @@ string Platform::DeviceName() const { return OMIM_OS_NAME; } + +string Platform::WritablePathForFileIndexes(string const & country_name) const +{ + string dir = WritableDir() + country_name + my::GetNativeSeparator(); + if (!IsFileExistsByFullPath(dir)) + MkDir(dir); + return dir; +} diff --git a/platform/platform.hpp b/platform/platform.hpp index 6605e7b852..447886c671 100644 --- a/platform/platform.hpp +++ b/platform/platform.hpp @@ -66,6 +66,9 @@ public: /// @return resource dir (on some platforms it's differ from Writable dir) string ResourcesDir() const { return m_resourcesDir; } + /// Creates directory at filesystem + void MkDir(string const & directory_name) const; + /// @return path for directory with temporary files with slash at the end string TmpDir() const { return m_tmpDir; } /// @return full path to file in the temporary directory diff --git a/platform/platform_android.cpp b/platform/platform_android.cpp index 027ebfc7b2..a265d060ca 100644 --- a/platform/platform_android.cpp +++ b/platform/platform_android.cpp @@ -244,6 +244,11 @@ bool Platform::GetFileSizeByName(string const & fileName, uint64_t & size) const } } +void Platform::MkDir(string const & directory_name) const +{ + mkdir(directory_name.c_str(), 0755); +} + namespace { class SelfDeleteRoutine : public threads::IRoutine diff --git a/platform/platform_ios.mm b/platform/platform_ios.mm index 302013ab53..280212711a 100644 --- a/platform/platform_ios.mm +++ b/platform/platform_ios.mm @@ -3,7 +3,6 @@ #include "constants.hpp" #include "../coding/file_reader.hpp" -#include "../coding/file_name_utils.hpp" #include <sys/types.h> #include <sys/socket.h> @@ -50,13 +49,9 @@ Platform::Platform() [pool release]; } - -string Platform::WritablePathForFileIndexes(string const & country_name) const +void Platform::MkDir(string const & directory_name) const { - string dir = m_writableDir + country_name.c_str() + '/'; - if (!IsFileExistsByFullPath(dir)) - ::mkdir(dir.c_str(), 0755); - return dir; + ::mkdir(directory_name.c_str(), 0755); } void Platform::GetFilesByRegExp(string const & directory, string const & regexp, FilesList & res) diff --git a/platform/platform_linux.cpp b/platform/platform_linux.cpp index 52d054d4c8..f99bdb027f 100644 --- a/platform/platform_linux.cpp +++ b/platform/platform_linux.cpp @@ -2,7 +2,6 @@ #include "../base/logging.hpp" #include "../coding/file_reader.hpp" -#include "../coding/file_name_utils.hpp" #include <stdlib.h> #include <unistd.h> @@ -91,14 +90,6 @@ Platform::Platform() LOG(LDEBUG, ("Client ID:", UniqueClientId())); } -string Platform::WritablePathForFileIndexes(string const & country_name) const -{ - string dir = WritableDir() + country_name + my::GetNativeSeparator(); - if (!IsFileExistsByFullPath(dir)) - mkdir(dir.c_str(), 0755); - return dir; -} - int Platform::CpuCores() const { const long numCPU = sysconf(_SC_NPROCESSORS_ONLN); diff --git a/platform/platform_mac.mm b/platform/platform_mac.mm index cd5eea67c7..fcbdc6d081 100644 --- a/platform/platform_mac.mm +++ b/platform/platform_mac.mm @@ -78,15 +78,6 @@ Platform::Platform() [pool release]; } -string Platform::WritablePathForFileIndexes(string const & country_name) const -{ - - string dir = m_writableDir + country_name.c_str() + '/'; - if (!IsFileExistsByFullPath(dir)) - ::mkdir(dir.c_str(), 0755); - return dir; -} - int Platform::CpuCores() const { int mib[2], numCPU = 0; diff --git a/platform/platform_qt.cpp b/platform/platform_qt.cpp index 24e73e6f76..9a82b2ee08 100644 --- a/platform/platform_qt.cpp +++ b/platform/platform_qt.cpp @@ -56,6 +56,11 @@ int Platform::VideoMemoryLimit() const return 20 * 1024 * 1024; } +void Platform::MkDir(string const & directory_name) const +{ + QDir().mkdir(directory_name.c_str()); +} + extern Platform & GetPlatform() { diff --git a/platform/platform_tizen.cpp b/platform/platform_tizen.cpp index 47a8f01b60..12d15da2fe 100644 --- a/platform/platform_tizen.cpp +++ b/platform/platform_tizen.cpp @@ -10,7 +10,6 @@ #include <sys/types.h> #include "../coding/file_reader.hpp" -#include "../coding/file_name_utils.hpp" #include "../base/logging.hpp" @@ -44,12 +43,9 @@ Platform::Platform() m_flags[HAS_ROUTING] = true; } -string Platform::WritablePathForFileIndexes(string const & country_name) const +void Platform::MkDir(string const & directory_name) const { - string dir = WritableDir() + country_name + my::GetNativeSeparator(); - if (!IsFileExistsByFullPath(dir)) - Tizen::Io::Directory::Create(dir.c_str(), true); - return dir; + Tizen::Io::Directory::Create(directory_name.c_str(), true); } int Platform::CpuCores() const diff --git a/platform/platform_win.cpp b/platform/platform_win.cpp index ddddc4ebfa..271a5f1a07 100644 --- a/platform/platform_win.cpp +++ b/platform/platform_win.cpp @@ -4,7 +4,6 @@ #include "../base/logging.hpp" #include "../coding/file_writer.hpp" -#include "../coding/file_name_utils.hpp" #include "../std/windows.hpp" #include "../std/bind.hpp" @@ -87,12 +86,6 @@ Platform::Platform() LOG(LDEBUG, ("Settings Directory:", m_settingsDir)); } -string Platform::WritablePathForFileIndexes(string const & country_name) const -{ - string dir = WritableDir() + country_name + my::GetNativeSeparator(); - return dir; -} - bool Platform::IsFileExistsByFullPath(string const & filePath) { return ::GetFileAttributesA(filePath.c_str()) != INVALID_FILE_ATTRIBUTES; |