adding refresh_authorization
write_credentials now using the authorizations methods not the instance variables, Using the instance variables can cause problems.
This is a (potentially rough) bit of code to persist OAuth 2
credentials to disk, similar to
http://google-api-python-client.googlecode.com/hg/docs/epy/oauth2client.
file.Storage-class.html
It can be used in the following manner, which roughly translates to
what the Python client library code looks like.
file_storage = Google::APIClient::FileStorage.new("#{$0}-oauth2.json")
if file_storage.authorization.nil?
client_secrets = Google::APIClient::ClientSecrets.load
flow = Google::APIClient::InstalledAppFlow.new(
:client_id => client_secrets.client_id,
:client_secret => client_secrets.client_secret,
:scope => [SCOPE1, SCOPE2]
)
client.authorization = flow.authorize(file_storage)
else
client.authorization = file_storage.authorization
end