gummi 0.3.2 → 0.3.3

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.
@@ -7,11 +7,12 @@ module Gummi
7
7
  attr_reader :took, :total, :hits, :facets
8
8
 
9
9
  def initialize(response, converter, per_page, page)
10
+ @success = !!response
10
11
  @response = Hashie::Mash.new response
11
- @took = @response.hits.took
12
- @total = @response.hits.total
13
- @hits = @response.hits.hits
14
- @facets = @response.facets
12
+ @took = @response.hits.took if @response.hits
13
+ @total = @response.hits.total if @response.hits
14
+ @hits = @response.hits.hits if @response.hits
15
+ @facets = @response.facets || Hashie::Mash.new
15
16
  @converter = converter
16
17
  @per_page = per_page
17
18
  @page = page
@@ -24,6 +25,10 @@ module Gummi
24
25
  end
25
26
  end
26
27
 
28
+ def success?
29
+ @success
30
+ end
31
+
27
32
  private
28
33
 
29
34
  attr_reader :response, :converter, :per_page, :page, :hits
@@ -29,6 +29,8 @@ module Gummi
29
29
 
30
30
  def execute
31
31
  Gummi::DbLayer::Document::Search::Result.new client.search(to_client_args), document_class, per_page, page
32
+ rescue Faraday::Error::ConnectionFailed
33
+ Gummi::DbLayer::Document::Search::Result.new nil, document_class, per_page, page
32
34
  end
33
35
 
34
36
  private
@@ -6,10 +6,11 @@ module Gummi
6
6
  attr_reader :took
7
7
 
8
8
  def initialize(search_result, converter)
9
- @search_result = search_result
10
- @took = @search_result.took
11
- @documents = @search_result.documents
12
- @converter = converter
9
+ @success = search_result.success?
10
+ @search_result = search_result
11
+ @took = @search_result.took if @search_result
12
+ @documents = @search_result.documents if @search_result
13
+ @converter = converter
13
14
  end
14
15
 
15
16
  def facets
@@ -31,6 +32,10 @@ module Gummi
31
32
  end
32
33
  end
33
34
 
35
+ def success?
36
+ @success
37
+ end
38
+
34
39
  # Leaflet::Collection has many methods we want to make use of.
35
40
  # E.g. kaminari and will_paginate support.
36
41
  # Also, we want to have Enumerable and #decorate at our fingertips.
data/lib/gummi/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Gummi
2
- VERSION = '0.3.2'
2
+ VERSION = '0.3.3'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gummi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-01-03 00:00:00.000000000 Z
12
+ date: 2014-01-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: virtus
@@ -269,18 +269,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
269
269
  - - ! '>='
270
270
  - !ruby/object:Gem::Version
271
271
  version: '0'
272
- segments:
273
- - 0
274
- hash: 3793066994442374579
275
272
  required_rubygems_version: !ruby/object:Gem::Requirement
276
273
  none: false
277
274
  requirements:
278
275
  - - ! '>='
279
276
  - !ruby/object:Gem::Version
280
277
  version: '0'
281
- segments:
282
- - 0
283
- hash: 3793066994442374579
284
278
  requirements: []
285
279
  rubyforge_project:
286
280
  rubygems_version: 1.8.23