Class: Storing::Postgres::Adaptor

Inherits:
AbstractAdaptor show all
Defined in:
lib/storing/postgres/adaptor.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(database) ⇒ Adaptor

Returns a new instance of Adaptor.



13
14
15
# File 'lib/storing/postgres/adaptor.rb', line 13

def initialize database
	@database = database
end

Instance Attribute Details

#databaseObject (readonly)

Returns the value of attribute database.



7
8
9
# File 'lib/storing/postgres/adaptor.rb', line 7

def database
  @database
end

Instance Method Details

#connect(*args) ⇒ Object



9
10
11
# File 'lib/storing/postgres/adaptor.rb', line 9

def connect *args
	new Sequel.postgres(*args)
end

#delete(table_name, conditions = {}) ⇒ Object



33
34
35
# File 'lib/storing/postgres/adaptor.rb', line 33

def delete table_name, conditions={}
	database[table_name].where(conditions).delete
end

#insert(table_name, params = {}) ⇒ Object



25
26
27
# File 'lib/storing/postgres/adaptor.rb', line 25

def insert table_name, params={}
	database[table_name].insert(params)
end

#query(query_object) ⇒ Object



17
18
19
# File 'lib/storing/postgres/adaptor.rb', line 17

def query query_object
	database[query_object.query(database)].all
end

#select(table_name, conditions = {}) ⇒ Object



21
22
23
# File 'lib/storing/postgres/adaptor.rb', line 21

def select table_name, conditions={}
	database[table_name].where(conditions).all
end

#transaction(&block) ⇒ Object



37
38
39
# File 'lib/storing/postgres/adaptor.rb', line 37

def transaction &block
	database.transaction &block
end

#update(table_name, params = {}, conditions = {}) ⇒ Object



29
30
31
# File 'lib/storing/postgres/adaptor.rb', line 29

def update table_name, params={}, conditions={}
	database[table_name].where(conditions).update(params)
end