leanback 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2d9de472fd26c48ab94e5499b1b94f8c3810dff9
4
- data.tar.gz: ee96f42ee4f58fee1401d73caeb1555cb6bfa24f
3
+ metadata.gz: 607f66bb87596d4933f4018cb2b52c45ec3610e0
4
+ data.tar.gz: 077dbf53fcaac90c9c3a82e3038d12616aea48c0
5
5
  SHA512:
6
- metadata.gz: 3df3aeee3aed013e815de1e2fbd192ce8c9735c4c717727e5eb5b0590417cf470c03539998b8c3c5a178c0d96a928cd4e3864321eceb68e5c1a18b11cdeb377f
7
- data.tar.gz: ac40f3567ef20d8bf369e527d285f7d87e21ba2c3ec53dfd656e2c2bbaf66292f5918d2ec0fa4d854d031e70ede30f2e7aacd3e49c8ef27b7088294f94734705
6
+ metadata.gz: 5631435bdbdd372e2c8d35c12cfcb0ac1ff1e9cbb9e8364d6a1f575df780bc1cb0bd37925d98f2950db22a7378db21985347f543d5905784c80c32c3c1c9c64e
7
+ data.tar.gz: 1100a6f839ec35fe741e3e2b6d206ba1825d56ad34f36b972b01c0fe65036694928cc3babf2ba1610a73e726dd150d17a2909cf7bc648afed818415f1931a1a5
data/README.md CHANGED
@@ -1,8 +1,9 @@
1
1
  ###Leanback
2
2
 
3
3
  [![Build Status](https://travis-ci.org/obi-a/leanback.svg?branch=master)](https://travis-ci.org/obi-a/leanback)
4
+ [![Gem Version](https://badge.fury.io/rb/leanback.svg)](http://badge.fury.io/rb/leanback)
4
5
 
5
- Simple Ruby Interface to CouchDB. This current version is a complete re-write with a new API.
6
+ Simple Ruby Interface to CouchDB. This current version is a complete re-write with a new API. I wrote this to use in my projects, I hope you find it useful.
6
7
 
7
8
  ### Installation:
8
9
  ```
@@ -375,9 +376,10 @@ Subsequent method calls will simply query the view and return the documents. whe
375
376
  ###Security Object:
376
377
  To set the security object for the database:
377
378
  ```ruby
378
- security_settings = { admins: {names: ["david"], roles: ["admin"]},
379
- readers: {names: ["david"],roles: ["admin"]}
380
- }
379
+ security_settings = {
380
+ admins: {names: ["david"], roles: ["admin"]},
381
+ readers: {names: ["david"],roles: ["admin"]}
382
+ }
381
383
 
382
384
  my_database.security_object = security_settings
383
385
  #=> {:admins=>{:names=>["david"], :roles=>["admin"]},
@@ -421,6 +423,21 @@ config.set_config("admins", username = "james", password = '"abc123"')
421
423
  ```
422
424
  This will add a CouchDB admin with username james, and password abc123. If couchDB was in admin party mode, this would end the party.
423
425
 
426
+ ##Exception handling
427
+ For CouchDB errors Leanback raises a Leanback::Exception object. This object has a response attribute which is a hash that contains the details of the error response from CouchDB. See an example below
428
+ ```ruby
429
+ begin
430
+ my_database.get_doc('dontexist')
431
+ rescue Leanback::CouchdbException => e
432
+ puts e.response.inspect
433
+ #=> {:error=>"not_found", :reason=>"missing"}
434
+ puts e.response[:error].inspect
435
+ #=> "not_found"
436
+ puts e.response[:reason].inspect
437
+ #=> "missing"
438
+ end
439
+ ```
440
+
424
441
  ##API Specification
425
442
 
426
443
  ```ruby
@@ -457,9 +474,10 @@ design_doc_name = "_design/my_doc"
457
474
  view_name = "get_emails"
458
475
  c.view design_doc_name, view_name, options
459
476
 
460
- security_settings = { admins: {names: ["david"], roles: ["admin"]},
461
- readers: {names: ["david"],roles: ["admin"]}
462
- }
477
+ security_settings = {
478
+ admins: {names: ["david"], roles: ["admin"]},
479
+ readers: {names: ["david"],roles: ["admin"]}
480
+ }
463
481
 
464
482
  c.security_object = security_settings
465
483
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.0
1
+ 0.5.1
data/leanback.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: leanback 0.5.0 ruby lib
5
+ # stub: leanback 0.5.1 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "leanback"
9
- s.version = "0.5.0"
9
+ s.version = "0.5.1"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
13
13
  s.authors = ["Obi Akubue"]
14
- s.date = "2014-06-14"
14
+ s.date = "2014-08-11"
15
15
  s.description = "Simple Ruby interface to CouchDB"
16
16
  s.email = "obioraakubue@yahoo.com"
17
17
  s.extra_rdoc_files = [
data/lib/leanback.rb CHANGED
@@ -135,12 +135,12 @@ module Leanback
135
135
  def generate_json(data)
136
136
  JSON.generate(data)
137
137
  end
138
- def raise_error(exeception)
139
- if exeception.respond_to?('response')
140
- response = parse_json(exeception.response)
138
+ def raise_error(exception)
139
+ if exception.respond_to?('response')
140
+ response = parse_json(exception.response) rescue exception.response
141
141
  raise(CouchdbException.new(response), response)
142
142
  else
143
- raise(exeception)
143
+ raise(exception)
144
144
  end
145
145
  end
146
146
  def auth_session
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: leanback
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Obi Akubue
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-14 00:00:00.000000000 Z
11
+ date: 2014-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport