cb-api 20.6.0 → 21.0.0.pre1
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 +4 -4
- data/CHANGELOG.md +1 -0
- data/lib/cb/{requests/data_lists/desired_job_type.rb → clients/browser_id.rb} +8 -8
- data/lib/cb/clients/data_list.rb +40 -0
- data/lib/cb/config.rb +2 -18
- data/lib/cb/convenience.rb +4 -16
- data/lib/cb/exceptions.rb +7 -2
- data/lib/cb/utils/response_map.rb +1 -16
- data/lib/cb/utils/validator.rb +13 -2
- data/lib/cb/version.rb +1 -1
- metadata +6 -44
- data/lib/cb/clients/category.rb +0 -55
- data/lib/cb/clients/education.rb +0 -35
- data/lib/cb/clients/employee_types.rb +0 -36
- data/lib/cb/clients/industry.rb +0 -23
- data/lib/cb/models/implementations/category.rb +0 -34
- data/lib/cb/models/implementations/cover_letter.rb +0 -25
- data/lib/cb/models/implementations/data_lists/resume_data_list.rb +0 -26
- data/lib/cb/models/implementations/education.rb +0 -27
- data/lib/cb/models/implementations/employee_type.rb +0 -23
- data/lib/cb/models/implementations/industry.rb +0 -32
- data/lib/cb/models/implementations/work_status.rb +0 -33
- data/lib/cb/requests/category/search.rb +0 -33
- data/lib/cb/requests/cover_letter/delete.rb +0 -38
- data/lib/cb/requests/cover_letter/list.rb +0 -31
- data/lib/cb/requests/cover_letter/retrieve.rb +0 -34
- data/lib/cb/requests/cover_letter/update.rb +0 -40
- data/lib/cb/requests/data_lists/countries.rb +0 -23
- data/lib/cb/requests/data_lists/data_list_base.rb +0 -50
- data/lib/cb/requests/data_lists/education_codes.rb +0 -23
- data/lib/cb/requests/data_lists/languages.rb +0 -23
- data/lib/cb/requests/data_lists/state.rb +0 -38
- data/lib/cb/requests/education/get.rb +0 -33
- data/lib/cb/requests/resumes/language_codes.rb +0 -34
- data/lib/cb/requests/resumes/list.rb +0 -34
- data/lib/cb/requests/work_status/list.rb +0 -33
- data/lib/cb/responses/category/search.rb +0 -53
- data/lib/cb/responses/cover_letter/delete.rb +0 -27
- data/lib/cb/responses/cover_letter/list.rb +0 -39
- data/lib/cb/responses/cover_letter/retrieve.rb +0 -39
- data/lib/cb/responses/cover_letter/status.rb +0 -31
- data/lib/cb/responses/cover_letter/update.rb +0 -27
- data/lib/cb/responses/data_list/state.rb +0 -31
- data/lib/cb/responses/data_lists/resume_data_list.rb +0 -41
- data/lib/cb/responses/education/get.rb +0 -53
- data/lib/cb/responses/employee_types/search.rb +0 -55
- data/lib/cb/responses/industry/search.rb +0 -55
- data/lib/cb/responses/resumes/language_codes.rb +0 -45
- data/lib/cb/responses/resumes/resume_list.rb +0 -31
- data/lib/cb/responses/work_status/list.rb +0 -43
@@ -1,40 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require 'cb/requests/base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module CoverLetter
|
16
|
-
class Update < Base
|
17
|
-
def endpoint_uri
|
18
|
-
Cb.configuration.uri_cover_letter_update
|
19
|
-
end
|
20
|
-
|
21
|
-
def http_method
|
22
|
-
:post
|
23
|
-
end
|
24
|
-
|
25
|
-
def body
|
26
|
-
<<-eos
|
27
|
-
<Request>
|
28
|
-
<DeveloperKey>#{ Cb.configuration.dev_key }</DeveloperKey>
|
29
|
-
<ExternalID>#{ args[:external_id] }</ExternalID>
|
30
|
-
<ExternalUserID>#{ args[:external_user_id] }</ExternalUserID>
|
31
|
-
<CoverLetterTitle>#{ args[:cover_letter_title] }</CoverLetterTitle>
|
32
|
-
<Text>#{ args[:text] }</Text>
|
33
|
-
<Test>#{ args[:test] || false }</Test>
|
34
|
-
</Request>
|
35
|
-
eos
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative 'data_list_base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module DataLists
|
16
|
-
class Countries < DataListBase
|
17
|
-
def api_uri
|
18
|
-
Cb.configuration.uri_countries
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
module Cb
|
12
|
-
module Requests
|
13
|
-
module DataLists
|
14
|
-
class DataListBase
|
15
|
-
attr_reader :token, :args
|
16
|
-
|
17
|
-
def initialize(token, args)
|
18
|
-
@token = token
|
19
|
-
@args = args
|
20
|
-
end
|
21
|
-
|
22
|
-
def get
|
23
|
-
Cb::Responses::ResumeDataList.new request.parsed
|
24
|
-
end
|
25
|
-
|
26
|
-
def api_uri
|
27
|
-
fail NotImplementedError.new __method__
|
28
|
-
end
|
29
|
-
|
30
|
-
private
|
31
|
-
|
32
|
-
def request
|
33
|
-
token.get(uri)
|
34
|
-
end
|
35
|
-
|
36
|
-
def uri
|
37
|
-
base_uri + query_string
|
38
|
-
end
|
39
|
-
|
40
|
-
def base_uri
|
41
|
-
Cb.configuration.base_uri + api_uri
|
42
|
-
end
|
43
|
-
|
44
|
-
def query_string
|
45
|
-
args['countrycode'] ? "?countrycode=#{args['countrycode']}" : '?countrycode=US'
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative 'data_list_base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module DataLists
|
16
|
-
class EducationCodes < DataListBase
|
17
|
-
def api_uri
|
18
|
-
Cb.configuration.uri_resume_education
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative 'data_list_base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module DataLists
|
16
|
-
class Languages < DataListBase
|
17
|
-
def api_uri
|
18
|
-
Cb.configuration.uri_languages
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,38 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative '../base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module State
|
16
|
-
class Get < Base
|
17
|
-
def base_uri
|
18
|
-
'https://www.careerbuilder.com'
|
19
|
-
end
|
20
|
-
|
21
|
-
def endpoint_uri
|
22
|
-
Cb.configuration.uri_state_list
|
23
|
-
end
|
24
|
-
|
25
|
-
def http_method
|
26
|
-
:get
|
27
|
-
end
|
28
|
-
|
29
|
-
def query
|
30
|
-
{
|
31
|
-
countryCode: args[:country_code],
|
32
|
-
outputjson: true
|
33
|
-
}
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative '../base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module Education
|
16
|
-
class Get < Base
|
17
|
-
def endpoint_uri
|
18
|
-
Cb.configuration.uri_education_code
|
19
|
-
end
|
20
|
-
|
21
|
-
def http_method
|
22
|
-
:get
|
23
|
-
end
|
24
|
-
|
25
|
-
def query
|
26
|
-
{
|
27
|
-
CountryCode: @args[:country_code]
|
28
|
-
}
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative '../base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module Resumes
|
16
|
-
class LanguageCodes < Base
|
17
|
-
def endpoint_uri
|
18
|
-
Cb.configuration.uri_resume_language_codes
|
19
|
-
end
|
20
|
-
|
21
|
-
def http_method
|
22
|
-
:get
|
23
|
-
end
|
24
|
-
|
25
|
-
def headers
|
26
|
-
{
|
27
|
-
'DeveloperKey' => Cb.configuration.dev_key,
|
28
|
-
'Content-Type' => 'application/json;version=1.0'
|
29
|
-
}
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative '../base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module Resumes
|
16
|
-
class List < Base
|
17
|
-
def endpoint_uri
|
18
|
-
Cb.configuration.uri_resume_list
|
19
|
-
end
|
20
|
-
|
21
|
-
def http_method
|
22
|
-
:get
|
23
|
-
end
|
24
|
-
|
25
|
-
def query
|
26
|
-
{
|
27
|
-
HostSite: args[:host_site] || Cb.configuration.host_site,
|
28
|
-
OAuthToken: args[:oauth_token]
|
29
|
-
}
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative '../base'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Requests
|
15
|
-
module WorkStatus
|
16
|
-
class List < Base
|
17
|
-
def endpoint_uri
|
18
|
-
Cb.configuration.uri_work_status_list
|
19
|
-
end
|
20
|
-
|
21
|
-
def http_method
|
22
|
-
:get
|
23
|
-
end
|
24
|
-
|
25
|
-
def query
|
26
|
-
{
|
27
|
-
HostSite: @args[:host_site]
|
28
|
-
}
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,53 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require 'cb/responses/api_response'
|
12
|
-
|
13
|
-
module Cb
|
14
|
-
module Responses
|
15
|
-
module Category
|
16
|
-
class Search < ApiResponse
|
17
|
-
protected
|
18
|
-
|
19
|
-
def hash_containing_metadata
|
20
|
-
response
|
21
|
-
end
|
22
|
-
|
23
|
-
def validate_api_hash
|
24
|
-
required_response_field(response_node, response)
|
25
|
-
required_response_field(categories_node, response[response_node])
|
26
|
-
required_response_field(category_node, response[response_node][categories_node])
|
27
|
-
end
|
28
|
-
|
29
|
-
def extract_models
|
30
|
-
model_array.map { |category| Cb::Models::Category.new(category) }
|
31
|
-
end
|
32
|
-
|
33
|
-
private
|
34
|
-
|
35
|
-
def response_node
|
36
|
-
'ResponseCategories'
|
37
|
-
end
|
38
|
-
|
39
|
-
def categories_node
|
40
|
-
'Categories'
|
41
|
-
end
|
42
|
-
|
43
|
-
def category_node
|
44
|
-
'Category'
|
45
|
-
end
|
46
|
-
|
47
|
-
def model_array
|
48
|
-
response[response_node][categories_node][category_node]
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
require_relative 'status'
|
12
|
-
require_relative '../nil_model'
|
13
|
-
|
14
|
-
module Cb
|
15
|
-
module Responses
|
16
|
-
module CoverLetter
|
17
|
-
class Delete < ApiResponse
|
18
|
-
include Cb::Responses::CoverLetter::Status
|
19
|
-
include Cb::Responses::NilModel
|
20
|
-
|
21
|
-
def root_node
|
22
|
-
'ResponseUserDelete'
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
# Copyright 2015 CareerBuilder, LLC
|
2
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
-
# you may not use this file except in compliance with the License.
|
4
|
-
# You may obtain a copy of the License at
|
5
|
-
#
|
6
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
8
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
-
# See the License for the specific language governing permissions and limitations under the License.
|
11
|
-
module Cb
|
12
|
-
module Responses
|
13
|
-
module CoverLetter
|
14
|
-
class List < ApiResponse
|
15
|
-
private
|
16
|
-
|
17
|
-
def extract_models
|
18
|
-
[ cover_letters_node ].flatten.map { |api_cover_letter| Models::CoverLetter.new api_cover_letter }
|
19
|
-
end
|
20
|
-
|
21
|
-
def validate_api_hash
|
22
|
-
required_response_field(root_node, response)
|
23
|
-
end
|
24
|
-
|
25
|
-
def hash_containing_metadata
|
26
|
-
response
|
27
|
-
end
|
28
|
-
|
29
|
-
def cover_letters_node
|
30
|
-
response[root_node]['CoverLetters'].nil? ? [] : response[root_node]['CoverLetters']['CoverLetter']
|
31
|
-
end
|
32
|
-
|
33
|
-
def root_node
|
34
|
-
'ResponseListCoverLetters'
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|