module AuditTables

Constants

VERSION

Attributes

configuration[RW]

Public Class Methods

all_audit_tables() click to toggle source
# File lib/audit_tables.rb, line 32
def self.all_audit_tables
  tables = ActiveRecord::Base.connection.tables
  tables -= config.exclude_tables

  tables
end
build_audit_triggers_for(table_name) click to toggle source
# File lib/audit_tables.rb, line 39
def self.build_audit_triggers_for(table_name)
  AuditTables::BuildAuditTrigger.new(table_name.to_s).build
end
change_audit_table_for(table_name) click to toggle source
# File lib/audit_tables.rb, line 61
def self.change_audit_table_for(table_name)
  AuditTables::ChangeAuditTable.new(table_name.to_s).execute
end
check_for_audit_tables() click to toggle source
# File lib/audit_tables.rb, line 43
def self.check_for_audit_tables
  messages = []

  all_audit_tables.reject { |table| table.starts_with?('audit_') }.each do |table_name|
    messages << table_name unless all_audit_tables.include? "audit_#{table_name}"
  end

  messages
end
config() click to toggle source
# File lib/audit_tables.rb, line 23
def self.config
  self.configuration ||= Configuration.new
end
configure() { |configuration| ... } click to toggle source
# File lib/audit_tables.rb, line 27
def self.configure
  self.configuration ||= Configuration.new
  yield(configuration)
end
create_audit_table_for(table_name) click to toggle source
# File lib/audit_tables.rb, line 53
def self.create_audit_table_for(table_name)
  AuditTables::CreateNewAuditTable.new(table_name.to_s).build
end
create_audit_tables_for_existing_tables() click to toggle source
# File lib/audit_tables.rb, line 57
def self.create_audit_tables_for_existing_tables
  AuditTables::CreateAuditTablesForExistingTables.new(config.exclude_tables).process
end
rebuild_all_audit_triggers() click to toggle source
# File lib/audit_tables.rb, line 65
def self.rebuild_all_audit_triggers
  all_audit_tables.reject { |table| table.starts_with?('audit_') }.each do |table_name|
    build_audit_triggers_for(table_name)
  end
end