class GitSleep::Communicator

Public Instance Methods

can_commit?() click to toggle source
# File lib/git-sleep/communicator.rb, line 30
def can_commit?
  data['can_commit']
end
can_connect?() click to toggle source
# File lib/git-sleep/communicator.rb, line 8
def can_connect?
  reset_data!
  true
# TODO: be more specific
# only rescue httparty error related to inability to connect
rescue StandardError
  false
end
happy_response?() click to toggle source
# File lib/git-sleep/communicator.rb, line 17
def happy_response?
  response.code == 200
end
hours_of_sleep() click to toggle source
# File lib/git-sleep/communicator.rb, line 34
def hours_of_sleep
  data['sleep24']
end
not_signed_up_message() click to toggle source
# File lib/git-sleep/communicator.rb, line 25
def not_signed_up_message
  "Must first authorize at #{GitSleep::OUR_SITE}\n" \
    'Then run `git sleep authorize`'
end
not_signed_up_response?() click to toggle source
# File lib/git-sleep/communicator.rb, line 21
def not_signed_up_response?
  response.code == 401
end
username() click to toggle source
# File lib/git-sleep/communicator.rb, line 38
def username
  ENV['USER']
end

Private Instance Methods

auth() click to toggle source
# File lib/git-sleep/communicator.rb, line 68
def auth
  Authorizer.instance
end
data() click to toggle source
# File lib/git-sleep/communicator.rb, line 44
def data
  @data ||= response.parsed_response
end
need_sleep_url() click to toggle source
# File lib/git-sleep/communicator.rb, line 64
def need_sleep_url
  'http://www.gitsleep.com/api/need_sleep'
end
reset_data!() click to toggle source
# File lib/git-sleep/communicator.rb, line 58
def reset_data!
  @response = nil
  @data = nil
  data
end
response() click to toggle source
# File lib/git-sleep/communicator.rb, line 48
def response
  @response ||= HTTParty.get(
    need_sleep_url,
    timeout: 2,
    body: {
      xid: auth.xid
    }
  )
end