aboutsummaryrefslogtreecommitdiffstats
path: root/lib/active_relation/sessions/session.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/active_relation/sessions/session.rb')
-rw-r--r--lib/active_relation/sessions/session.rb38
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/active_relation/sessions/session.rb b/lib/active_relation/sessions/session.rb
new file mode 100644
index 0000000000..d6e2ae7169
--- /dev/null
+++ b/lib/active_relation/sessions/session.rb
@@ -0,0 +1,38 @@
+require 'singleton'
+
+module ActiveRelation
+ class Session
+ include Singleton
+
+ module CRUD
+ def connection
+ ActiveRecord::Base.connection
+ end
+
+ def create(insert)
+ connection.insert(insert.to_sql)
+ end
+
+ def read(select)
+ connection.select_all(select.to_sql)
+ end
+
+ def update(update)
+ connection.update(update.to_sql)
+ end
+
+ def delete(delete)
+ connection.delete(delete.to_sql)
+ end
+ end
+ include CRUD
+
+ module Transactions
+ end
+ include Transactions
+
+ module UnitOfWork
+ end
+ include UnitOfWork
+ end
+end \ No newline at end of file