Class: DataMapper::Adapters::Sql::Commands::TableExistsCommand

Inherits:
Object
  • Object
show all
Defined in:
lib/data_mapper/adapters/sql/commands/table_exists_command.rb

Instance Method Summary collapse

Constructor Details

#initialize(adapter, klass_or_name) ⇒ TableExistsCommand

Returns a new instance of TableExistsCommand.



8
9
10
# File 'lib/data_mapper/adapters/sql/commands/table_exists_command.rb', line 8

def initialize(adapter, klass_or_name)
  @adapter, @klass_or_name = adapter, klass_or_name
end

Instance Method Details

#callObject

Raises:

  • (NotImplementedError)


24
25
26
# File 'lib/data_mapper/adapters/sql/commands/table_exists_command.rb', line 24

def call
  raise NotImplementedError.new
end

#table_nameObject



12
13
14
15
16
17
18
# File 'lib/data_mapper/adapters/sql/commands/table_exists_command.rb', line 12

def table_name
  @table_name || @table_name = case @klass_or_name
  when String then @adapter.quote_value(@klass_or_name)
  when Class then @adapter.quote_value(@adapter[@klass_or_name].name)
  else raise ArgumentError.new('klass_or_name must be a mapped-class or a table name')
  end
end

#to_sqlObject



20
21
22
# File 'lib/data_mapper/adapters/sql/commands/table_exists_command.rb', line 20

def to_sql
  "SHOW TABLES LIKE #{table_name}"
end