Skip to content

Commit

Permalink
Merge pull request #3 from ninoseki/refactoring
Browse files Browse the repository at this point in the history
refactor: remove authentication from initialize method
  • Loading branch information
ninoseki committed Oct 17, 2019
2 parents f3a9db9 + f236cd5 commit 495fde4
Showing 1 changed file with 17 additions and 7 deletions.
24 changes: 17 additions & 7 deletions lib/zoomeye/api.rb
Expand Up @@ -3,23 +3,33 @@
module ZoomEye
class API
def initialize(username: ENV["ZOOMEYE_USERNAME"], password: ENV["ZOOMEYE_PASSWORD"])
raise ArgumentError, "No usernamme has been found or provided!" unless username
raise ArgumentError, "No password has been found or provided!" unless password
@username = username
raise ArgumentError, "No usernamme has been found or provided!" unless @username

user = Clients::User.new(username: username, password: password)
@access_token = user.access_token
@password = password
raise ArgumentError, "No password has been found or provided!" unless @password
end

def user
@user ||= Clients::User.new(username: @username, password: @password)
end

def web
@web ||= Clients::Web.new(access_token: @access_token)
@web ||= Clients::Web.new(access_token: access_token)
end

def host
@host ||= Clients::Host.new(access_token: @access_token)
@host ||= Clients::Host.new(access_token: access_token)
end

def resource_info
@resource_info ||= Clients::ResourceInfo.new(access_token: @access_token)
@resource_info ||= Clients::ResourceInfo.new(access_token: access_token)
end

private

def access_token
@access_token ||= user.access_token
end
end
end

0 comments on commit 495fde4

Please sign in to comment.