Sha256: daef75e2aec0d60ffb69fa6e45ce550fd39c4a7c0b424d5b33c1c6a68bdc07c0

Contents?: true

Size: 1.41 KB

Versions: 5

Compression:

Stored size: 1.41 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('-q', '--quiet',
          'Activate quiet mode, will only print errors') do
    options['quiet'] = true
  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)
IO.open STDOUT.fileno do |ios|
  case options['action']
  when :sync
    fetcher.fetch(options['concurrency'], options['quiet'])
  when :show
    conf.show(ios)
  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(ios, one_month_ago, six_months_ago, false)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rrimm-0.9.0 bin/rrimm
rrimm-0.7.2 bin/rrimm
rrimm-0.7.1 bin/rrimm
rrimm-0.6.0 bin/rrimm
rrimm-0.5.0 bin/rrimm