Class: AffiliateWindow::ETL::Database

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

Defined Under Namespace

Classes: ClickStat, CommissionGroup, CommissionRange, ImpressionStat, Merchant, MerchantSector, Transaction, TransactionPart, TransactionProduct

Constant Summary collapse

MODELS =
{
  click_stat: ClickStat,
  commission_group: CommissionGroup,
  commission_range: CommissionRange,
  impression_stat: ImpressionStat,
  merchant: Merchant,
  merchant_sector: MerchantSector,
  transaction: Transaction,
  transaction_part: TransactionPart,
  transaction_product: TransactionProduct,
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(database_url) ⇒ Database

Returns a new instance of Database.



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

def initialize(database_url)
  self.database_url = database_url
end

Instance Attribute Details

#database_urlObject

Returns the value of attribute database_url.



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

def database_url
  @database_url
end

Instance Method Details

#connect!Object



10
11
12
# File 'lib/affiliate_window/etl/database.rb', line 10

def connect!
  ActiveRecord::Base.establish_connection(database_url)
end

#model(record_type) ⇒ Object



14
15
16
# File 'lib/affiliate_window/etl/database.rb', line 14

def model(record_type)
  MODELS.fetch(record_type)
end