lib/spaceship/client.rb in spaceship-0.7.0 vs lib/spaceship/client.rb in spaceship-0.9.0
- old
+ new
@@ -16,10 +16,13 @@
PROTOCOL_VERSION = "QH65B2"
attr_reader :client
attr_accessor :cookie
+ # The user that is currently logged in
+ attr_accessor :user
+
# The logger in which all requests are logged
# /tmp/spaceship[time].log by default
attr_accessor :logger
# Invalid user credentials were provided
@@ -146,10 +149,11 @@
if user.to_s.strip.empty? or password.to_s.strip.empty?
raise NoUserCredentialsError.new, "No login data provided"
end
+ self.user = user
send_login_request(user, password) # different in subclasses
end
# @return (Bool) Do we have a valid session?
def session?
@@ -184,14 +188,14 @@
@csrf_tokens || {}
end
def request(method, url_or_path = nil, params = nil, headers = {}, &block)
if session?
- headers.merge!({'Cookie' => cookie})
+ headers.merge!({ 'Cookie' => cookie })
headers.merge!(csrf_tokens)
end
- headers.merge!({'User-Agent' => 'spaceship'})
+ headers.merge!({ 'User-Agent' => 'spaceship' })
# Before encoding the parameters, log them
log_request(method, url_or_path, params)
# form-encode the params only if there are params, and the block is not supplied.
@@ -244,10 +248,10 @@
end
end
def encode_params(params, headers)
params = Faraday::Utils::ParamsHash[params].to_query
- headers = {'Content-Type' => 'application/x-www-form-urlencoded'}.merge(headers)
+ headers = { 'Content-Type' => 'application/x-www-form-urlencoded' }.merge(headers)
return params, headers
end
end
end