diff options
Diffstat (limited to 'lib/arel/engines/sql/engine.rb')
-rw-r--r-- | lib/arel/engines/sql/engine.rb | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/lib/arel/engines/sql/engine.rb b/lib/arel/engines/sql/engine.rb deleted file mode 100644 index ab9dcb48b5..0000000000 --- a/lib/arel/engines/sql/engine.rb +++ /dev/null @@ -1,47 +0,0 @@ -module Arel - module Sql - class Engine - def initialize(ar = nil) - @ar = ar - end - - def connection - @ar && @ar.connection - end - - def adapter_name - @adapter_name ||= case (name = connection.adapter_name) - # map OracleEnanced adapter to Oracle - when /Oracle/ - 'Oracle' - else - name - end - end - - def create(relation) - primary_key_value = if relation.primary_key.blank? - nil - elsif relation.record.is_a?(Hash) - attribute = relation.record.detect { |attr, _| attr.name.to_s == relation.primary_key.to_s } - attribute && attribute.last.value - end - - connection.insert(relation.to_sql(false), nil, relation.primary_key, primary_key_value) - end - - def read(relation) - rows = connection.select_rows(relation.to_sql) - Array.new(rows, relation.attributes) - end - - def update(relation) - connection.update(relation.to_sql) - end - - def delete(relation) - connection.delete(relation.to_sql) - end - end - end -end |