indeed_api 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,33 @@
1
+ module IndeedAPI
2
+
3
+ class Search
4
+
5
+ attr_reader :query, :location, :dupe_filter, :highlight, :total_results,
6
+ :start, :end, :radius, :page_number, :results
7
+
8
+ def initialize(data = {})
9
+ @query = data['query']
10
+ @location = data['location']
11
+ @dupe_filter = data['dupefilter'] == 'true'
12
+ @highlight = data['highlight'] == 'true'
13
+ @total_results = data['totalresults'].to_i
14
+ @start = data['start'].to_i
15
+ @end = data['end'].to_i
16
+ @radius = data['radius'].to_i
17
+ @page_number = data['pageNumber'].to_i
18
+ # Load the actual results
19
+ @results = []
20
+ if results = data['results']
21
+ if results = results['result']
22
+ if results.is_a?(Hash)
23
+ @results << IndeedAPI::Job.new(results)
24
+ else
25
+ @results = results.map { |jd| IndeedAPI::Job.new(jd) }
26
+ end
27
+ end
28
+ end
29
+ end
30
+
31
+ end
32
+
33
+ end
@@ -1,5 +1,5 @@
1
1
  module IndeedAPI
2
2
 
3
- VERSION = '0.0.2'
3
+ VERSION = '0.0.3'
4
4
 
5
5
  end
data/lib/indeed_api.rb CHANGED
@@ -5,6 +5,7 @@ module IndeedAPI
5
5
 
6
6
  autoload :IndeedError, File.dirname(__FILE__) + '/indeed_api/indeed_error'
7
7
  autoload :Job, File.dirname(__FILE__) + '/indeed_api/job'
8
+ autoload :Search, File.dirname(__FILE__) + '/indeed_api/search'
8
9
 
9
10
  API_VERSION = 2
10
11
 
@@ -28,10 +29,9 @@ module IndeedAPI
28
29
  response = get('/apisearch', :query => options)
29
30
  handle_errors(response)
30
31
 
31
- return [] unless results = response['response']
32
- return [] unless results = results['results']
33
- return [] unless results = results['result']
34
- results.is_a?(Hash) ? [IndeedAPI::Job.new(results)] : results.map { |jd| IndeedAPI::Job.new(jd) }
32
+ if data = response['response']
33
+ IndeedAPI::Search.new(data)
34
+ end
35
35
  end
36
36
 
37
37
  # Get an individual job - for convenience
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: indeed_api
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.2
5
+ version: 0.0.3
6
6
  platform: ruby
7
7
  authors:
8
8
  - John Crepezzi
@@ -46,6 +46,7 @@ extra_rdoc_files: []
46
46
  files:
47
47
  - lib/indeed_api/indeed_error.rb
48
48
  - lib/indeed_api/job.rb
49
+ - lib/indeed_api/search.rb
49
50
  - lib/indeed_api/version.rb
50
51
  - lib/indeed_api.rb
51
52
  - spec/spec_helper.rb