Commit Graph

293 Commits

Author SHA1 Message Date
Jeff Posnick fb67a021e7 Added Google::APIClient::FileStorage, to save OAuth 2 credentials to disk
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
2013-05-29 15:31:44 -04:00
Steven Bazyl aa7a254d23 Allow options when executing batch requests (#48) 2013-05-13 15:19:25 -07:00
Steven Bazyl 794c6a90f7 Upgrade to Faraday 0.9 (fixes params encoding problems) 2013-05-13 14:03:49 -07:00
Steven Bazyl bfafe1b0c8 Minor release 2013-03-25 21:37:52 -07:00
Steven Bazyl d9033a4f2a Remove broken require 2013-03-18 12:31:59 -07:00
Steven Bazyl 0b45f0d8b6 Check for existance of Railties (instead of Rails) before loading railtie) 2013-03-18 12:22:12 -07:00
Steven Bazyl 2c38f9fd09 Fix referesh of oauth token when passing credentials as param 2013-03-17 16:33:27 -07:00
Steven Bazyl ef4c5c1f2f Fix URI in batched request to allow query parameters 2013-02-15 13:13:58 -08:00
Steven Bazyl f421551018 Fix duplication of parameters in qeuery string 2013-01-22 22:14:50 -08:00
Steven Bazyl 0dafa5e4ee Minor release for updating signet 2013-01-18 09:21:13 -08:00
Steven Bazyl f369139b32 Minor release to fix service account impersonation 2013-01-14 17:00:58 -08:00
Oxana Goutnik 7d204ac507 fix for #22 impersonation 2013-01-12 10:29:47 -05:00
Steve Bazyl ee6f8ae6f9 Merge pull request #20 from simplymeasured/feature/make-autorefresh-of-token-optional
incorporate style feedback from @sporkmonger on #19 ab23fe7539
2013-01-04 16:59:20 -08:00
Steven Bazyl 55b4a94715 Fix odd conflict with VERSION & logger 2013-01-04 16:49:27 -08:00
Steven Bazyl 8ce4d052fe Add oauth helper for installed apps, update CLI 2013-01-04 16:14:59 -08:00
Steven Bazyl 1d7315ee9b Sprinkle of logging 2013-01-04 16:14:14 -08:00
Ryan Biesemeyer 84ddf9ba3c incorporate style feedback from @sporkmonger on ab23fe7539 2013-01-04 21:50:19 +00:00
Steven Bazyl 31a78788bd Add railtie 2013-01-02 20:07:17 -08:00
Steven Bazyl 7e3cacdb0e Define custom load/dump for serializing API instances 2013-01-02 16:13:26 -08:00
Steven Bazyl be3b436f58 Fix JWT example in docs 2013-01-02 16:12:47 -08:00
Steven Bazyl a631c4003a Read keyfile in binary mode 2013-01-02 12:59:43 -08:00
Steven Bazyl 1f0ea6338e Remove stray output to STDOUT 2013-01-02 12:55:52 -08:00
Steven Bazyl 250e9e7b2d Merge branch 'master' of https://github.com/google/google-api-ruby-client 2013-01-02 11:51:15 -08:00
Steven Bazyl 71fbe4a825 Use JWT support in signet, ignore broken PKCS12 tests on jruby 2013-01-02 11:50:45 -08:00
Steven Bazyl 8f453134d7 Initial logging support 2012-12-30 11:26:18 -08:00
Steve Bazyl 6b9d4bc879 Merge pull request #19 from simplymeasured/feature/make-autorefresh-of-token-optional
Make the auto-refresh of tokens configurable and optional
2012-12-30 11:21:56 -08:00
Steve Bazyl 8c2b734ef1 Merge pull request #13 from sanemat/multi-json-in-rails-case
Compatible multi_json >= 1.0.0 with Rails3.2.8
2012-12-30 11:20:01 -08:00
Ryan Biesemeyer ab23fe7539 Make the auto-refresh of tokens configurable and optional; in distributed environments, this allows us to handle token refreshes in a way that does not hammer the auth endpoint. 2012-12-29 00:02:02 +00:00
Ranjib Dey bd04489a43 Ranjib| there is n method/instance variable named options inside serialize, to_hash should be invoke on 'body' instead 2012-12-27 13:36:08 -08:00
Steven Bazyl b0b03cc363 Fix stackoverflow tag, minor doc cleanup for batch API 2012-11-05 11:05:48 -08:00
Steven Bazyl 1c849c7e7a Refactor key loading to support PEM + fix issue #62 2012-11-02 13:56:53 -07:00
Steven Bazyl 01fc90b3fc Fix sample for JWTAsserter (missing .new) 2012-11-02 12:50:06 -07:00
Steven Bazyl 3d157007f6 Auto-refresh OAuth 2 tokens & retry request on 401 response 2012-10-30 13:18:12 -07:00
sanemat 6e40390d26 Remove too much checking 2012-10-13 15:43:52 +09:00
sanemat f9ccc6efdf Add namespace check 2012-10-11 09:23:53 +09:00
Steven Bazyl 5fea10a1d7 Re-org service account support 2012-10-10 14:28:46 -06:00
Steven Bazyl 8799e3a689 Move request class to its own file 2012-10-10 14:28:46 -06:00
Steven Bazyl 30d0ffc698 Issue 59 - handle 204 responses more gracefully 2012-10-10 14:28:46 -06:00
Steven Bazyl cd37e4bfea Doc improvements 2012-10-10 14:28:46 -06:00
Steven Bazyl 3dcd88a884 Expose discovery doc in prep for future doc changes 2012-10-10 14:28:46 -06:00
Steven Bazyl 000fedfbfb Add method for checking if upload can be resumed 2012-10-10 14:28:46 -06:00
Steven Bazyl e88dabaf4c Update docs re: api_method + allow options in array-style calls 2012-10-10 14:28:46 -06:00
Steven Bazyl 83ab4a681f More documentation cleanup 2012-10-10 14:28:46 -06:00
Steven Bazyl 9bd9ceb75c More documentation cleanup 2012-10-10 14:28:45 -06:00
Steven Bazyl 1fca089d62 Mostly doc updates, +remove support for method as string 2012-10-10 14:28:45 -06:00
Steven Bazyl b425658f2f Allow adjusting issued-at time to minimize clock skew issues 2012-10-10 14:28:45 -06:00
Steven Bazyl fc45135fcd Continue internal shuffling... 2012-10-10 14:28:45 -06:00
Steven Bazyl 2c6bf97b20 Unify processing of api/resumable/batch requests 2012-10-10 14:25:43 -06:00
Steven Bazyl 5d2a6d4842 Begin consolidation of request building in reference. Further changes coming to simplify batch + media handling 2012-10-10 14:24:25 -06:00
Steven Bazyl 9f51031a00 Consolidate request routing through execute methods 2012-10-10 14:24:25 -06:00
Steven Bazyl e421d1734d Remove embedded version #s, use Gemfile 2012-10-10 14:24:25 -06:00
Steven Bazyl 6a37993df7 Remove unnecessary normalization/fix addressable bug 2012-10-10 14:24:25 -06:00
sanemat 92a074bc18 Compatible multi_json >= 1.0.0 with Rails3.2.8 2012-10-11 02:51:34 +09:00
Bob Aman dd8cee65b2 This should resolve the issue with Kernel#load. 2012-10-08 17:06:08 +03:00
Bob Aman 2c567fd720 Added the ability to create an authorization object from client secrets. 2012-10-05 12:07:42 +03:00
Bob Aman 2f630f6c1d Merge branch 'master' of github.com:google/google-api-ruby-client 2012-08-30 12:16:49 +03:00
Bob Aman 11155d3c39 Backwards compatibility for MultiJson. 2012-08-30 12:15:59 +03:00
Marc Lennox 0e5070c356 Syntax change to satisfy pull request 2012-08-18 21:12:54 -07:00
Marc Lennox 6795eeece9 Fixed an issue where the code was expecting parameters as a hash when in fact they are previously converted to an array 2012-08-18 16:43:57 -07:00
Steven Bazyl 1ff1a8e355 Issue 47 - Improve error handling on result 2012-08-01 00:28:39 +03:00
Bob Aman 9e55284329 Some debug statements snuck into the commit. 2012-08-01 00:20:29 +03:00
Bob Aman 992a698b0a Two failing tests, neither of which I can do much about. 2012-08-01 00:16:26 +03:00
Bob Aman 45bc8f4898 Removed trailing whitespace. 2012-07-31 23:57:45 +03:00
Bob Aman 10856af027 Updating version. 2012-07-31 16:56:54 +03:00
Bob Aman 3bc7d52764 Resolving issues introduced by Faraday dependency upgrade. 2012-07-21 13:51:23 +03:00
Bob Aman 5e751681dd Updating dependencies. 2012-07-21 13:51:23 +03:00
Steven Bazyl 47ed766eea New version of client lib 2012-06-11 15:59:29 -07:00
Steven Bazyl a9d46c0359 Resolve merge conflict 2012-06-06 17:32:29 -07:00
Steven Bazyl a7b40becc6 Allow credentials on per-request basis 2012-06-06 17:27:20 -07:00
Steven Bazyl f7a4db959d Initial support for service accounts 2012-06-06 17:25:44 -07:00
Sergio Gomes 2666acc24a Moving BatchError to errors.rb 2012-05-18 10:45:54 +01:00
Sergio Gomes a666d52770 Adding batch support 2012-05-16 20:05:24 +01:00
Sérgio Gomes 44d113131b Resolves issue of validation failing for repeated parameters. 2012-05-11 12:50:18 +03:00
Bob Aman c651d69674 Updated to avoid deprecation of encode and decode methods in multi_json gem. 2012-04-24 14:39:25 +03:00
Steven Bazyl 9dfd8a132d Update changelog & API version 2012-03-27 11:10:56 -07:00
Bob Aman 33ea36ca46 Fixed formatting issue with OS version number in Java. 2012-03-14 17:11:19 +01:00
Steven Bazyl 11bae1fde0 Multipart upload compatibility with 1.8.7 2012-03-14 17:10:36 +01:00
Adam Sawyer eec8c167cb When running in a jvm, get the OK name and version from java's system properties, to avoid exec'ing uname. 2012-03-13 14:41:58 -04:00
Bob Aman 7545efddb6 Fixed whitespace issue. 2012-03-02 17:07:35 +01:00
Bob Aman 2599184e88 Merge branch 'master' of https://code.google.com/p/google-api-ruby-client 2012-03-02 17:07:02 +01:00
Bob Aman 8eea813905 Initial pass at parsing and handling client_secrets.json. 2012-03-02 17:06:08 +01:00
Steven Bazyl 1121bb7fe6 Merge branch 'master' of https://code.google.com/p/google-api-ruby-client 2012-03-01 17:24:14 -08:00
Steven Bazyl b8301b0dd5 Media upload support 2012-03-01 17:23:36 -08:00
Bob Aman 2b9ac92b7e More carefully resolving the discovery-of-discovery issue. 2012-02-27 12:23:33 +01:00
Bob Aman 1e5f09a594 Cleaning up the changes made by @vapir. 2012-02-27 12:14:11 +01:00
Bob Aman af61568cbe Merge branch 'master' of github.com:sporkmonger/google-api-ruby-client 2012-02-27 11:29:16 +01:00
Bob Aman 0f25fbe793 Updated version and CHANGELOG. 2012-02-22 15:40:33 +03:00
Bob Aman 1632e98a05 Patch to solve Ruby 1.8.7 incompatibility. 2012-02-22 15:09:35 +03:00
Ethan b866e07d70 rescue any error invoking external commands attempting to determine OS_VERSION; just return RUBY_PLATFORM on failure. 2012-02-22 03:31:17 -05:00
Ethan 80c41c99fc minor whitespace touchup
gedit's syntax highlighting breaks on the previous
2012-02-22 03:31:17 -05:00
Ethan b6ef9b00ad fix schema to not choke when '$ref' is specifying what the '$ref' property actually is, rather than invoking it, and is therefore not a string.
this applies to the schema JsonSchema, specified in the document for the discovery service itself
2012-02-22 03:30:59 -05:00
Ethan bd1ce540d4 if ApiClient receives :authorization => false, respect that, and only default to oauth2 if :authorization is omitted 2012-02-22 03:30:59 -05:00
Ethan d59901bf1e add method ApiClient#relative_uri which constructs a full uri from a given relative path, respecting specified protocol, host, and port; and allowing expanded parameters passed through Addressable::Template 2012-02-22 03:30:58 -05:00
Ethan c50f92c50c change ApiClient's configurable host to a configurable baseURI, so that protocol, port, and base path may be overridden in addition to host 2012-02-22 03:30:58 -05:00
Nikolay Mischenko 2eb6da99d3 Fixed parameters encoding (should be urlencoded) 2012-02-15 16:25:48 +03:00
Bob Aman 17e540d0de Added ID token verification against server certificate. 2012-02-15 15:23:54 +03:00
Bob Aman f1c5b65baf Updated version and CHANGELOG with recent fixes. 2012-02-10 17:32:58 +03:00
Bob Aman 1a381ab963 Method renames to be consistent with change to resources. 2012-02-10 17:26:44 +03:00
Steven Bazyl c02f2ce6a4 Don't traverse ancestors when checking if schema is defined 2012-02-08 11:35:39 -08:00
Steven Bazyl 5b45f8f351 Rename 'resources' method due to conflict with one of the APIs. 2012-01-30 23:28:55 -08:00
Bob Aman 06cdb76670 Updated to replace httpadapter with faraday. 2012-01-27 17:57:57 +03:00
Bob Aman 0bc3d4936b Migrated to MultiJson from JSON gem. 2012-01-05 13:05:56 +03:00
Bob Aman 04ec835ca1 Merge branch 'master' of ../martinsarsale-support-for-repeats 2011-12-02 17:27:13 +03:00
Bob Aman 321533455c Fixed some YARD documentation issues and changed how the user-agent is built. 2011-12-02 16:43:55 +03:00
Martin Sarsale f736ac4d97 Merge remote branch 'remotes/upstream/master' 2011-11-30 11:39:28 -03:00
Bob Aman e0afbdaf05 Attempting to fix some Windows issues and update deprecated library calls. 2011-11-16 11:44:55 +03:00
Martin Sarsale 01229ff710 Accept repeated parameters 2011-11-02 15:18:03 -03:00
Bob Aman ba38697528 Fixed environment check for Windows. 2011-10-31 13:33:22 +03:00
Bob Aman 99dae4e560 Minor change to inflection. 2011-10-21 11:28:59 +03:00
Bob Aman 4b6e032e1b Updated to match change to AutoParse. 2011-10-20 17:58:00 +03:00
Bob Aman abf64d5314 Added task for wiki autogeneration. 2011-10-15 11:22:59 +03:00
Bob Aman 92ad3a293a Fixed issue with version and moved version back to 0.3.0. 2011-10-15 11:22:50 +03:00
Bob Aman 4db326a3ed Added task for wiki autogeneration. 2011-10-15 11:22:36 +03:00
Bob Aman 2dcdec1191 Fixed issue with version and moved version back to 0.3.0. 2011-10-15 11:21:21 +03:00
Bob Aman bb4e15b9f4 Fixed issues with recursive structures and external references. 2011-10-05 14:13:39 +03:00
Bob Aman 06af19a112 Switched to using AutoParse for schemas. 2011-09-22 16:27:24 +03:00
Bob Aman af104f8c5f Fixed issue with ambiguous reference. 2011-09-22 16:26:33 +03:00
Bob Aman 15a372cedb Added code to include userIp and key parameters. 2011-09-22 13:49:58 +03:00
Bob Aman ef065ce8d6 Added code to include userIp and key parameters. 2011-09-22 13:49:46 +03:00
Bob Aman b869319d1d Added better handling for errors. 2011-09-22 12:21:22 +03:00
Bob Aman a9ae33bb47 Added better handling for errors. 2011-09-22 12:21:05 +03:00
Bob Aman 4fa30fc051 Changed discovery and directory methods to use the main code-path for generating requests. 2011-09-22 10:42:31 +03:00
Bob Aman 7724b20e9a Changed discovery and directory methods to use the main code-path for generating requests. 2011-09-22 10:41:13 +03:00
Bob Aman d2907c9d79 Added better support for user IP and developer key across all APIs. 2011-09-21 10:52:15 +03:00
Bob Aman e399dd76b0 Added better support for user IP and developer key across all APIs. 2011-09-21 10:51:51 +03:00
Bob Aman 6fc526bd21 Partial solution to the issue of generating JSON. 2011-08-19 11:59:53 +03:00
Bob Aman 5c4323b11c Introduced the ability to pass in an API object instead of a raw body when making requests. 2011-08-17 21:42:24 -04:00
Bob Aman f159ab7285 Introduced the ability to pass in an API object instead of a raw body when making requests. 2011-08-17 21:42:03 -04:00
Bob Aman 105dbd64f2 Fixed a bug in the method definition closures. 2011-08-10 16:59:55 -04:00
Bob Aman 27ae32d2e7 Basic structure of schema parsing complete.
* Note that additionalProperties fields are not currently supported and may
  only be accessed in raw form. Shouldn't be a big deal because only the Buzz
  API uses them extensively.
2011-08-10 16:48:22 -04:00
Bob Aman d9a108415b Added method to expose API property descriptions. 2011-08-08 18:04:48 -04:00
Bob Aman 9a2217a6bb Added support for API feature lists. 2011-08-08 17:28:21 -04:00
Bob Aman b8bd8e3964 Added support for API feature lists. 2011-08-08 17:23:59 -04:00
Bob Aman 547034d1e3 Adding missing require. 2011-08-05 17:00:36 -04:00
Bob Aman 75ee556a99 Moved dynamic method definitions into the APIObject class. 2011-08-05 16:55:40 -04:00
Bob Aman 960796d23d Added default values. 2011-08-05 14:44:29 -04:00
Bob Aman 13d590631b Added API#schema_for_kind method to allow schema lookups by kind. 2011-08-05 14:43:56 -04:00
Bob Aman 1fa3fb25d9 Better way to handle automatic parsing using the schemas in the discovery document. 2011-08-04 23:36:36 -04:00
Bob Aman b4745890f5 Separated out the discovery classes into individual files. 2011-08-04 18:32:00 -04:00
Bob Aman 0d2cbe26df Fixed issue with header/options ambiguity. 2011-08-02 16:20:54 -04:00
Bob Aman f336ab34a7 Major update, primarily to add pagination support.
* Added Reference objects to encapsulate API calls.
* Added Result objects to encapsulate API responses.
* Changed the return value of APIClient#execute to Result.
* Changed the method signature of APIClient#execute to support named params.
* Added APIClient#execute! which throws exceptions on error.
* Added automatic parsing code to better allow for complex nested structures.
* Added error parser.
* Added module for pagination in parsers.
2011-07-29 18:07:04 -04:00
Bob Aman ef2abc0493 Updated to use v1 of the discovery API.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@155 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-05-12 20:14:15 +00:00
Bob Aman 7d370c6d10 Updated documentation on User-Agent.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@154 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-05-12 17:12:15 +00:00
Bob Aman 4d56bb8b1b Added User-Agent improvements.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@133 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-05-04 22:43:33 +00:00
Bob Aman 286a7152f2 A significant update of the client functionality.
* updated to use v0.3 of the discovery API
* updated to use httpadapter 1.0.0
* added OAuth 2 support to the command line tool
* renamed some switches in the command line tool
* added additional configuration capabilities

git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@128 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-05-04 11:44:35 +00:00
Bob Aman 1dee705828 Fixed extlib/activesupport conflict. Seriously people, thou shalt not monkey-patch!
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@127 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-01-19 23:41:37 +00:00
Bob Aman 0b49c3fd2e Added User-Agent header.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@107 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2011-01-05 01:09:52 +00:00
Bob Aman 76fe65a650 Incrementing the version.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@104 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2010-11-04 20:00:03 +00:00
Bob Aman 38f5bc5baf Added ability to update the base URI in services, resources, and methods.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@102 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2010-10-22 22:56:01 +00:00
Bob Aman f63bf8199f Added option to support manually specified discovery URI.
git-svn-id: https://google-api-ruby-client.googlecode.com/svn/trunk@101 c1d61fac-ed7f-fcc1-18f7-ff78120a04ef
2010-10-22 22:21:26 +00:00