cortex-client 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
[![Build Status](https://travis-ci.org/cb-talent-development/cortex-client.svg)](https://travis-ci.org/cb-talent-development/cortex-client)
|
4
|
+
[![Gem Version](https://badge.fury.io/rb/cortex-client.svg)](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
|