Sha256: 4ab157523fca02eb23586be13e0de8d52caa327f4b81cbcbf852050a695ce5d0

Contents?: true

Size: 1.21 KB

Versions: 1

Compression:

Stored size: 1.21 KB

Contents

#!/bin/env ruby

begin
  load 'lib/rrimm.rb'
rescue LoadError
  require 'rrimm'
end

require 'optparse'

options = {
  'action' => :sync,
  'conf_file' => File.join(ENV['HOME'], '.config', 'rrimm', 'rrimm.rb'),
}

OptionParser.new do |opts|
  opts.banner = "Usage: rrimm "
  opts.on('-c', '--config [file]',
          'configuration file used by rrimm') do |conf_file|
    options['conf_file'] = conf_file
  end

  opts.on('-C', '--concurrency N',
          'concurrency level to fetch feeds. Default 1') do |c|
    options['concurrency'] = c.to_i
  end

  opts.on('-a', '--action [action]', [:sync, :show, :status],
          'Specify what to do: "sync" feeds, "show" config, display feed "status"') do |action|
    options['action'] = action
  end

  opts.on_tail("-h", "--help", "You know what it does") do
    puts opts
    exit
  end
end.parse!(ARGV)



conf = RRImm::Config.new
conf.load(options['conf_file'])

fetcher = RRImm::Fetcher.new(conf)

case options['action']
when :sync
  fetcher.fetch(options['concurrency'])
when :show
  conf.show
when :status
  one_month = 30 * 86400
  one_month_ago = Time.now.to_i - one_month
  six_months_ago = Time.now.to_i - 6 * one_month

  conf.status(one_month_ago, six_months_ago, false)
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rrimm-0.4.0 bin/rrimm