cortex-client 0.0.1 → 0.1.0
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/.travis.yml +6 -0
- data/Gemfile.lock +18 -7
- data/README.md +10 -2
- data/cortex-client.gemspec +2 -1
- data/lib/cortex/client.rb +18 -4
- data/lib/cortex/connection.rb +6 -1
- data/lib/cortex/posts.rb +4 -0
- data/lib/cortex/version.rb +1 -1
- metadata +20 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 14e4d0039502bbee65900225823ccd7f958b0981
|
4
|
+
data.tar.gz: ac459ec522c256092704e54c9158d07e056d3281
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3afa800d12de8481d5e230c10188fdbeee788bb8ed5fb645ee928cd3006d53c6e8f6b92daf2aa4919fdad65e0bd9c8827968a2ba33b40e5ab9925ff7b9653d4c
|
7
|
+
data.tar.gz: dc6cac4fde0ecaf8044b0ae0c518f637b60e0b9bcb7c669e0278d5a556779021069cd71b78bcef3d1ad3d4c58cd0efa41471237fb37d93a52c252879f790db22
|
data/.travis.yml
ADDED
data/Gemfile.lock
CHANGED
@@ -1,19 +1,30 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cortex-client (0.0
|
5
|
-
faraday (~> 0.
|
4
|
+
cortex-client (0.1.0)
|
5
|
+
faraday (~> 0.9)
|
6
6
|
faraday_middleware (~> 0.9.0)
|
7
|
+
oauth2 (~> 0.9)
|
7
8
|
|
8
9
|
GEM
|
9
10
|
remote: https://rubygems.org/
|
10
11
|
specs:
|
11
12
|
diff-lcs (1.2.5)
|
12
|
-
faraday (0.
|
13
|
-
multipart-post (
|
14
|
-
faraday_middleware (0.9.
|
15
|
-
faraday (>= 0.7.4, < 0.
|
16
|
-
|
13
|
+
faraday (0.9.0)
|
14
|
+
multipart-post (>= 1.2, < 3)
|
15
|
+
faraday_middleware (0.9.1)
|
16
|
+
faraday (>= 0.7.4, < 0.10)
|
17
|
+
jwt (1.0.0)
|
18
|
+
multi_json (1.10.1)
|
19
|
+
multi_xml (0.5.5)
|
20
|
+
multipart-post (2.0.0)
|
21
|
+
oauth2 (0.9.4)
|
22
|
+
faraday (>= 0.8, < 0.10)
|
23
|
+
jwt (~> 1.0)
|
24
|
+
multi_json (~> 1.3)
|
25
|
+
multi_xml (~> 0.5)
|
26
|
+
rack (~> 1.2)
|
27
|
+
rack (1.5.2)
|
17
28
|
rake (10.2.2)
|
18
29
|
rspec (2.14.1)
|
19
30
|
rspec-core (~> 2.14.0)
|
data/README.md
CHANGED
@@ -1,18 +1,26 @@
|
|
1
1
|
# cortex-client
|
2
|
+
|
3
|
+
[](https://travis-ci.org/cb-talent-development/cortex-client)
|
4
|
+
[](http://badge.fury.io/rb/cortex-client)
|
5
|
+
|
2
6
|
Ruby client library for [cortex](https://github.com/cb-talent-development/cortex)'s API.
|
3
7
|
|
4
|
-
|
8
|
+
**0.1 Changes the constructor**
|
9
|
+
|
10
|
+
Please note that 0.1.0 and onward now require a hash be passed. You can access the previous functionality with the access_token key:
|
5
11
|
|
6
12
|
```ruby
|
7
13
|
require 'cortex-client'
|
8
14
|
|
9
|
-
client = Cortex::Client.new(access_token)
|
15
|
+
client = Cortex::Client.new(access_token: access_token)
|
10
16
|
|
11
17
|
client.posts.query().each do |post|
|
12
18
|
puts post
|
13
19
|
end
|
14
20
|
```
|
15
21
|
|
22
|
+
Alternatively, cortex-client will handle
|
23
|
+
|
16
24
|
### Supported Endpoints
|
17
25
|
|
18
26
|
- *Users* - me, get ,save
|
data/cortex-client.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.add_development_dependency 'rake'
|
17
17
|
s.add_development_dependency 'rspec'
|
18
18
|
|
19
|
-
s.add_dependency 'faraday', '~> 0.
|
19
|
+
s.add_dependency 'faraday', '~> 0.9'
|
20
20
|
s.add_dependency 'faraday_middleware', '~> 0.9.0'
|
21
|
+
s.add_dependency 'oauth2', '~>0.9'
|
21
22
|
end
|
data/lib/cortex/client.rb
CHANGED
@@ -3,20 +3,34 @@ require 'cortex/request'
|
|
3
3
|
require 'cortex/resource'
|
4
4
|
require 'cortex/posts'
|
5
5
|
require 'cortex/users'
|
6
|
+
require 'oauth2'
|
6
7
|
|
7
8
|
module Cortex
|
8
9
|
class Client
|
9
10
|
attr_reader :posts, :users
|
10
|
-
attr_accessor :access_token, :base_url
|
11
|
+
attr_accessor :access_token, :base_url, :auth_method
|
12
|
+
@key = ''
|
13
|
+
@secret = ''
|
11
14
|
|
12
15
|
include Cortex::Connection
|
13
16
|
include Cortex::Request
|
14
17
|
|
15
|
-
def initialize(
|
16
|
-
@
|
17
|
-
|
18
|
+
def initialize(hasharg)
|
19
|
+
@base_url = hasharg[:base_url] || 'https://cbcortex.com/api/v1/'
|
20
|
+
if hasharg.has_key? :access_token
|
21
|
+
@access_token = hasharg[:access_token]
|
22
|
+
else
|
23
|
+
@key = hasharg[:key]
|
24
|
+
@secret = hasharg[:secret]
|
25
|
+
@access_token = get_cc_token
|
26
|
+
end
|
18
27
|
@posts = Cortex::Posts.new(self)
|
19
28
|
@users = Cortex::Users.new(self)
|
20
29
|
end
|
30
|
+
|
31
|
+
def get_cc_token
|
32
|
+
client = OAuth2::Client.new(@key, @secret, site: @base_url)
|
33
|
+
client.client_credentials.get_token
|
34
|
+
end
|
21
35
|
end
|
22
36
|
end
|
data/lib/cortex/connection.rb
CHANGED
@@ -10,8 +10,13 @@ module Cortex
|
|
10
10
|
},
|
11
11
|
:url => base_url
|
12
12
|
}
|
13
|
+
|
14
|
+
if access_token.is_a?(OAuth2::AccessToken) && access_token.expired?
|
15
|
+
@access_token = get_cc_token
|
16
|
+
end
|
17
|
+
|
13
18
|
Faraday.new options do |conn|
|
14
|
-
conn.request :oauth2, access_token
|
19
|
+
conn.request :oauth2, access_token.is_a?(OAuth2::AccessToken) ? access_token.token : access_token
|
15
20
|
conn.request :json
|
16
21
|
conn.response :json, :content_type => /\bjson$/
|
17
22
|
conn.adapter Faraday.default_adapter
|
data/lib/cortex/posts.rb
CHANGED
data/lib/cortex/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cortex-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bennett Goble
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: '0.9'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: '0.9'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: faraday_middleware
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,12 +66,27 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 0.9.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: oauth2
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.9'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.9'
|
69
83
|
description:
|
70
84
|
email:
|
71
85
|
executables: []
|
72
86
|
extensions: []
|
73
87
|
extra_rdoc_files: []
|
74
88
|
files:
|
89
|
+
- ".travis.yml"
|
75
90
|
- Gemfile
|
76
91
|
- Gemfile.lock
|
77
92
|
- LICENSE
|
@@ -111,7 +126,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
126
|
version: '0'
|
112
127
|
requirements: []
|
113
128
|
rubyforge_project:
|
114
|
-
rubygems_version: 2.2.
|
129
|
+
rubygems_version: 2.2.2
|
115
130
|
signing_key:
|
116
131
|
specification_version: 4
|
117
132
|
summary: Cortex API Client
|