Class: RelaxDB::DesignDocument
- Inherits:
-
Object
- Object
- RelaxDB::DesignDocument
- Defined in:
- lib/relaxdb/design_doc.rb
Class Method Summary collapse
Instance Method Summary collapse
- #add_map_view(view_name, function) ⇒ Object
- #add_reduce_view(view_name, function) ⇒ Object
- #add_validation_func(function) ⇒ Object
- #add_view(view_name, type, function) ⇒ Object
- #destroy! ⇒ Object
-
#initialize(client_class, data) ⇒ DesignDocument
constructor
A new instance of DesignDocument.
- #save ⇒ Object
Constructor Details
#initialize(client_class, data) ⇒ DesignDocument
Returns a new instance of DesignDocument.
5 6 7 8 |
# File 'lib/relaxdb/design_doc.rb', line 5 def initialize(client_class, data) @client_class = client_class @data = data end |
Class Method Details
.get(client_class) ⇒ Object
37 38 39 40 41 42 43 44 45 |
# File 'lib/relaxdb/design_doc.rb', line 37 def self.get(client_class) begin database = RelaxDB.db resp = database.get("_design/#{client_class}") DesignDocument.new(client_class, JSON.parse(resp.body)) rescue HTTP_404 DesignDocument.new(client_class, {"_id" => "_design/#{client_class}"} ) end end |
Instance Method Details
#add_map_view(view_name, function) ⇒ Object
10 11 12 |
# File 'lib/relaxdb/design_doc.rb', line 10 def add_map_view(view_name, function) add_view(view_name, "map", function) end |
#add_reduce_view(view_name, function) ⇒ Object
14 15 16 |
# File 'lib/relaxdb/design_doc.rb', line 14 def add_reduce_view(view_name, function) add_view(view_name, "reduce", function) end |
#add_validation_func(function) ⇒ Object
18 19 20 21 |
# File 'lib/relaxdb/design_doc.rb', line 18 def add_validation_func(function) @data["validate_doc_update"] = function self end |
#add_view(view_name, type, function) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/relaxdb/design_doc.rb', line 23 def add_view(view_name, type, function) @data["views"] ||= {} @data["views"][view_name] ||= {} @data["views"][view_name][type] = function self end |