Class: Slipcover::Wrapper
- Inherits:
-
Object
- Object
- Slipcover::Wrapper
- Defined in:
- lib/slipcover/wrapper.rb
Instance Attribute Summary collapse
-
#database_name ⇒ Object
readonly
Returns the value of attribute database_name.
-
#view_dir ⇒ Object
readonly
Returns the value of attribute view_dir.
-
#view_name ⇒ Object
readonly
Returns the value of attribute view_name.
Instance Method Summary collapse
- #database ⇒ Object
- #design_document ⇒ Object
-
#initialize(opts) ⇒ Wrapper
constructor
A new instance of Wrapper.
- #lookup(opts = {}) ⇒ Object
- #query ⇒ Object
Constructor Details
#initialize(opts) ⇒ Wrapper
Returns a new instance of Wrapper.
5 6 7 8 9 |
# File 'lib/slipcover/wrapper.rb', line 5 def initialize(opts) @database_name = opts[:database_name] @view_name = opts[:view_name] @view_dir = opts[:view_dir] || Slipcover::Config.view_dir end |
Instance Attribute Details
#database_name ⇒ Object (readonly)
Returns the value of attribute database_name.
3 4 5 |
# File 'lib/slipcover/wrapper.rb', line 3 def database_name @database_name end |
#view_dir ⇒ Object (readonly)
Returns the value of attribute view_dir.
3 4 5 |
# File 'lib/slipcover/wrapper.rb', line 3 def view_dir @view_dir end |
#view_name ⇒ Object (readonly)
Returns the value of attribute view_name.
3 4 5 |
# File 'lib/slipcover/wrapper.rb', line 3 def view_name @view_name end |
Instance Method Details
#database ⇒ Object
29 30 31 |
# File 'lib/slipcover/wrapper.rb', line 29 def database @database ||= Slipcover::Database.new("#{database_name}") end |
#design_document ⇒ Object
25 26 27 |
# File 'lib/slipcover/wrapper.rb', line 25 def design_document @design_document ||= Slipcover::DesignDocument.new(database.name, view_dir) end |
#lookup(opts = {}) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/slipcover/wrapper.rb', line 11 def lookup(opts={}) query.all(opts).map(&:attributes) rescue Slipcover::HttpAdapter::DBNotFound database.create retry rescue Slipcover::HttpAdapter::DocumentNotFound # no design document design_document.save retry end |
#query ⇒ Object
21 22 23 |
# File 'lib/slipcover/wrapper.rb', line 21 def query @query ||= Slipcover::Query.new(design_document, view_name) end |