class Libis::RosettaChecker::FilesToIngestCleanupOptions

Attributes

command[RW]
dbpass[RW]
dburl[RW]
dbuser[RW]
delete[RW]
log_file[RW]
quiet[RW]
recursive[RW]
report[RW]
report_file[RW]

Public Class Methods

new(command) click to toggle source
# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 6
def initialize(command)
  self.command = command
  self.delete = false
  self.quiet = false
  self.log_file = nil
  self.recursive = false
  self.report = true
  default_report_file = "#{command.split(' ').last}-#{DateTime.now.strftime('%Y%m%d-%H%M%S')}.csv"
  self.report_file = default_report_file
  self.dburl = '//libis-db-rosetta:1551/ROSETTAP.kuleuven.be'
  self.dbuser = 'V2KU_REP00'
  self.dbpass = 'V2KU_REP00'
end

Public Instance Methods

define(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 21
def define(parser)
  parser.banner = "Usage: #{command} [options] [[r_options] [directory|[@]file] ...]"
  parser.separator ''
  parser.separator 'This tool will scan directories for files that are/are not ingested in Rosetta.'
  parser.separator ''
  parser.separator 'If a file name preceded with a \'@\' is given as an argument, the file is expected to be a'
  parser.separator 'text file with directory names - one directory per line.'
  parser.separator ''

  parser.separator 'The tool will compare the file sizes, MD5 checksums and file names with the information in the'
  parser.separator 'Rosetta database to determine if a possible match is found.'
  parser.separator 'with [r_options] (can be repeated in between directory/file inputs):'
  define_quiet parser
  define_logfile parser
  define_recursive parser
  parser.separator ''

  parser.separator 'with [options]:'
  define_report parser
  define_report_file parser
  # define_delete parser
  define_dbparams parser
end
define_dbparams(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 92
def define_dbparams(parser)
  parser.on '--db-url [URL]', "Database connection URL [#{self.dburl}]" do |url|
    self.dburl = url
  end
  parser.on '--db-user [USER]', "Database user name [#{self.dbuser}]" do |user|
    self.dbuser = user
  end
  parser.on '--db-pass [PASSWORD]', "Database password [#{self.dbpass}" do |pass|
    self.dbpass = pass
  end
end
define_delete(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 84
def define_delete(parser)
  parser.on '-D', '--[no-]delete',
            "Perform file deletes when file is ingested [#{self.delete}]" do |flag|
    self.delete = flag
  end
end
define_logfile(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 53
def define_logfile(parser)
  parser.on '-l', '--logfile [FILE]',
            "Send logging output to file - appends to existing file [#{self.log_file}]",
            '(re)set to empty string for no logging to file' do |file|
    self.log_file = file
  end
end
define_quiet(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 46
def define_quiet(parser)
  parser.on '-q', '--[no-]quiet', "Be quiet - no logging output on screen [#{self.quiet}]" do |flag|
    self.quiet = flag
  end
end
define_recursive(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 62
def define_recursive(parser)
  parser.on '-R', '--[no-]recursive', "Parse through subdirectories [#{self.recursive}]" do |flag|
    self.recursive = flag
  end
end
define_report(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 69
def define_report(parser)
  parser.on '--[no-]report', "Create a report file - overwrites existing file [#{self.report}]" do |flag|
    self.report = flag
  end
end
define_report_file(parser) click to toggle source

@param [OptionParser] parser

# File lib/libis/rosetta_checker/options/files_to_ingest_cleanup.rb, line 76
def define_report_file(parser)
  parser.on '-o', '--output-file [FILE]',
            "File name for the report, if enabled [#{self.report_file}]" do |file|
    self.report_file = file
  end
end