diff options
author | ipknHama <ipknhama@gmail.com> | 2015-02-20 13:44:46 +0900 |
---|---|---|
committer | ipknHama <ipknhama@gmail.com> | 2015-02-20 13:44:46 +0900 |
commit | 48811ce4a47200567796730d7467526683f265d7 (patch) | |
tree | f54890849a58160c39fc67073316c1349463d4f6 /include/datetime.h | |
parent | 5507e98ce25f8468e37652b58a3512f40869af99 (diff) | |
download | crow-48811ce4a47200567796730d7467526683f265d7.tar.gz crow-48811ce4a47200567796730d7467526683f265d7.zip |
remove thread_local variables
* move thread_local variables forget_cached_date_str, timer_queue
into each threads local stack
Diffstat (limited to 'include/datetime.h')
-rw-r--r-- | include/datetime.h | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/include/datetime.h b/include/datetime.h deleted file mode 100644 index 0a47379..0000000 --- a/include/datetime.h +++ /dev/null @@ -1,77 +0,0 @@ -#pragma once - -#include <string> -#include <boost/date_time/local_time/local_time.hpp> -#include <boost/filesystem.hpp> - -namespace crow -{ - // code from http://stackoverflow.com/questions/2838524/use-boost-date-time-to-parse-and-create-http-dates - class DateTime - { - public: - DateTime() - : m_dt(boost::local_time::local_sec_clock::local_time(boost::local_time::time_zone_ptr())) - { - } - DateTime(const std::string& path) - : DateTime() - { - from_file(path); - } - - // return datetime string - std::string str() - { - static const std::locale locale_(std::locale::classic(), new boost::local_time::local_time_facet("%a, %d %b %Y %H:%M:%S GMT") ); - std::string result; - try - { - std::stringstream ss; - ss.imbue(locale_); - ss << m_dt; - result = ss.str(); - } - catch (std::exception& e) - { - std::cerr << "Exception: " << e.what() << std::endl; - } - return result; - } - - // update datetime from file mod date - std::string from_file(const std::string& path) - { - try - { - boost::filesystem::path p(path); - boost::posix_time::ptime pt = boost::posix_time::from_time_t( - boost::filesystem::last_write_time(p)); - m_dt = boost::local_time::local_date_time(pt, boost::local_time::time_zone_ptr()); - } - catch (std::exception& e) - { - std::cout << "Exception: " << e.what() << std::endl; - } - return str(); - } - - // parse datetime string - void parse(const std::string& dt) - { - static const std::locale locale_(std::locale::classic(), new boost::local_time::local_time_facet("%a, %d %b %Y %H:%M:%S GMT") ); - std::stringstream ss(dt); - ss.imbue(locale_); - ss >> m_dt; - } - - // boolean equal operator - friend bool operator==(const DateTime& left, const DateTime& right) - { - return (left.m_dt == right.m_dt); - } - - private: - boost::local_time::local_date_time m_dt; - }; -} |