Module: PointClient

Defined in:
lib/point_client.rb,
lib/point_client/client.rb,
lib/point_client/version.rb

Defined Under Namespace

Classes: Client

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.baseConnectionObject



28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/point_client.rb', line 28

def self.baseConnection
  conn = Faraday::Connection.new(:url => @endpoint) do |builder|
    builder.use Faraday::Request::UrlEncoded  # リクエストパラメータを URL エンコードする
    builder.use Faraday::Response::Logger     # リクエストを標準出力に出力する
    builder.use Faraday::Adapter::NetHttp     # Net/HTTP をアダプターに使う
    builder.use FaradayMiddleware::EncodeJson
    builder.use FaradayMiddleware::Instrumentation
  end

  conn.authorization :Bearer, @token

  return conn
end

.create(endpoint, username, password, client_id, client_secret) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/point_client.rb', line 8

def self.create(endpoint, username, password, client_id, client_secret)
  @endpoint = endpoint

  conn = Faraday::Connection.new(:url => endpoint) do |builder|
    builder.use Faraday::Request::UrlEncoded  # リクエストパラメータを URL エンコードする
    builder.use Faraday::Response::Logger     # リクエストを標準出力に出力する
    builder.use Faraday::Adapter::NetHttp     # Net/HTTP をアダプターに使う
    builder.use FaradayMiddleware::EncodeJson
    builder.use FaradayMiddleware::ParseJson, :content_type => /\bjson$/
    builder.use FaradayMiddleware::Instrumentation
  end
  conn.response :json

  result = conn.get '/draft1/auth/token?client_id=%s&client_secret=%s&grant_type=password&username=%s&password=%s' % [client_id, client_secret, username, password]

  @token = result.body['access_token']

  PointClient::Client.new
end

.jsonConnectionObject



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# File 'lib/point_client.rb', line 42

def self.jsonConnection
  conn = Faraday::Connection.new(:url => @endpoint) do |builder|
    builder.use Faraday::Request::UrlEncoded  # リクエストパラメータを URL エンコードする
    builder.use Faraday::Response::Logger     # リクエストを標準出力に出力する
    builder.use Faraday::Adapter::NetHttp     # Net/HTTP をアダプターに使う
    builder.use FaradayMiddleware::EncodeJson

    builder.use FaradayMiddleware::ParseJson, :content_type => /\bjson$/
    builder.use FaradayMiddleware::Instrumentation
  end

  conn.authorization :Bearer, @token

  conn.response :json
  conn.request :json

  return conn
end