class FBO::RemoteFile

Constants

FTP_SERVER
TMP_DIR

Public Class Methods

for_date(date, options = {}) click to toggle source
# File lib/fbo/remote_file.rb, line 10
def for_date(date, options = {})
  filename = filename_for_date(date)
  FBO::RemoteFile.new(filename, options)
end
new(filename, options = {}) click to toggle source
# File lib/fbo/remote_file.rb, line 16
def initialize(filename, options = {})
  @filename = filename
  @tmp_dir = options[:tmp_dir] || TMP_DIR
  @file = fetch_file(filename)
end

Protected Instance Methods

fetch_file(filename) click to toggle source
# File lib/fbo/remote_file.rb, line 24
def fetch_file(filename)
  Dir.mkdir(@tmp_dir) unless Dir.exist?(@tmp_dir)
  tmp_filename = ::File.join(@tmp_dir, filename)
  ftp = Net::FTP.new(FTP_SERVER)
  ftp.login
  ftp.getbinaryfile(filename, tmp_filename)
  ftp.close
  ::File.new(tmp_filename)
end