Class: Leetcoder::Download

Inherits:
Object
  • Object
show all
Includes:
Helpers::Logger, Helpers::Utils
Defined in:
lib/leetcoder/leetcoder/download.rb

Constant Summary

Constants included from Helpers::Utils

Helpers::Utils::LANGS_EXT

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Helpers::Logger

#log_message

Methods included from Helpers::Utils

#create_directory, #create_file, #lang_to_ext, #store_cookie

Constructor Details

#initialize(args) ⇒ Download

Returns a new instance of Download.



8
9
10
11
12
# File 'lib/leetcoder/leetcoder/download.rb', line 8

def initialize(args)
  @args = args
  @question_resource = QuestionsResource.new
  @root_directory = create_directory(args[:download_folder] || 'leetcode')
end

Class Method Details

.call(args = {}) ⇒ Object



14
15
16
# File 'lib/leetcoder/leetcoder/download.rb', line 14

def self.call(args = {})
  new(args).call
end

Instance Method Details

#callObject



18
19
20
21
22
23
24
25
26
# File 'lib/leetcoder/leetcoder/download.rb', line 18

def call
  Dir.chdir(@root_directory) do
    log_message(:initiate_download, dir: @root_directory)

    download_accepted_submissions

    log_message(:completed_download)
  end
end