cb-api 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/cb.rb +4 -0
- data/lib/cb/clients/anon_saved_search_api.rb +41 -0
- data/lib/cb/clients/application_api.rb +25 -7
- data/lib/cb/clients/application_external_api.rb +7 -2
- data/lib/cb/clients/category_api.rb +19 -9
- data/lib/cb/clients/company_api.rb +10 -4
- data/lib/cb/clients/education_api.rb +15 -5
- data/lib/cb/clients/email_subscription_api.rb +13 -8
- data/lib/cb/clients/employee_types_api.rb +24 -15
- data/lib/cb/clients/job_api.rb +19 -10
- data/lib/cb/clients/job_branding_api.rb +9 -4
- data/lib/cb/clients/recommendation_api.rb +40 -22
- data/lib/cb/clients/resume_api.rb +15 -18
- data/lib/cb/clients/saved_search_api.rb +23 -9
- data/lib/cb/clients/talent_network_api.rb +13 -12
- data/lib/cb/clients/user_api.rb +14 -11
- data/lib/cb/config.rb +4 -0
- data/lib/cb/models/cb_saved_search.rb +24 -3
- data/lib/cb/utils/api.rb +14 -12
- data/lib/cb/utils/validator.rb +6 -0
- data/lib/cb/version.rb +1 -1
- metadata +30 -5
- checksums.yaml +0 -15
data/lib/cb.rb
CHANGED
@@ -0,0 +1,41 @@
|
|
1
|
+
module Cb
|
2
|
+
class AnonSavedSearchApi
|
3
|
+
def self.create *args
|
4
|
+
args = args[0] if args.is_a?(Array) && args.count == 1
|
5
|
+
my_api = Cb::Utils::Api.new
|
6
|
+
|
7
|
+
json_hash = my_api.cb_post Cb.configuration.uri_anon_saved_search_create, :body => CbSavedSearch.new(args).create_to_xml
|
8
|
+
|
9
|
+
if json_hash.has_key? 'AnonymousSavedSearch'
|
10
|
+
json_hash['AnonymousSavedSearch']['ExternalID'] = json_hash['ExternalID']
|
11
|
+
end
|
12
|
+
|
13
|
+
if json_hash.has_key?('Errors') && json_hash['Errors'].size < 1
|
14
|
+
saved_search = CbSavedSearch.new(json_hash['AnonymousSavedSearch'])
|
15
|
+
else
|
16
|
+
saved_search = CbSavedSearch.new(json_hash)
|
17
|
+
end
|
18
|
+
|
19
|
+
my_api.append_api_responses(saved_search, json_hash)
|
20
|
+
|
21
|
+
return saved_search
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.delete *args
|
25
|
+
args = args[0] if args.is_a?(Array) && args.count == 1
|
26
|
+
my_api = Cb::Utils::Api.new
|
27
|
+
|
28
|
+
json_hash = my_api.cb_post Cb.configuration.uri_anon_saved_search_delete, :body => CbSavedSearch.new(args).delete_anon_to_xml
|
29
|
+
|
30
|
+
if json_hash.has_key?('Errors') && json_hash['Errors'].size < 1
|
31
|
+
response = json_hash['Status']
|
32
|
+
else
|
33
|
+
response = json_hash['Errors']
|
34
|
+
end
|
35
|
+
|
36
|
+
my_api.append_api_responses(response, json_hash)
|
37
|
+
|
38
|
+
return response
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -14,11 +14,17 @@ module Cb
|
|
14
14
|
job.is_a?(Cb::CbJob) ? did = job.did : did = job
|
15
15
|
|
16
16
|
my_api = Cb::Utils::Api.new()
|
17
|
-
|
18
|
-
json_hash = JSON.parse(cb_response.response.body)
|
17
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_application, :query => {:JobDID => did})
|
19
18
|
|
20
|
-
|
21
|
-
|
19
|
+
if json_hash.has_key?('ResponseBlankApplication')
|
20
|
+
if json_hash['ResponseBlankApplication'].has_key?('BlankApplication')
|
21
|
+
app = Cb::CbApplicationSchema.new(json_hash['ResponseBlankApplication']['BlankApplication'])
|
22
|
+
end
|
23
|
+
|
24
|
+
my_api.append_api_responses(app, json_hash['ResponseBlankApplication'])
|
25
|
+
end
|
26
|
+
|
27
|
+
my_api.append_api_responses(app, json_hash)
|
22
28
|
|
23
29
|
return app
|
24
30
|
end
|
@@ -47,13 +53,25 @@ module Cb
|
|
47
53
|
raise Cb::IncomingParamIsWrongTypeException unless app.is_a?(Cb::CbApplication)
|
48
54
|
|
49
55
|
my_api = Cb::Utils::Api.new()
|
50
|
-
|
51
|
-
my_api.append_api_responses(app, cb_response['ResponseApplication'])
|
56
|
+
json_hash = my_api.cb_post("#{uri}?ipath=#{app.ipath}", :body => app.to_xml)
|
52
57
|
|
53
58
|
begin
|
54
|
-
|
59
|
+
if json_hash.has_key? 'ResponseApplication'
|
60
|
+
if json_hash['ResponseApplication'].has_key? 'RedirectURL'
|
61
|
+
app.redirect_url = json_hash['ResponseApplication']['RedirectURL']
|
62
|
+
else
|
63
|
+
app.redirect_url = ''
|
64
|
+
end
|
65
|
+
|
66
|
+
my_api.append_api_responses(app, json_hash['ResponseApplication'])
|
67
|
+
else
|
68
|
+
app.redirect_url = ''
|
69
|
+
end
|
70
|
+
|
55
71
|
end
|
56
72
|
|
73
|
+
my_api.append_api_responses(app, json_hash)
|
74
|
+
|
57
75
|
return app
|
58
76
|
end
|
59
77
|
end
|
@@ -13,12 +13,17 @@ module Cb
|
|
13
13
|
|
14
14
|
my_api = Cb::Utils::Api.new()
|
15
15
|
xml_hash = my_api.cb_post(Cb.configuration.uri_application_external, :body => app.to_xml)
|
16
|
-
my_api.append_api_responses(app, xml_hash)
|
17
16
|
|
18
17
|
begin
|
19
|
-
|
18
|
+
if xml_hash.has_key? 'ApplyUrl'
|
19
|
+
app.apply_url = xml_hash['ApplyUrl']
|
20
|
+
else
|
21
|
+
app.apply_url = ''
|
22
|
+
end
|
20
23
|
end
|
21
24
|
|
25
|
+
my_api.append_api_responses(app, xml_hash)
|
26
|
+
|
22
27
|
return app
|
23
28
|
end
|
24
29
|
end
|
@@ -7,10 +7,16 @@ module Cb
|
|
7
7
|
json_hash = my_api.cb_get(Cb.configuration.uri_job_category_search)
|
8
8
|
|
9
9
|
categoryList = []
|
10
|
-
|
11
|
-
|
12
|
-
|
10
|
+
|
11
|
+
if json_hash.has_key?('ResponseCategories')
|
12
|
+
|
13
|
+
if json_hash['ResponseCategories'].has_key?('Categories')
|
14
|
+
json_hash['ResponseCategories']['Categories']['Category'].each do |cat|
|
15
|
+
categoryList << CbCategory.new(cat)
|
16
|
+
end
|
13
17
|
end
|
18
|
+
|
19
|
+
my_api.append_api_responses(categoryList, json_hash['ResponseCategories'])
|
14
20
|
end
|
15
21
|
|
16
22
|
my_api.append_api_responses(categoryList, json_hash)
|
@@ -23,14 +29,18 @@ module Cb
|
|
23
29
|
json_hash = my_api.cb_get(Cb.configuration.uri_job_category_search, :query => {:CountryCode => host_site})
|
24
30
|
|
25
31
|
categoryList = []
|
26
|
-
if json_hash.has_key?('ResponseCategories')
|
27
|
-
if json_hash['ResponseCategories']
|
28
|
-
json_hash['ResponseCategories']['Categories']['Category'].
|
29
|
-
|
32
|
+
if json_hash.has_key?('ResponseCategories')
|
33
|
+
if json_hash['ResponseCategories'].has_key?('Categories')
|
34
|
+
if json_hash['ResponseCategories']['Categories']['Category'].is_a?(Array)
|
35
|
+
json_hash['ResponseCategories']['Categories']['Category'].each do |cat|
|
36
|
+
categoryList << CbCategory.new(cat)
|
37
|
+
end
|
38
|
+
elsif json_hash['ResponseCategories']['Categories']['Category'].is_a?(Hash) && json_hash.length < 2
|
39
|
+
categoryList << CbCategory.new(json_hash['ResponseCategories']['Categories']['Category'])
|
30
40
|
end
|
31
|
-
elsif json_hash['ResponseCategories']['Categories']['Category'].is_a?(Hash) && json_hash.length < 2
|
32
|
-
categoryList << CbCategory.new(json_hash['ResponseCategories']['Categories']['Category'])
|
33
41
|
end
|
42
|
+
|
43
|
+
my_api.append_api_responses(categoryList, json_hash['ResponseCategories'])
|
34
44
|
end
|
35
45
|
|
36
46
|
my_api.append_api_responses(categoryList, json_hash)
|
@@ -10,11 +10,17 @@ module Cb
|
|
10
10
|
#############################################################
|
11
11
|
def self.find_by_did(did)
|
12
12
|
my_api = Cb::Utils::Api.new()
|
13
|
-
|
14
|
-
|
13
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_company_find, :query => {:CompanyDID => did, :hostsite=> Cb.configuration.host_site})
|
14
|
+
|
15
|
+
if json_hash.has_key?('Results')
|
16
|
+
if json_hash['Results'].has_key?('CompanyProfileDetail')
|
17
|
+
company = CbCompany.new(json_hash['Results']['CompanyProfileDetail'])
|
18
|
+
end
|
19
|
+
my_api.append_api_responses(company, json_hash['Results'])
|
20
|
+
end
|
21
|
+
|
22
|
+
my_api.append_api_responses(company, json_hash)
|
15
23
|
|
16
|
-
company = CbCompany.new(json_hash['Results']['CompanyProfileDetail'])
|
17
|
-
my_api.append_api_responses(company, json_hash['Results'])
|
18
24
|
|
19
25
|
return company
|
20
26
|
end
|
@@ -12,14 +12,24 @@ module Cb
|
|
12
12
|
Cb::Utils::Country.is_valid? country ? country : 'US'
|
13
13
|
|
14
14
|
my_api = Cb::Utils::Api.new()
|
15
|
-
|
16
|
-
|
15
|
+
|
16
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_education_code, :query => {:countrycode => country})
|
17
17
|
|
18
18
|
codes = []
|
19
|
-
|
20
|
-
|
19
|
+
if json_hash.has_key?('ResponseEducationCodes')
|
20
|
+
|
21
|
+
if json_hash['ResponseEducationCodes'].has_key?('EducationCodes') &&
|
22
|
+
json_hash['ResponseEducationCodes']['EducationCodes'].has_key?('Education')
|
23
|
+
|
24
|
+
json_hash['ResponseEducationCodes']['EducationCodes']['Education'].each do | education |
|
25
|
+
codes << Cb::CbEducation.new(education)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
my_api.append_api_responses(codes, json_hash['ResponseEducationCodes'])
|
21
30
|
end
|
22
|
-
|
31
|
+
|
32
|
+
my_api.append_api_responses(codes, json_hash)
|
23
33
|
|
24
34
|
return codes
|
25
35
|
end
|
@@ -10,9 +10,13 @@ module Cb
|
|
10
10
|
#############################################################
|
11
11
|
def self.retrieve_by_did(did, host_site = '')
|
12
12
|
my_api = Cb::Utils::Api.new()
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
json_hash = my_api.cb_get_secure(Cb.configuration.uri_subscription_retrieve, :query => {:ExternalID => did, :Hostsite => host_site})
|
14
|
+
|
15
|
+
if json_hash.has_key?('SubscriptionValues') && json_hash['SubscriptionValues'].present?
|
16
|
+
subscription = CbEmailSubscription.new(json_hash['SubscriptionValues'])
|
17
|
+
my_api.append_api_responses(subscription, json_hash['SubscriptionValues'])
|
18
|
+
end
|
19
|
+
my_api.append_api_responses(subscription, json_hash)
|
16
20
|
|
17
21
|
return subscription
|
18
22
|
end
|
@@ -49,13 +53,14 @@ module Cb
|
|
49
53
|
xml_body += "</Request>"
|
50
54
|
|
51
55
|
|
52
|
-
|
56
|
+
json_hash = my_api.cb_post(Cb.configuration.uri_subscription_modify,
|
53
57
|
:body => xml_body)
|
54
58
|
|
55
|
-
json_hash
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
+
if json_hash.has_key?('SubscriptionValues') && json_hash['SubscriptionValues'].present?
|
60
|
+
subscription = CbEmailSubscription.new(json_hash['SubscriptionValues'])
|
61
|
+
my_api.append_api_responses(subscription, json_hash['SubscriptionValues'])
|
62
|
+
end
|
63
|
+
my_api.append_api_responses(subscription, json_hash)
|
59
64
|
return subscription
|
60
65
|
end
|
61
66
|
|
@@ -5,32 +5,41 @@ module Cb
|
|
5
5
|
|
6
6
|
def self.search
|
7
7
|
my_api = Cb::Utils::Api.new()
|
8
|
-
|
8
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_employee_types)
|
9
9
|
|
10
|
-
return array_of_objects_from_hash(
|
10
|
+
return array_of_objects_from_hash(json_hash, my_api)
|
11
11
|
end
|
12
12
|
|
13
13
|
def self.search_by_host_site(hostsite)
|
14
14
|
my_api = Cb::Utils::Api.new()
|
15
|
-
|
15
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_employee_types, :query => {:CountryCode => hostsite})
|
16
16
|
|
17
|
-
return array_of_objects_from_hash(
|
17
|
+
return array_of_objects_from_hash(json_hash, my_api)
|
18
18
|
end
|
19
19
|
|
20
20
|
private
|
21
|
-
def self.array_of_objects_from_hash(
|
22
|
-
json_hash = JSON.parse(cb_response.response.body)
|
21
|
+
def self.array_of_objects_from_hash(json_hash, my_api)
|
23
22
|
|
24
23
|
employee_types = []
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
24
|
+
if json_hash.has_key?('ResponseEmployeeTypes')
|
25
|
+
if json_hash['ResponseEmployeeTypes'].has_key?('EmployeeTypes') &&
|
26
|
+
json_hash['ResponseEmployeeTypes']['EmployeeTypes'].present?
|
27
|
+
|
28
|
+
if json_hash['ResponseEmployeeTypes']['EmployeeTypes']['EmployeeType'].is_a?(Array)
|
29
|
+
|
30
|
+
json_hash['ResponseEmployeeTypes']['EmployeeTypes']['EmployeeType'].each do |et|
|
31
|
+
employee_types << CbEmployeeType.new(et)
|
32
|
+
end
|
33
|
+
|
34
|
+
elsif json_hash['ResponseEmployeeTypes']['EmployeeTypes']['EmployeeType'].is_a?(Hash) && json_hash.length < 2
|
35
|
+
employee_types << CbEmployeeType.new(json_hash['ResponseEmployeeTypes']['EmployeeTypes']['EmployeeType'])
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
my_api.append_api_responses(employee_types, json_hash['ResponseEmployeeTypes'])
|
40
|
+
end
|
41
|
+
|
42
|
+
my_api.append_api_responses(employee_types, json_hash)
|
34
43
|
|
35
44
|
return employee_types
|
36
45
|
end
|
data/lib/cb/clients/job_api.rb
CHANGED
@@ -12,16 +12,21 @@ module Cb
|
|
12
12
|
def self.search(*args)
|
13
13
|
args = args[0] if args.is_a?(Array) && args.count == 1
|
14
14
|
my_api = Cb::Utils::Api.new()
|
15
|
-
|
16
|
-
json_hash = JSON.parse(cb_response.response.body)
|
15
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_job_search, :query => args)
|
17
16
|
|
18
17
|
jobs = []
|
19
|
-
|
20
|
-
json_hash['ResponseJobSearch']
|
21
|
-
|
18
|
+
if json_hash.has_key?('ResponseJobSearch')
|
19
|
+
if json_hash['ResponseJobSearch'].has_key?('Results') &&
|
20
|
+
json_hash['ResponseJobSearch']['Results'].present?
|
21
|
+
|
22
|
+
json_hash['ResponseJobSearch']['Results']['JobSearchResult'].each do | cur_job |
|
23
|
+
jobs << CbJob.new(cur_job)
|
24
|
+
end
|
22
25
|
end
|
26
|
+
my_api.append_api_responses(jobs, json_hash['ResponseJobSearch'])
|
23
27
|
end
|
24
|
-
|
28
|
+
|
29
|
+
my_api.append_api_responses(jobs, json_hash)
|
25
30
|
|
26
31
|
return jobs
|
27
32
|
end
|
@@ -35,11 +40,15 @@ module Cb
|
|
35
40
|
def self.find_by_criteria(criteria)
|
36
41
|
my_api = Cb::Utils::Api.new()
|
37
42
|
params = my_api.class.criteria_to_hash(criteria)
|
43
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_job_find, :query => params)
|
38
44
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
45
|
+
if json_hash.has_key?('ResponseJob')
|
46
|
+
if json_hash['ResponseJob'].has_key?('Job')
|
47
|
+
job = CbJob.new(json_hash['ResponseJob']['Job'])
|
48
|
+
end
|
49
|
+
my_api.append_api_responses(job, json_hash['ResponseJob'])
|
50
|
+
end
|
51
|
+
my_api.append_api_responses(job, json_hash)
|
43
52
|
|
44
53
|
return job
|
45
54
|
end
|
@@ -5,13 +5,18 @@ module Cb
|
|
5
5
|
class JobBrandingApi
|
6
6
|
|
7
7
|
def self.find_by_id id
|
8
|
-
|
8
|
+
my_api = Cb::Utils::Api.new
|
9
9
|
|
10
|
-
|
10
|
+
json_hash = my_api.cb_get Cb.configuration.uri_job_branding, :query => { :id => id }
|
11
11
|
|
12
|
-
|
12
|
+
if json_hash.has_key? 'Branding'
|
13
|
+
branding = CbJobBranding.new json_hash['Branding']
|
14
|
+
my_api.append_api_responses(branding, json_hash['Branding'])
|
15
|
+
end
|
13
16
|
|
14
|
-
|
17
|
+
my_api.append_api_responses(branding, json_hash)
|
18
|
+
|
19
|
+
return branding
|
15
20
|
end
|
16
21
|
|
17
22
|
end
|
@@ -10,20 +10,23 @@ module Cb
|
|
10
10
|
#############################################################
|
11
11
|
def self.for_job(did, countlimit = '25', site_id = '', co_brand = '')
|
12
12
|
my_api = Cb::Utils::Api.new()
|
13
|
-
|
13
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_recommendation_for_job,
|
14
14
|
:query => {:JobDID => did, :CountLimit => countlimit, :SiteID => site_id,
|
15
15
|
:CoBrand => co_brand, :HostSite => Cb.configuration.host_site})
|
16
16
|
|
17
|
-
json_hash = JSON.parse(cb_response.response.body)
|
18
|
-
|
19
17
|
jobs = []
|
20
|
-
|
21
|
-
json_hash['ResponseRecommendJob']
|
22
|
-
|
18
|
+
if json_hash.has_key?('ResponseRecommendJob')
|
19
|
+
if json_hash['ResponseRecommendJob'].has_key?('RecommendJobResults') &&
|
20
|
+
json_hash['ResponseRecommendJob']['RecommendJobResults'].present?
|
21
|
+
|
22
|
+
json_hash['ResponseRecommendJob']['RecommendJobResults']['RecommendJobResult'].each do |cur_job|
|
23
|
+
jobs << CbJob.new(cur_job)
|
24
|
+
end
|
25
|
+
my_api.append_api_responses(jobs, json_hash['ResponseRecommendJob']['Request'])
|
23
26
|
end
|
27
|
+
my_api.append_api_responses(jobs, json_hash['ResponseRecommendJob'])
|
24
28
|
end
|
25
|
-
my_api.append_api_responses(jobs, json_hash
|
26
|
-
my_api.append_api_responses(jobs, json_hash['ResponseRecommendJob']['Request'])
|
29
|
+
my_api.append_api_responses(jobs, json_hash)
|
27
30
|
|
28
31
|
return jobs
|
29
32
|
end
|
@@ -36,19 +39,27 @@ module Cb
|
|
36
39
|
#############################################################
|
37
40
|
def self.for_user(external_id, countlimit = '25', site_id = '', co_brand = '')
|
38
41
|
my_api = Cb::Utils::Api.new()
|
39
|
-
|
42
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_recommendation_for_user,
|
40
43
|
:query => {:ExternalID => external_id, :CountLimit => countlimit, :SiteID => site_id, :CoBrand => co_brand,
|
41
44
|
:HostSite => Cb.configuration.host_site})
|
42
|
-
json_hash = JSON.parse(cb_response.response.body)
|
43
45
|
|
44
46
|
jobs = []
|
45
|
-
|
46
|
-
|
47
|
-
|
47
|
+
if json_hash.has_key?('ResponseRecommendUser')
|
48
|
+
|
49
|
+
if json_hash['ResponseRecommendUser'].has_key?('RecommendJobResults') &&
|
50
|
+
json_hash['ResponseRecommendUser']['RecommendJobResults'].present?
|
51
|
+
|
52
|
+
json_hash['ResponseRecommendUser']['RecommendJobResults']['RecommendJobResult'].each do |cur_job|
|
53
|
+
jobs << CbJob.new(cur_job)
|
54
|
+
end
|
55
|
+
|
56
|
+
my_api.append_api_responses(jobs, json_hash['ResponseRecommendUser']['Request'])
|
48
57
|
end
|
58
|
+
|
59
|
+
my_api.append_api_responses(jobs, json_hash['ResponseRecommendUser'])
|
49
60
|
end
|
50
|
-
|
51
|
-
my_api.append_api_responses(jobs, json_hash
|
61
|
+
|
62
|
+
my_api.append_api_responses(jobs, json_hash)
|
52
63
|
|
53
64
|
return jobs
|
54
65
|
end
|
@@ -61,18 +72,25 @@ module Cb
|
|
61
72
|
#############################################################
|
62
73
|
def self.for_company(company_did)
|
63
74
|
my_api = Cb::Utils::Api.new()
|
64
|
-
|
75
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_recommendation_for_company,
|
65
76
|
:query => {:CompanyDID => company_did})
|
66
|
-
json_hash = JSON.parse(cb_response.response.body)
|
67
77
|
|
68
78
|
jobs = []
|
69
|
-
|
70
|
-
|
71
|
-
|
79
|
+
if json_hash.has_key?('Results')
|
80
|
+
|
81
|
+
if json_hash['Results'].has_key?('JobRecommendation')
|
82
|
+
|
83
|
+
json_hash['Results']['JobRecommendation']['Jobs'].each do |cur_job|
|
84
|
+
jobs << CbJob.new(cur_job)
|
85
|
+
end
|
86
|
+
|
87
|
+
my_api.append_api_responses(jobs, json_hash['Results']['JobRecommendation'])
|
72
88
|
end
|
89
|
+
|
90
|
+
my_api.append_api_responses(jobs, json_hash['Results'])
|
91
|
+
|
73
92
|
end
|
74
|
-
my_api.append_api_responses(jobs, json_hash
|
75
|
-
my_api.append_api_responses(jobs, json_hash['Results']['JobRecommendation'])
|
93
|
+
my_api.append_api_responses(jobs, json_hash)
|
76
94
|
|
77
95
|
return jobs
|
78
96
|
end
|
@@ -20,12 +20,11 @@ module Cb
|
|
20
20
|
if ignore_host_site
|
21
21
|
params['IgnoreHostSite'] = 'true'
|
22
22
|
end
|
23
|
-
|
24
|
-
json_hash = JSON.parse(cb_response.response.body)
|
23
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_resume_own_all, :query => params)
|
25
24
|
|
26
25
|
resumes = []
|
27
26
|
|
28
|
-
|
27
|
+
if json_hash.has_key?('ResponseOwnResumes') && json_hash['ResponseOwnResumes'].has_key?('Resumes')
|
29
28
|
json_hash['ResponseOwnResumes']['Resumes']['Resume'].each do |resume_hash|
|
30
29
|
resume = Cb::CbResume.new resume_hash
|
31
30
|
resume.external_resume_id = resume_hash['ExternalID']
|
@@ -46,11 +45,12 @@ module Cb
|
|
46
45
|
def self.retrieve_by_id resume_external_id, external_user_id
|
47
46
|
my_api = Cb::Utils::Api.new
|
48
47
|
params = {"ExternalID" => external_id, "ExternalUserID" => external_user_id}
|
49
|
-
|
50
|
-
json_hash = JSON.parse(cb_response.response.body)
|
48
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_resume_retrieve, :query => params)
|
51
49
|
|
52
|
-
|
53
|
-
|
50
|
+
if json_hash.has_key?('ResponseRetrieve') && json_hash['ResponseRetrieve'].has_key?('Resume')
|
51
|
+
resume = Cb::CbResume.new json_hash['ResponseRetrieve']['Resume']
|
52
|
+
my_api.append_api_responses resume, json_hash['ResponseRetrieve']
|
53
|
+
end
|
54
54
|
|
55
55
|
return resume
|
56
56
|
end
|
@@ -64,11 +64,12 @@ module Cb
|
|
64
64
|
def self.retrieve resume
|
65
65
|
my_api = Cb::Utils::Api.new
|
66
66
|
params = {"ExternalID" => resume.external_resume_id, "ExternalUserID" => resume.external_user_id}
|
67
|
-
|
68
|
-
json_hash = JSON.parse(cb_response.response.body)
|
67
|
+
json_hash = my_api.cb_get(Cb.configuration.uri_resume_retrieve, :query => params)
|
69
68
|
|
70
|
-
|
71
|
-
|
69
|
+
if json_hash.has_key?('ResponseRetrieve') && json_hash['ResponseRetrieve'].has_key?('Resume')
|
70
|
+
resume = resume.set_attributes json_hash['ResponseRetrieve']['Resume']
|
71
|
+
my_api.append_api_responses resume, json_hash['ResponseRetrieve']
|
72
|
+
end
|
72
73
|
|
73
74
|
return resume
|
74
75
|
end
|
@@ -81,8 +82,7 @@ module Cb
|
|
81
82
|
#############################################################
|
82
83
|
def self.create resume
|
83
84
|
my_api = Cb::Utils::Api.new
|
84
|
-
|
85
|
-
json_hash = JSON.parse(cb_response.response.body)
|
85
|
+
json_hash = my_api.cb_post(Cb.configuration.uri_resume_create, :body => make_create_xml(resume))
|
86
86
|
end
|
87
87
|
|
88
88
|
#############################################################
|
@@ -93,8 +93,7 @@ module Cb
|
|
93
93
|
#############################################################
|
94
94
|
def self.update resume
|
95
95
|
my_api = Cb::Utils::Api.new
|
96
|
-
|
97
|
-
json_hash = JSON.parse(cb_response.response.body)
|
96
|
+
json_hash = my_api.cb_post(Cb.configuration.uri_resume_update, :body => make_update_xml(resume))
|
98
97
|
end
|
99
98
|
|
100
99
|
#############################################################
|
@@ -105,9 +104,7 @@ module Cb
|
|
105
104
|
#############################################################
|
106
105
|
def self.delete resume
|
107
106
|
my_api = Cb::Utils::Api.new
|
108
|
-
|
109
|
-
json_hash = JSON.parse(cb_response.response.body)
|
110
|
-
|
107
|
+
json_hash = my_api.cb_post(Cb.configuration.uri_resume_delete, :body => make_delete_xml(resume))
|
111
108
|
end
|
112
109
|
|
113
110
|
private
|
@@ -23,6 +23,8 @@ module Cb
|
|
23
23
|
my_api.append_api_responses saved_search, json_hash['SavedJobSearch']
|
24
24
|
end
|
25
25
|
|
26
|
+
my_api.append_api_responses saved_search, json_hash
|
27
|
+
|
26
28
|
return saved_search
|
27
29
|
end
|
28
30
|
|
@@ -42,6 +44,8 @@ module Cb
|
|
42
44
|
my_api.append_api_responses saved_search, json_hash['SavedJobSearch']
|
43
45
|
end
|
44
46
|
|
47
|
+
my_api.append_api_responses saved_search, json_hash
|
48
|
+
|
45
49
|
return saved_search
|
46
50
|
end
|
47
51
|
|
@@ -57,11 +61,13 @@ module Cb
|
|
57
61
|
my_api = Cb::Utils::Api.new
|
58
62
|
json_hash = my_api.cb_post Cb.configuration.uri_saved_search_delete, :body=>CbSavedSearch.new(args).delete_to_xml
|
59
63
|
|
60
|
-
if json_hash.
|
61
|
-
saved_search = CbSavedSearch.new json_hash
|
62
|
-
my_api.append_api_responses
|
64
|
+
if json_hash.has_key?('Request')
|
65
|
+
saved_search = CbSavedSearch.new json_hash['Request']
|
66
|
+
my_api.append_api_responses(saved_search, json_hash['Request'])
|
63
67
|
end
|
64
68
|
|
69
|
+
my_api.append_api_responses(saved_search, json_hash)
|
70
|
+
|
65
71
|
return saved_search
|
66
72
|
end
|
67
73
|
|
@@ -83,11 +89,18 @@ module Cb
|
|
83
89
|
my_api = Cb::Utils::Api.new
|
84
90
|
json_hash = my_api.cb_get Cb.configuration.uri_saved_search_retrieve, :query => {:developerkey=> developer_key, :externaluserid=> external_user_id, :externalid=> external_id, :hostsite=> host_site}
|
85
91
|
|
86
|
-
if json_hash.has_key?('SavedJobSearch')
|
87
|
-
|
88
|
-
|
92
|
+
if json_hash.has_key?('SavedJobSearch')
|
93
|
+
|
94
|
+
if json_hash['SavedJobSearch'].has_key?('SavedSearch')
|
95
|
+
saved_search = CbSavedSearch.new json_hash['SavedJobSearch']['SavedSearch']
|
96
|
+
my_api.append_api_responses saved_search, json_hash['SavedJobSearch']['SavedSearch']
|
97
|
+
end
|
98
|
+
|
99
|
+
my_api.append_api_responses saved_search, json_hash['SavedJobSearch']
|
89
100
|
end
|
90
101
|
|
102
|
+
my_api.append_api_responses saved_search, json_hash
|
103
|
+
|
91
104
|
return saved_search
|
92
105
|
end
|
93
106
|
|
@@ -100,11 +113,10 @@ module Cb
|
|
100
113
|
def self.list developer_key, external_user_id
|
101
114
|
my_api = Cb::Utils::Api.new
|
102
115
|
json_hash = my_api.cb_get Cb.configuration.uri_saved_search_list, :query => {:developerkey=>developer_key, :ExternalUserId=>external_user_id}
|
103
|
-
|
104
|
-
|
116
|
+
saved_searches = []
|
117
|
+
if json_hash.has_key?('SavedJobSearches') && json_hash['SavedJobSearches'].has_key?('SavedSearches')
|
105
118
|
saved_search_hash = json_hash['SavedJobSearches']['SavedSearches']
|
106
119
|
|
107
|
-
saved_searches = []
|
108
120
|
if saved_search_hash.present?
|
109
121
|
if saved_search_hash['SavedSearch'].is_a?(Array)
|
110
122
|
saved_search_hash['SavedSearch'].each do |saved_search|
|
@@ -118,6 +130,8 @@ module Cb
|
|
118
130
|
my_api.append_api_responses saved_searches, json_hash['SavedJobSearches']
|
119
131
|
end
|
120
132
|
|
133
|
+
my_api.append_api_responses(saved_searches, json_hash)
|
134
|
+
|
121
135
|
return saved_searches
|
122
136
|
end
|
123
137
|
|
@@ -22,7 +22,10 @@ module Cb
|
|
22
22
|
|
23
23
|
json_hash = my_api.cb_get_secure("#{Cb.configuration.uri_tn_join_form_branding}/#{tndid}/json")
|
24
24
|
|
25
|
-
|
25
|
+
if json_hash.has_key? 'Branding'
|
26
|
+
tn_join_form_branding = TalentNetwork::JoinFormBranding.new(json_hash['Branding'])
|
27
|
+
end
|
28
|
+
|
26
29
|
my_api.append_api_responses(tn_join_form_branding, json_hash)
|
27
30
|
|
28
31
|
return tn_join_form_branding
|
@@ -44,26 +47,24 @@ module Cb
|
|
44
47
|
## Creates a member based on the form built with the Join Form Questions API call
|
45
48
|
my_api = Cb::Utils::Api.new
|
46
49
|
tn_member = TalentNetwork::Member.new(args)
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
if json_hash['Errors'].first.nil?
|
51
|
-
return json_hash['MemberDID']
|
52
|
-
end
|
50
|
+
json_hash = my_api.cb_post("#{Cb.configuration.uri_tn_member_create}/json", :body => tn_member.to_xml )
|
51
|
+
my_api.append_api_responses(json_hash, json_hash)
|
53
52
|
|
54
|
-
return json_hash
|
53
|
+
return json_hash
|
55
54
|
end
|
56
55
|
|
57
56
|
def self.tn_job_information(job_did, join_form_intercept="true")
|
58
57
|
my_api = Cb::Utils::Api.new
|
59
58
|
json_hash = my_api.cb_get_secure("#{Cb.configuration.uri_tn_job_info}/#{job_did}/json", :query=> {
|
60
59
|
:RequestJoinFormIntercept=>join_form_intercept})
|
61
|
-
|
62
|
-
|
60
|
+
|
61
|
+
if json_hash.has_key? 'Response'
|
62
|
+
tn_job_info = TalentNetwork::JobInfo.new(json_hash['Response'])
|
63
|
+
end
|
64
|
+
|
63
65
|
my_api.append_api_responses(tn_job_info, json_hash)
|
64
|
-
|
66
|
+
|
65
67
|
return tn_job_info
|
66
|
-
|
67
68
|
end
|
68
69
|
end #TalentNetworkJoinQuestions
|
69
70
|
end #module
|
data/lib/cb/clients/user_api.rb
CHANGED
@@ -12,7 +12,7 @@ module Cb
|
|
12
12
|
def self.retrieve external_id, test_mode = false
|
13
13
|
my_api = Cb::Utils::Api.new
|
14
14
|
|
15
|
-
json_hash = my_api.cb_post Cb.configuration.uri_user_retrieve, :body => build_retrieve_request(external_id,
|
15
|
+
json_hash = my_api.cb_post Cb.configuration.uri_user_retrieve, :body => build_retrieve_request(external_id, true)
|
16
16
|
|
17
17
|
if json_hash.has_key? 'ResponseUserInfo'
|
18
18
|
if json_hash['ResponseUserInfo'].has_key? 'UserInfo'
|
@@ -21,6 +21,8 @@ module Cb
|
|
21
21
|
my_api.append_api_responses user, json_hash['ResponseUserInfo']
|
22
22
|
end
|
23
23
|
|
24
|
+
my_api.append_api_responses user, json_hash
|
25
|
+
|
24
26
|
return user
|
25
27
|
end
|
26
28
|
|
@@ -37,13 +39,14 @@ module Cb
|
|
37
39
|
json_hash = my_api.cb_post Cb.configuration.uri_user_change_password, :body => build_change_password_request(external_id, old_password, new_password, test_mode)
|
38
40
|
|
39
41
|
if json_hash.has_key? 'ResponseUserChangePW'
|
40
|
-
|
41
|
-
if result.cb_response.status.include? 'Success'
|
42
|
+
if json_hash['ResponseUserChangePW'].has_key?('Status') && json_hash['ResponseUserChangePW']['Status'].include?('Success')
|
42
43
|
result = true
|
43
|
-
my_api.append_api_responses result, json_hash['ResponseUserChangePW']
|
44
44
|
end
|
45
|
+
my_api.append_api_responses result, json_hash['ResponseUserChangePW']
|
45
46
|
end
|
46
47
|
|
48
|
+
my_api.append_api_responses result, json_hash
|
49
|
+
|
47
50
|
result
|
48
51
|
end
|
49
52
|
|
@@ -60,14 +63,14 @@ module Cb
|
|
60
63
|
json_hash = my_api.cb_post Cb.configuration.uri_user_delete, :body => build_delete_request(external_id, password, test_mode)
|
61
64
|
|
62
65
|
if json_hash.has_key? 'ResponseUserDelete'
|
63
|
-
|
64
|
-
|
65
|
-
if result.cb_response.status.include? 'Success'
|
66
|
+
if json_hash['ResponseUserDelete'].has_key?('Status') && json_hash['ResponseUserDelete']['Status'].include?('Success')
|
66
67
|
result = true
|
67
|
-
my_api.append_api_responses result, json_hash['ResponseUserDelete']
|
68
68
|
end
|
69
|
+
my_api.append_api_responses result, json_hash['ResponseUserDelete']
|
69
70
|
end
|
70
71
|
|
72
|
+
my_api.append_api_responses result, json_hash
|
73
|
+
|
71
74
|
result
|
72
75
|
end
|
73
76
|
|
@@ -93,9 +96,9 @@ module Cb
|
|
93
96
|
Test_ test_mode.to_s
|
94
97
|
DeveloperKey_ Cb.configuration.dev_key
|
95
98
|
}
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
+
end
|
100
|
+
|
101
|
+
builder.to_xml
|
99
102
|
end
|
100
103
|
|
101
104
|
def self.build_delete_request external_id, password, test_mode
|
data/lib/cb/config.rb
CHANGED
@@ -14,6 +14,7 @@ module Cb
|
|
14
14
|
:uri_resume_own_all, :uri_resume_retrieve,
|
15
15
|
:uri_resume_create, :uri_resume_update, :uri_resume_delete,
|
16
16
|
:uri_saved_search_retrieve, :uri_saved_search_create, :uri_saved_search_update, :uri_saved_search_list, :uri_saved_search_delete,
|
17
|
+
:uri_anon_saved_search_create, :uri_anon_saved_search_delete,
|
17
18
|
:uri_saved_job_search_create,
|
18
19
|
:uri_job_branding, :uri_tn_join_questions, :uri_tn_job_info, :uri_tn_join_form_geo,
|
19
20
|
:uri_tn_join_form_branding, :uri_tn_member_create,
|
@@ -52,6 +53,8 @@ module Cb
|
|
52
53
|
@uri_saved_search_update ||= '/v2/savedsearch/update'
|
53
54
|
@uri_saved_search_delete ||= '/v1/savedsearch/delete'
|
54
55
|
@uri_saved_search_list ||= '/v1/savedsearch/list'
|
56
|
+
@uri_anon_saved_search_create ||= '/v1/anonymoussavedjobsearch/create'
|
57
|
+
@uri_anon_saved_search_delete ||= '/v1/anonymoussavedjobsearch/delete'
|
55
58
|
@uri_tn_join_questions ||= '/talentnetwork/config/join/questions'
|
56
59
|
@uri_tn_job_info ||= '/talentnetwork/internal/job'
|
57
60
|
@uri_tn_join_form_geo ||= '/tn/JoinForm/Geo'
|
@@ -94,6 +97,7 @@ module Cb
|
|
94
97
|
:uri_saved_search_update => @uri_saved_search_update,
|
95
98
|
:uri_saved_search_delete => @uri_saved_search_delete,
|
96
99
|
:uri_saved_search_list => @uri_saved_search_list,
|
100
|
+
:uri_anon_saved_search_create => @uri_anon_saved_search_create,
|
97
101
|
:uri_tn_join_questions => @uri_tn_join_questions,
|
98
102
|
:uri_subscription_retrieve => @uri_subscription_retrieve,
|
99
103
|
:uri_subscription_modify => @uri_subscription_modify,
|
@@ -5,7 +5,7 @@ module Cb
|
|
5
5
|
:emp_type, :exclude_company_names, :exclude_job_titles, :exclude_national, :industry_codes,
|
6
6
|
:keywords, :order_by, :order_direction, :radius, :pay_high, :pay_low, :posted_within,
|
7
7
|
:pay_info_only, :location, :job_category, :company, :city, :state, :is_daily_email, :external_id,
|
8
|
-
:external_user_id, :dev_key, :job_search_url, :jrdid, :errors
|
8
|
+
:external_user_id, :dev_key, :job_search_url, :jrdid, :errors, :browser_id, :session_id, :test, :email_address
|
9
9
|
|
10
10
|
def initialize(args={})
|
11
11
|
@hostsite = args['HostSite'] || ''
|
@@ -41,12 +41,22 @@ module Cb
|
|
41
41
|
@job_search_url = args['JobSearchUrl'] || ''
|
42
42
|
@jrdid = args['JRDID'] || ''
|
43
43
|
@errors = args['Errors'] || nil
|
44
|
+
@browser_id = args['BrowserID'] || nil
|
45
|
+
@session_id = args['SessionID'] || ''
|
46
|
+
@test = args['Test'].to_s || false
|
47
|
+
@email_address = args['EmailAddress'] || ''
|
44
48
|
end
|
45
49
|
|
46
50
|
def create_to_xml
|
47
51
|
ret = "<Request>"
|
48
52
|
ret += "<HostSite>#{@hostsite}</HostSite>"
|
49
53
|
ret += "<Cobrand>#{@cobrand}</Cobrand>"
|
54
|
+
unless @browser_id.nil?
|
55
|
+
ret += "<BrowserID>#{@browser_id}</BrowserID>"
|
56
|
+
ret += "<SessionID>#{@session_id}</SessionID>"
|
57
|
+
ret += "<Test>#{@test}</Test>"
|
58
|
+
ret += "<EmailAddress>#{@email_address}</EmailAddress>"
|
59
|
+
end
|
50
60
|
ret += "<SearchName>#{@search_name}</SearchName>"
|
51
61
|
ret += "<SearchParameters>"
|
52
62
|
ret += "<BooleanOperator>#{@boolean_operator}</BooleanOperator>"
|
@@ -72,8 +82,10 @@ module Cb
|
|
72
82
|
ret += "<City>#{@city}</City>"
|
73
83
|
ret += "<State>#{@state}</State>"
|
74
84
|
ret += "</SearchParameters>"
|
75
|
-
ret += "<IsDailyEmail>#{@is_daily_email}</IsDailyEmail>"
|
76
|
-
|
85
|
+
ret += "<IsDailyEmail>#{@is_daily_email.upcase}</IsDailyEmail>"
|
86
|
+
if @browser_id.nil?
|
87
|
+
ret += "<ExternalUserID>#{@external_user_id}</ExternalUserID>"
|
88
|
+
end
|
77
89
|
ret += "<DeveloperKey>#{@dev_key}</DeveloperKey>"
|
78
90
|
ret += "</Request>"
|
79
91
|
|
@@ -129,5 +141,14 @@ module Cb
|
|
129
141
|
ret
|
130
142
|
end
|
131
143
|
|
144
|
+
def delete_anon_to_xml
|
145
|
+
ret = "<Request>"
|
146
|
+
ret += "<DeveloperKey>#{@dev_key}</DeveloperKey>"
|
147
|
+
ret += "<ExternalID>#{@external_id}</ExternalID>"
|
148
|
+
ret += "<Test>#{@test}</Test>"
|
149
|
+
ret += "</Request>"
|
150
|
+
|
151
|
+
ret
|
152
|
+
end
|
132
153
|
end
|
133
154
|
end
|
data/lib/cb/utils/api.rb
CHANGED
@@ -18,31 +18,28 @@ module Cb
|
|
18
18
|
def cb_get(*args, &block)
|
19
19
|
self.class.base_uri Cb.configuration.base_uri
|
20
20
|
response = self.class.get(*args, &block)
|
21
|
-
|
22
|
-
|
21
|
+
validated_response = ResponseValidator.validate(response)
|
22
|
+
set_api_error(validated_response)
|
23
23
|
|
24
|
-
|
25
|
-
return response
|
24
|
+
return validated_response
|
26
25
|
end
|
27
26
|
|
28
27
|
def cb_post(*args, &block)
|
29
28
|
self.class.base_uri Cb.configuration.base_uri_secure
|
30
29
|
response = self.class.post(*args, &block)
|
31
|
-
|
32
|
-
|
30
|
+
validated_response = ResponseValidator.validate(response)
|
31
|
+
set_api_error(validated_response)
|
33
32
|
|
34
|
-
|
35
|
-
return response
|
33
|
+
return validated_response
|
36
34
|
end
|
37
35
|
|
38
36
|
def cb_get_secure(*args, &block)
|
39
37
|
self.class.base_uri Cb.configuration.base_uri_secure
|
40
38
|
response = self.class.get(*args, &block)
|
41
|
-
|
42
|
-
|
39
|
+
validated_response = ResponseValidator.validate(response)
|
40
|
+
set_api_error(validated_response)
|
43
41
|
|
44
|
-
|
45
|
-
return response
|
42
|
+
return validated_response
|
46
43
|
end
|
47
44
|
|
48
45
|
def append_api_responses(obj, resp)
|
@@ -58,6 +55,10 @@ module Cb
|
|
58
55
|
unless meta_name.empty?
|
59
56
|
if meta_name == 'errors' && api_value.is_a?(Hash)
|
60
57
|
api_value = api_value.values
|
58
|
+
elsif meta_name == 'error' && api_value.is_a?(String)
|
59
|
+
# this is a horrible hack to get consistent object.cb_response.errors behavior for the client
|
60
|
+
meta_name = 'errors'
|
61
|
+
api_value = [api_value]
|
61
62
|
elsif self.class.is_numeric?(api_value)
|
62
63
|
api_value = api_value.to_i
|
63
64
|
end
|
@@ -109,6 +110,7 @@ module Cb
|
|
109
110
|
def get_meta_name_for(api_key)
|
110
111
|
key_map = {
|
111
112
|
'Errors' => 'errors',
|
113
|
+
'Error' => 'error',
|
112
114
|
'ApiError' => 'api_error',
|
113
115
|
'TimeResponseSent' => 'time_sent',
|
114
116
|
'TimeElapsed' => 'time_elapsed',
|
data/lib/cb/utils/validator.rb
CHANGED
@@ -9,6 +9,12 @@ module Cb
|
|
9
9
|
return self.get_empty_json_hash
|
10
10
|
end
|
11
11
|
|
12
|
+
if response.code != 200
|
13
|
+
# we only handle json or xml responses - html means something bad happened
|
14
|
+
is_html = response.response.body.include?('<!DOCTYPE html')
|
15
|
+
return self.get_empty_json_hash if is_html
|
16
|
+
end
|
17
|
+
|
12
18
|
begin
|
13
19
|
json = JSON.parse(response.response.body)
|
14
20
|
if json.keys.any?
|
data/lib/cb/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cb-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Jesse Retchko
|
@@ -18,11 +19,12 @@ authors:
|
|
18
19
|
autorequire:
|
19
20
|
bindir: bin
|
20
21
|
cert_chain: []
|
21
|
-
date: 2013-
|
22
|
+
date: 2013-09-05 00:00:00.000000000 Z
|
22
23
|
dependencies:
|
23
24
|
- !ruby/object:Gem::Dependency
|
24
25
|
name: httparty
|
25
26
|
requirement: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
26
28
|
requirements:
|
27
29
|
- - ~>
|
28
30
|
- !ruby/object:Gem::Version
|
@@ -30,6 +32,7 @@ dependencies:
|
|
30
32
|
type: :runtime
|
31
33
|
prerelease: false
|
32
34
|
version_requirements: !ruby/object:Gem::Requirement
|
35
|
+
none: false
|
33
36
|
requirements:
|
34
37
|
- - ~>
|
35
38
|
- !ruby/object:Gem::Version
|
@@ -37,6 +40,7 @@ dependencies:
|
|
37
40
|
- !ruby/object:Gem::Dependency
|
38
41
|
name: json
|
39
42
|
requirement: !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
40
44
|
requirements:
|
41
45
|
- - ~>
|
42
46
|
- !ruby/object:Gem::Version
|
@@ -44,6 +48,7 @@ dependencies:
|
|
44
48
|
type: :runtime
|
45
49
|
prerelease: false
|
46
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
47
52
|
requirements:
|
48
53
|
- - ~>
|
49
54
|
- !ruby/object:Gem::Version
|
@@ -51,6 +56,7 @@ dependencies:
|
|
51
56
|
- !ruby/object:Gem::Dependency
|
52
57
|
name: nori
|
53
58
|
requirement: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
54
60
|
requirements:
|
55
61
|
- - ~>
|
56
62
|
- !ruby/object:Gem::Version
|
@@ -58,10 +64,27 @@ dependencies:
|
|
58
64
|
type: :runtime
|
59
65
|
prerelease: false
|
60
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
none: false
|
61
68
|
requirements:
|
62
69
|
- - ~>
|
63
70
|
- !ruby/object:Gem::Version
|
64
71
|
version: 2.2.0
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: nokogiri
|
74
|
+
requirement: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ~>
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: 1.6.0
|
80
|
+
type: :runtime
|
81
|
+
prerelease: false
|
82
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ~>
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: 1.6.0
|
65
88
|
description: Ruby wrapper for Careerbuilder Public API.
|
66
89
|
email:
|
67
90
|
- Jesse.Retchko@Careerbuilder.com
|
@@ -79,6 +102,7 @@ executables: []
|
|
79
102
|
extensions: []
|
80
103
|
extra_rdoc_files: []
|
81
104
|
files:
|
105
|
+
- lib/cb/clients/anon_saved_search_api.rb
|
82
106
|
- lib/cb/clients/application_api.rb
|
83
107
|
- lib/cb/clients/application_external_api.rb
|
84
108
|
- lib/cb/clients/category_api.rb
|
@@ -134,25 +158,26 @@ files:
|
|
134
158
|
- README.md
|
135
159
|
homepage: http://api.careerbuilder.com
|
136
160
|
licenses: []
|
137
|
-
metadata: {}
|
138
161
|
post_install_message:
|
139
162
|
rdoc_options: []
|
140
163
|
require_paths:
|
141
164
|
- lib
|
142
165
|
required_ruby_version: !ruby/object:Gem::Requirement
|
166
|
+
none: false
|
143
167
|
requirements:
|
144
168
|
- - ! '>='
|
145
169
|
- !ruby/object:Gem::Version
|
146
170
|
version: '0'
|
147
171
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
172
|
+
none: false
|
148
173
|
requirements:
|
149
174
|
- - ! '>='
|
150
175
|
- !ruby/object:Gem::Version
|
151
176
|
version: '0'
|
152
177
|
requirements: []
|
153
178
|
rubyforge_project:
|
154
|
-
rubygems_version:
|
179
|
+
rubygems_version: 1.8.25
|
155
180
|
signing_key:
|
156
|
-
specification_version:
|
181
|
+
specification_version: 3
|
157
182
|
summary: Ruby wrapper around Careerbuilder Public API.
|
158
183
|
test_files: []
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
MWMzNTY1M2QxOTc2OGViODU2MDhjZGQyNjkwMDRjMWFmNTNhM2IwYg==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NDk1NDlkZDY2NWQ0MThhNjJkMDU3MzQxZDVjZWUxNDNjZjIzNDlkOQ==
|
7
|
-
!binary "U0hBNTEy":
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
NDJjNGFiZWRkZWFiZmFmNzQ0ZDk0ODhjMjAyZTVjMTIzODg0YjI5NTMyMjA1
|
10
|
-
NTAwYzA2ZWM5YzE1YmRkYWQ4NDU1MTlkYzNiOGM2YjNiZGQ2MzQ3YWFlYWVm
|
11
|
-
ZTEwYmJiY2VjOGY3ZGE4OTc5YzI2NzVlZjg3YzljNjU0NmJlNzA=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
YjYzZGE4MWZmYTJiZDBmNDJlYmUzNjM2NGViZDg1YTg1MDY0NDAzZTRjOGMx
|
14
|
-
MWE4ZDQ4YjJlM2NkZGEwMzYyMTM4ZWNkMzYxMWFmMDlhYmVmNmMwMDNjZmRk
|
15
|
-
MmM1ZjQyNGI5MTljOWUxZjgyMzExZjVkMzA4ZWM2ODFlMTY4OTQ=
|