diff options
author | Chris Wilson <chris+github@qwirx.com> | 2010-02-24 20:12:00 +0000 |
---|---|---|
committer | Chris Wilson <chris+github@qwirx.com> | 2010-02-24 20:12:00 +0000 |
commit | aaf98b770db720d8a866e135b7cf39ab144032b1 (patch) | |
tree | b34b572f0e282dbe21fefed242d7a34845dbef53 /bin/bbackupquery/BackupQueries.cpp | |
parent | aa81329d641804297ef07f9910ad2add684ec40a (diff) |
Add method to get updated modification time of
BackupClientFileAttributes.
Add listing of attribute modification time to bbackupquery "list -t"
command.
Diffstat (limited to 'bin/bbackupquery/BackupQueries.cpp')
-rw-r--r-- | bin/bbackupquery/BackupQueries.cpp | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/bin/bbackupquery/BackupQueries.cpp b/bin/bbackupquery/BackupQueries.cpp index 15257fc3..f0433ae2 100644 --- a/bin/bbackupquery/BackupQueries.cpp +++ b/bin/bbackupquery/BackupQueries.cpp @@ -435,6 +435,22 @@ void BackupQueries::CommandList(const std::vector<std::string> &args, const bool List(rootDir, listRoot, opts, true /* first level to list */); } +static std::string GetTimeString(BackupStoreDirectory::Entry& en, + bool useLocalTime) +{ + std::ostringstream out; + out << BoxTimeToISO8601String(en.GetModificationTime(), useLocalTime); + + if(en.HasAttributes()) + { + const StreamableMemBlock &storeAttr(en.GetAttributes()); + BackupClientFileAttributes attr(storeAttr); + out << "~" << BoxTimeToISO8601String(attr.GetModificationTime(), + useLocalTime); + } + + return out.str(); +} // -------------------------------------------------------------------------- // @@ -534,17 +550,13 @@ void BackupQueries::List(int64_t DirID, const std::string &rListRoot, const bool if(opts[LIST_OPTION_TIMES_UTC]) { // Show UTC times... - std::string time = BoxTimeToISO8601String( - en->GetModificationTime(), false); - printf("%s ", time.c_str()); + printf("%s ", GetTimeString(*en, false).c_str()); } if(opts[LIST_OPTION_TIMES_LOCAL]) { // Show local times... - std::string time = BoxTimeToISO8601String( - en->GetModificationTime(), true); - printf("%s ", time.c_str()); + printf("%s ", GetTimeString(*en, true).c_str()); } if(opts[LIST_OPTION_DISPLAY_HASH]) |