Class: PersistenceAdapter
- Inherits:
-
Object
- Object
- PersistenceAdapter
show all
- Defined in:
- lib/active_repository/adapters/persistence_adapter.rb
Class Method Summary
collapse
-
.all(klass) ⇒ Object
-
.create(klass, attributes) ⇒ Object
-
.delete(klass, id) ⇒ Object
-
.delete_all(klass) ⇒ Object
-
.exists?(klass, id) ⇒ Boolean
-
.find(klass, id) ⇒ Object
-
.first(klass) ⇒ Object
-
.get_adapter(klass) ⇒ Object
-
.last(klass) ⇒ Object
-
.update_attribute(klass, id, key, value) ⇒ Object
-
.update_attributes(klass, id, attributes) ⇒ Object
-
.where(klass, args) ⇒ Object
Instance Method Summary
collapse
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(sym, *args, &block) ⇒ Object
65
66
67
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 65
def method_missing(sym, *args, &block)
get_adapter(args.first).send(sym, args)
end
|
Class Method Details
.all(klass) ⇒ Object
20
21
22
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 20
def all(klass)
get_adapter(klass).all(klass)
end
|
.create(klass, attributes) ⇒ Object
24
25
26
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 24
def create(klass, attributes)
get_adapter(klass).create(klass, attributes)
end
|
.delete(klass, id) ⇒ Object
28
29
30
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 28
def delete(klass, id)
get_adapter(klass).delete(klass, id)
end
|
.delete_all(klass) ⇒ Object
32
33
34
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 32
def delete_all(klass)
get_adapter(klass).delete_all(klass)
end
|
.exists?(klass, id) ⇒ Boolean
36
37
38
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 36
def exists?(klass, id)
get_adapter(klass).exists?(klass, id)
end
|
.find(klass, id) ⇒ Object
40
41
42
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 40
def find(klass, id)
get_adapter(klass).find(klass, id)
end
|
.first(klass) ⇒ Object
44
45
46
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 44
def first(klass)
get_adapter(klass).first(klass)
end
|
.get_adapter(klass) ⇒ Object
7
8
9
10
11
12
13
14
15
16
17
18
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 7
def get_adapter(klass)
modules = klass.get_model_class.included_modules.map(&:to_s)
if modules.include?("Mongoid::Document")
MongoidAdapter
elsif modules.map(&:to_s).include?("DataMapper::Resource")
DataMapperAdapter
else
DefaultAdapter
end
end
|
.last(klass) ⇒ Object
48
49
50
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 48
def last(klass)
get_adapter(klass).last(klass)
end
|
.update_attribute(klass, id, key, value) ⇒ Object
52
53
54
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 52
def update_attribute(klass, id, key, value)
get_adapter(klass).update_attribute(klass, id, key, value)
end
|
.update_attributes(klass, id, attributes) ⇒ Object
56
57
58
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 56
def update_attributes(klass, id, attributes)
get_adapter(klass).update_attributes(klass, id, attributes)
end
|
.where(klass, args) ⇒ Object
60
61
62
|
# File 'lib/active_repository/adapters/persistence_adapter.rb', line 60
def where(klass, args)
get_adapter(klass).where(klass, args)
end
|