Class: AffiliateWindow::ETL::Scheduler

Inherits:
Object
  • Object
show all
Defined in:
lib/affiliate_window/etl/scheduler.rb

Defined Under Namespace

Classes: Job

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(database:, last_n_days:) ⇒ Scheduler

Returns a new instance of Scheduler.



6
7
8
9
# File 'lib/affiliate_window/etl/scheduler.rb', line 6

def initialize(database:, last_n_days:)
  self.database = database
  self.last_n_days = last_n_days
end

Instance Attribute Details

#databaseObject

Returns the value of attribute database.



4
5
6
# File 'lib/affiliate_window/etl/scheduler.rb', line 4

def database
  @database
end

#last_n_daysObject

Returns the value of attribute last_n_days.



4
5
6
# File 'lib/affiliate_window/etl/scheduler.rb', line 4

def last_n_days
  @last_n_days
end

Instance Method Details

#jobsObject



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/affiliate_window/etl/scheduler.rb', line 11

def jobs
  jobs = []

  schedule_last_n_days(:daily_transactions, jobs)
  schedule_last_n_days(:daily_clicks, jobs)
  schedule_last_n_days(:daily_impressions, jobs)
  schedule_old_pending_transactions(jobs)
  schedule_merchants(jobs)

  jobs
end