class Dbee::Providers::ActiveRecordProvider
Provider which leverages ActiveRecord and Arel for generating SQL.
Constants
- DEFAULT_COLUMN_PREFIX
- DEFAULT_TABLE_PREFIX
- VERSION
Attributes
column_alias_maker[R]
readable[R]
table_alias_maker[R]
Public Class Methods
new( readable: true, table_prefix: DEFAULT_TABLE_PREFIX, column_prefix: DEFAULT_COLUMN_PREFIX )
click to toggle source
# File lib/dbee/providers/active_record_provider.rb, line 28 def initialize( readable: true, table_prefix: DEFAULT_TABLE_PREFIX, column_prefix: DEFAULT_COLUMN_PREFIX ) @readable = readable @table_alias_maker = alias_maker(table_prefix) @column_alias_maker = alias_maker(column_prefix) end
Public Instance Methods
sql(schema, query)
click to toggle source
# File lib/dbee/providers/active_record_provider.rb, line 38 def sql(schema, query) ExpressionBuilder.new( schema, table_alias_maker, column_alias_maker ).to_sql(query) end
Private Instance Methods
alias_maker(prefix)
click to toggle source
# File lib/dbee/providers/active_record_provider.rb, line 48 def alias_maker(prefix) readable ? SafeAliasMaker.new : ObfuscatedAliasMaker.new(prefix) end