lib/echi-converter.rb in echi-converter-0.2.1 vs lib/echi-converter.rb in echi-converter-0.3.0
- old
+ new
@@ -13,14 +13,14 @@
end
module EchiConverter
def connect_database
- databaseconfig = @workingdirectory + '/../config/database.yml'
- dblogfile = @workingdirectory + '/../log/database.log'
- ActiveRecord::Base.logger = Logger.new(dblogfile, @config["log_number"], @config["log_length"])
- case @config["log_level"]
+ databaseconfig = $workingdir + '/../config/database.yml'
+ dblogfile = $workingdir + '/../log/database.log'
+ ActiveRecord::Base.logger = Logger.new(dblogfile, $config["log_number"], $config["log_length"])
+ case $config["log_level"]
when 'FATAL'
ActiveRecord::Base.logger.level = Logger::FATAL
when 'ERROR'
ActiveRecord::Base.logger.level = Logger::ERROR
when 'WARN'
@@ -39,13 +39,13 @@
end
end
#Method to open our application log
def initiate_logger
- logfile = @workingdirectory + '/../log/application.log'
- @log = Logger.new(logfile, @config["log_number"], @config["log_length"])
- case @config["log_level"]
+ logfile = $workingdir + '/../log/application.log'
+ @log = Logger.new(logfile, $config["log_number"], $config["log_length"])
+ case $config["log_level"]
when 'FATAL'
@log.level = Logger::FATAL
when 'ERROR'
@log.level = Logger::ERROR
when 'WARN'
@@ -58,14 +58,14 @@
end
#Method to send alert emails
def send_email_alert reason
begin
- Net::SMTP.start(@config["smtp_server"], @config["smtp_port"]) do |smtp|
- smtp.open_message_stream('donotreply@echi-converter.rubyforge.org', [@config["alert_email_address"]]) do |f|
+ Net::SMTP.start($config["smtp_server"], $config["smtp_port"]) do |smtp|
+ smtp.open_message_stream('donotreply@echi-converter.rubyforge.org', [$config["alert_email_address"]]) do |f|
f.puts "From: donotreply@echi-converter.rubyforge.org"
- f.puts "To: " + @config['alert_email_address']
+ f.puts "To: " + $config['alert_email_address']
f.puts "Subject: ECHI-Converter Failure"
case reason
when "DATABASE"
f.puts "Failed to connect to the database."
when "FTP"
@@ -138,21 +138,21 @@
end
#Mehtod that performs the conversions
def convert_binary_file filename
#Open the file to process
- echi_file = @workingdirectory + "/../files/to_process/" + filename
+ echi_file = $workingdir + "/../files/to_process/" + filename
@binary_file = open(echi_file,"rb")
@log.debug "File size: " + @binary_file.stat.size.to_s
#Read header information first
filenumber = dump_binary 'int', 4
@log.debug "File_number " + filenumber.to_s
fileversion = dump_binary 'int', 4
@log.debug "Version " + fileversion.to_s
- if @config["echi_process_log"] == "Y"
+ if $config["echi_process_log"] == "Y"
#Log the file
echi_log = EchiLog.new
echi_log.filename = filename
echi_log.filenumber = filenumber
echi_log.version = fileversion
@@ -206,11 +206,11 @@
end
#Move the file to the processed directory
FileUtils.mv(echi_file, @processeddirectory)
- if @config["echi_process_log"] == "Y"
+ if $config["echi_process_log"] == "Y"
#Finish logging the details on the file
echi_log.records = @record_cnt
echi_log.processed_at = Time.now
echi_log.save
end
@@ -219,13 +219,13 @@
end
def connect_ftpsession
#Open ftp connection
begin
- if @config["echi_connect_type"] == 'ftp'
- ftp_session = Net::FTP.new(@config["echi_host"])
- ftp_session.login @config["echi_username"], @config["echi_password"]
+ if $config["echi_connect_type"] == 'ftp'
+ ftp_session = Net::FTP.new($config["echi_host"])
+ ftp_session.login $config["echi_username"], $config["echi_password"]
@log.info "Successfully connected to the ECHI FTP server"
else
#Stub for possible SSH support in the future
#session = Net::SSH.start(config["echi_host"], config["echi_port"], config["echi_username"], config["echi_password"])
@log.fatal "SSH currently not supported, please use FTP for accessing the ECHI server"
@@ -248,29 +248,29 @@
ftp_session = connect_ftpsession
if ftp_session == -1
sleep 5
end
attempts += 1
- if @config["echi_ftp_retry"] == attempts
+ if $config["echi_ftp_retry"] == attempts
ftp_session = 0
end
end
if ftp_session != 0
begin
- if @config["echi_ftp_directory"] != nil
- ftp_session.chdir(@config["echi_ftp_directory"])
+ if $config["echi_ftp_directory"] != nil
+ ftp_session.chdir($config["echi_ftp_directory"])
end
files = ftp_session.list('chr*')
file_cnt = 0
files.each do | file |
#ACTION: Need to detect which OS we are running on and then parse the ftp data appropriately
file_data = file.split(' ')
remote_filename = file_data[8]
- local_filename = @workingdirectory + '/../files/to_process/' + remote_filename
+ local_filename = $workingdir + '/../files/to_process/' + remote_filename
ftp_session.getbinaryfile(remote_filename, local_filename)
files_to_process[file_cnt] = remote_filename
- if @config["echi_ftp_delete"] == 'Y'
+ if $config["echi_ftp_delete"] == 'Y'
begin
ftp_session.delete(remote_filename)
rescue => err
@log.fatal err
end
@@ -285,13 +285,13 @@
return files_to_process
end
end
def process_ascii filename
- echi_file = @workingdirectory + "/../files/to_process/" + filename
+ echi_file = $workingdir + "/../files/to_process/" + filename
- if @config["echi_process_log"] == "Y"
+ if $config["echi_process_log"] == "Y"
#Log the file
echi_log = EchiLog.new
echi_log.filename = filename
#echi_log.filenumber = filenumber
#echi_log.version = fileversion
@@ -331,16 +331,16 @@
end
#Move the file to the processed directory
FileUtils.mv(echi_file, @processeddirectory)
- if @config["echi_process_log"] == "Y"
+ if $config["echi_process_log"] == "Y"
#Finish logging the details on the file
echi_log.records = @record_cnt
echi_log.processed_at = Time.now
echi_log.save
end
return @record_cnt
end
-require @workingdirectory + '/echi-converter/version.rb'
+require $workingdir + '/echi-converter/version.rb'