Method: TheFox::Timr::Command::LogCommand#initialize
- Defined in:
- lib/timr/command/log_command.rb
#initialize(argv = Array.new) ⇒ LogCommand
Returns a new instance of LogCommand.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/timr/command/log_command.rb', line 20 def initialize(argv = Array.new) super() @help_opt = false @from_opt = nil @to_opt = nil @start_date = nil @end_date = nil @start_time = nil @end_time = nil loop_c = 0 # Limit the loop. while loop_c < 1024 && argv.length > 0 loop_c += 1 arg = argv.shift case arg when '-h', '--help' @help_opt = true when '-s', '--from' @from_opt = Time.parse(argv.shift) when '-e', '--to' @to_opt = Time.parse(argv.shift) when '-d', '--day' @from_opt, @to_opt = DateTimeHelper.parse_day_argv(argv) when '-m', '--month' @from_opt, @to_opt = DateTimeHelper.parse_month_argv(argv) when '-y', '--year' @from_opt, @to_opt = DateTimeHelper.parse_year_argv(argv) when '-a', '--all' @from_opt = Time.parse('1970-01-01 00:00:00') @to_opt = Time.parse('2099-12-31 23:59:59') when '--sd', '--start-date' @start_date = Time.parse(argv.shift) when '--ed', '--end-date' @end_date = Time.parse(argv.shift) when '--st', '--start-time' @start_time = Time.parse(argv.shift) when '--et', '--end-time' @end_time = Time.parse(argv.shift) else raise LogCommandError, "Unknown argument '#{arg}'. See 'timr log --help'." end end @daytime_filter = false if @start_date && @end_date && @start_time && @end_time @from_opt = Time.parse("#{@start_date.strftime('%F')} #{@start_time.strftime('%T')}") @to_opt = Time.parse("#{@end_date.strftime('%F')} #{@end_time.strftime('%T')}") @daytime_filter = true end today = Date.today unless @from_opt @from_opt = Time.new(today.year, today.month, today.day, 0, 0, 0) end unless @to_opt @to_opt = Time.new(today.year, today.month, today.day, 23, 59, 59) end @filter_options = {:from => @from_opt, :to => @to_opt} end |