Class: GetGithubPubKeys::Client

Inherits:
Object
  • Object
show all
Includes:
Connection, Files
Defined in:
lib/get_github_pub_keys/client.rb

Constant Summary

Constants included from Files

Files::DEFAULT_IDENTIFY, Files::DEFAULT_SSH_DIRECTORY

Instance Method Summary collapse

Methods included from Files

create

Methods included from Connection

new

Constructor Details

#initialize(user = nil) ⇒ Client

Returns a new instance of Client.



9
10
11
# File 'lib/get_github_pub_keys/client.rb', line 9

def initialize(user=nil) 
  @user = user
end

Instance Method Details

#find_and_create(options = {}) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/get_github_pub_keys/client.rb', line 13

def find_and_create( options = {} )
  response = Connection.new(options).get("users/#{@user}/keys")   
  public_keys = response.body

  # FIXME:response.raise_errorが正しく動作するのかを確認する
  # 登録されていないUserだとfile_nameがとれない
  if public_keys.is_a? Array
    public_keys.each do |public_key| 
      GetGithubPubKeys::Files.create public_key["id"], public_key["key"]
    end
  else
    GetGithubPubKeys::Files.create public_keys["id"], public_keys["key"]
  end
end