Show
Ignore:
Timestamp:
02/22/08 09:11:40 (4 years ago)
Author:
rakshasa
Message:

* Added system.time{,_seconds,_usec} commands.

* Cleaned up XMLRPC handling and added support for empty targets so it
will handle print and cat properly.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/rtorrent/src/command_ui.cc

    r1038 r1039  
    146146 
    147147torrent::Object 
    148 apply_to_date(const torrent::Object& rawArgs) { 
     148apply_to_time(int flags, const torrent::Object& rawArgs) { 
     149  std::tm *u; 
    149150  time_t t = (uint64_t)rawArgs.as_value(); 
    150   std::tm *u = std::gmtime(&t); 
     151 
     152  if (flags & 0x1) 
     153    u = std::localtime(&t); 
     154  else 
     155    u = std::gmtime(&t); 
    151156   
    152157  if (u == NULL) 
     
    154159 
    155160  char buffer[11]; 
    156   snprintf(buffer, 11, "%02u/%02u/%04u", u->tm_mday, (u->tm_mon + 1), (1900 + u->tm_year)); 
    157    
    158   return std::string(buffer); 
    159 } 
    160  
    161 torrent::Object 
    162 apply_to_time(const torrent::Object& rawArgs) { 
    163   time_t t = (uint64_t)rawArgs.as_value(); 
    164   std::tm *u = std::gmtime(&t); 
    165    
    166   if (u == NULL) 
    167     return torrent::Object(); 
    168  
    169   char buffer[9]; 
    170   snprintf(buffer, 9, "%2d:%02d:%02d", u->tm_hour, u->tm_min, u->tm_sec); 
     161 
     162  if (flags & 0x2) 
     163    snprintf(buffer, 11, "%02u/%02u/%04u", u->tm_mday, (u->tm_mon + 1), (1900 + u->tm_year)); 
     164  else 
     165    snprintf(buffer, 9, "%2d:%02d:%02d", u->tm_hour, u->tm_min, u->tm_sec); 
    171166 
    172167  return std::string(buffer); 
     
    312307  ADD_ANY_NONE("branch",                rak::bind_ptr_fn(&apply_if, 1)); 
    313308 
    314   ADD_COMMAND_VALUE("to_date",          rak::ptr_fn(&apply_to_date)); 
    315   ADD_COMMAND_VALUE("to_time",          rak::ptr_fn(&apply_to_time)); 
     309  ADD_COMMAND_VALUE("to_gm_time",       rak::bind_ptr_fn(&apply_to_time, 0)); 
     310  ADD_COMMAND_VALUE("to_gm_date",       rak::bind_ptr_fn(&apply_to_time, 0x2)); 
     311  ADD_COMMAND_VALUE("to_time",          rak::bind_ptr_fn(&apply_to_time, 0x1)); 
     312  ADD_COMMAND_VALUE("to_date",          rak::bind_ptr_fn(&apply_to_time, 0x1 | 0x2)); 
    316313  ADD_COMMAND_VALUE("to_elapsed_time",  rak::ptr_fn(&apply_to_elapsed_time)); 
    317314  ADD_COMMAND_VALUE("to_kb",            rak::ptr_fn(&apply_to_kb));