You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by li xu <le...@gmail.com> on 2011/09/17 15:52:31 UTC

Review Request: OAuth2.0 client implementation in Apache Shindig.

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

Review request for shindig.


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


Diffs
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1162113 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
  /trunk/content/sampledata/canonicaldb.json 1162113 
  /trunk/features/src/main/javascript/features/core.io/io.js 1162113 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1162113 
  /trunk/java/common/conf/shindig.properties 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/OAuthProtocolException.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuthCallbackServlet.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1162113 
  /trunk/java/server/pom.xml 1162113 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1162113 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1157240 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review1997
-----------------------------------------------------------


Updates about features included in  2nd patch...both patch passed maven build and junit tests...2nd patch is tested with OAuth2.0 provider patch.
1) Fixed Java error in Eclipse workspace
2) Cross-contamination with provider patch 
3) Brian's issue about the message keys
4) Paul's initial comments
5) Streamline BasicOAuth2Request flow for error cases
6) General improvements to error handling/reporting/translating
7) Some javadoc improvements

- li


On 2011-09-21 14:54:57, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-21 14:54:57)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1172585 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1172585 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1172585 
>   /trunk/java/common/conf/shindig.properties 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173605 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173592 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1172585 
>   /trunk/java/server/pom.xml 1172585 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1172585 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1172585 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Henry Saputra <hs...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review2533
-----------------------------------------------------------

Ship it!


Looks good for a drop. +1

- Henry


On 2011-10-12 14:52:23, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-10-12 14:52:23)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1182008 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1182008 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1182008 
>   /trunk/java/common/conf/shindig.properties 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/GadgetOAuthTokenStore.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLogger.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/BaseOAuthService.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuthService.java 1182008 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStoreTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/MockUtils.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ArgumentsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfigTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContextTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParamsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLoggerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2ClientTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCacheTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2PersisterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBindingTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2ProviderTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1182008 
>   /trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/oauth2/oauth2_test.json PRE-CREATION 
>   /trunk/java/server/pom.xml 1182008 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1182008 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1182008 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Eric Woods <wo...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review2539
-----------------------------------------------------------

Ship it!


Patch applied.  Thanks Li & Adam!

- Eric


On 2011-10-12 14:52:23, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-10-12 14:52:23)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1182008 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1182008 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1182008 
>   /trunk/java/common/conf/shindig.properties 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/GadgetOAuthTokenStore.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLogger.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/BaseOAuthService.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuthService.java 1182008 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStoreTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/MockUtils.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ArgumentsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfigTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContextTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParamsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLoggerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2ClientTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCacheTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2PersisterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBindingTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2ProviderTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1182008 
>   /trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/oauth2/oauth2_test.json PRE-CREATION 
>   /trunk/java/server/pom.xml 1182008 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1182008 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1182008 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

(Updated 2011-10-12 14:52:23.335109)


Review request for shindig.


Changes
-------

Features included in this patch:
1. updated the patch to work with 20111012 trunk
2. minor fix to make it work with java15 as well
3. added back OAuth2 demo gadgets with Shindig Provider and verified with Shindig Service Provider patch (https://reviews.apache.org/r/1940/)

Passed junit tests. OAuth2 demo gadgets( with Shindig Provider ) works with Shindig service provider patch.

It's a big patch, thanks a lot for reviewing it! It has been posted for a while, appreciate more review and we'll try to address asap.  We'd like to see it committed by Friday. Thanks!


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


This addresses bug shindig-1624.
    https://issues.apache.org/jira/browse/shindig-1624


Diffs (updated)
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1182008 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
  /trunk/features/src/main/javascript/features/core.io/io.js 1182008 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1182008 
  /trunk/java/common/conf/shindig.properties 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/GadgetOAuthTokenStore.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLogger.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/BaseOAuthService.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1182008 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuthService.java 1182008 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1182008 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1182008 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1182008 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStoreTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/MockUtils.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ArgumentsTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ErrorTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfigTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContextTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParamsTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerErrorTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLoggerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2ClientTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCacheTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2PersisterTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypterTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBindingTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2ProviderTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1182008 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1182008 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1182008 
  /trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/oauth2/oauth2_test.json PRE-CREATION 
  /trunk/java/server/pom.xml 1182008 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1182008 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1182008 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

(Updated 2011-09-30 18:38:20.349435)


Review request for shindig.


Changes
-------

Features included in this patch:
1. junit test cases -- great work from Adam!
2. javadoc improvement
3. updates upon Ryan's comments
It's a big patch, thanks for reviewing!


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


This addresses bug shindig-1624.
    https://issues.apache.org/jira/browse/shindig-1624


Diffs (updated)
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1177739 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
  /trunk/features/src/main/javascript/features/core.io/io.js 1177739 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1177739 
  /trunk/java/common/conf/shindig.properties 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/GadgetOAuthTokenStore.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLogger.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerApi.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/BaseOAuthService.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1177739 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuthService.java 1177739 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1177739 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1177739 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1177739 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStoreTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/MockUtils.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ArgumentsTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ErrorTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfigTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContextTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParamsTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerErrorTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandlerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLoggerTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2ClientTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceExceptionTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCacheTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2PersisterTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypterTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBindingTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModuleTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2ProviderTest.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1177739 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1177739 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1177739 
  /trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/oauth2/oauth2_test.json PRE-CREATION 
  /trunk/java/server/pom.xml 1177739 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1177739 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1177739 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Adam Clarke <cl...@gmail.com>.

> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > A few general comments in addition to the ones below.
> > 
> > In several files there are white spaces, please go through and remove these, its best to start with a clean slate.
> > 
> > My major concern here is testing.  It looks like you added a lot of new code but I see a little in the way of unit tests for it.  Also in the unit tests you did modify I did not see any new tests exercising the new code paths.
> > 
> > There is a lot of code here and it would be best to get as many eyes on this as possible.

Agreed.  Will clean up the white space.

Next drop (today or tomorrow) will have the unit tests in, this will be the last drop with major changes.

Yes lot's of code, thanks for taking a look.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/config/oauth2.json, line 1
> > <https://reviews.apache.org/r/1947/diff/3/?file=45512#file45512line1>
> >
> >     If there any way we can combine this file with the oauth file that already exists in shindig.  Does that make sense?  I would rather not have another file which does the same thing.

We considered using the existing oauth.json but there are three major reasons we added a new one

1) OAuth2 terminology is different, OAuth2 is a replacement for OAuth1 not additions to it.
2) There are some key differences in the structure as well.  binding->client->provider which don't existing in oauth.json.  Would probably just confuse people accustomed to oauth1, or worse break implementations that were already using it.
3) Since OAuth1 and OAuth2 persistence is separate they can both be changed in different ways.  For instance, a user may have a custom OAuth1 persistence going to a database and have no need for oauth.json, but they would still need oauth2.json to kick the tires on OAuth2.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml, line 20
> > <https://reviews.apache.org/r/1947/diff/3/?file=45514#file45514line20>
> >
> >     It looks like this gadget is using jquery but I don't see a script import for it....

I guess that notation is strange.  Honestly I just copied the gadget from the current oauth.xml and that's what they did.  I will change it to avoid confusion.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml, line 14
> > <https://reviews.apache.org/r/1947/diff/3/?file=45516#file45516line14>
> >
> >     The tabs here look to be off, should be 2 spaces

will be fixed in next drop


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml, line 42
> > <https://reviews.apache.org/r/1947/diff/3/?file=45517#file45517line42>
> >
> >     Is this neccessary to point out ideally this the oauth2 provider patch will be there

This demo was originally done to showcase a complete OAuth2 solution with the shindig consumer working with the shindig provider.  Since the two are being reviewed separately we'll just remove these demo gadgets until both consumer and provider are available.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml, line 70
> > <https://reviews.apache.org/r/1947/diff/3/?file=45517#file45517line70>
> >
> >     again not sure where the jquery is coming from

addressed above


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/common/conf/shindig.properties, line 42
> > <https://reviews.apache.org/r/1947/diff/3/?file=45521#file45521line42>
> >
> >     Comments on what these properties do would be good

added for next drop


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java, line 81
> > <https://reviews.apache.org/r/1947/diff/3/?file=45523#file45523line81>
> >
> >     Log the exception

This was based on the existing implementation for OAuth 1 and was duplicated for OAuth 2.  I'm hesitant to change it without knowing why it was originally like this.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java, line 306
> > <https://reviews.apache.org/r/1947/diff/3/?file=45528#file45528line306>
> >
> >     Any need to check for null here?

No.  realRequest and securityToken are validated upon entry into the fetch() method.  The only entry point.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java, line 374
> > <https://reviews.apache.org/r/1947/diff/3/?file=45528#file45528line374>
> >
> >     Could we just handle this exception in the outer try?

I don't see this in my current code base anymore, so I must have agreed with you :)


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java, line 407
> > <https://reviews.apache.org/r/1947/diff/3/?file=45528#file45528line407>
> >
> >     Any need to check for null here?

Added checks for null fetcherConfig and getTokenStore.  Everything else was checked on fetch() entry.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java, line 445
> > <https://reviews.apache.org/r/1947/diff/3/?file=45528#file45528line445>
> >
> >     Use Maps.newHashMap(...)

Replaced all occurences.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java, line 43
> > <https://reviews.apache.org/r/1947/diff/3/?file=45529#file45529line43>
> >
> >     It would be nice if it is at all possible to use the existing oauth store

Requires a new store.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java, line 40
> > <https://reviews.apache.org/r/1947/diff/3/?file=45530#file45530line40>
> >
> >     spacing here

fixed in next drop


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java, line 45
> > <https://reviews.apache.org/r/1947/diff/3/?file=45530#file45530line45>
> >
> >     It would be great if you could javadoc these public methods

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java, line 97
> > <https://reviews.apache.org/r/1947/diff/3/?file=45530#file45530line97>
> >
> >     Document the exception

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java, line 138
> > <https://reviews.apache.org/r/1947/diff/3/?file=45530#file45530line138>
> >
> >     Log the exception

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java, line 36
> > <https://reviews.apache.org/r/1947/diff/3/?file=45531#file45531line36>
> >
> >     Please make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java, line 36
> > <https://reviews.apache.org/r/1947/diff/3/?file=45532#file45532line36>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java, line 61
> > <https://reviews.apache.org/r/1947/diff/3/?file=45532#file45532line61>
> >
> >     I believe you can use the Maps API to create a new TreeMap

fixed in next drop


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java, line 31
> > <https://reviews.apache.org/r/1947/diff/3/?file=45533#file45533line31>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java, line 101
> > <https://reviews.apache.org/r/1947/diff/3/?file=45533#file45533line101>
> >
> >     At the very least you probably want to log this exception.

fixed in next drop, static code analysis tool caught all these and I fixed them


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java, line 35
> > <https://reviews.apache.org/r/1947/diff/3/?file=45536#file45536line35>
> >
> >     Make sure there are descriptions in the javadoc

agreed


- Adam


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review2092
-----------------------------------------------------------


On 2011-09-23 19:54:08, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-23 19:54:08)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1173772 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1173772 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1173772 
>   /trunk/java/common/conf/shindig.properties 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1173772 
>   /trunk/java/server/pom.xml 1173772 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1173772 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1173772 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.

> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java, line 24
> > <https://reviews.apache.org/r/1947/diff/3/?file=45539#file45539line24>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java, line 34
> > <https://reviews.apache.org/r/1947/diff/3/?file=45540#file45540line34>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java, line 91
> > <https://reviews.apache.org/r/1947/diff/3/?file=45540#file45540line91>
> >
> >     Should use a StringBuffer

agreed,replaced with StringBuilder.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java, line 133
> > <https://reviews.apache.org/r/1947/diff/3/?file=45541#file45541line133>
> >
> >     what does this return?

fixed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java, line 32
> > <https://reviews.apache.org/r/1947/diff/3/?file=45542#file45542line32>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java, line 66
> > <https://reviews.apache.org/r/1947/diff/3/?file=45543#file45543line66>
> >
> >     Use the Maps API

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java, line 69
> > <https://reviews.apache.org/r/1947/diff/3/?file=45543#file45543line69>
> >
> >     Should we check the list's size before accessing any of the elements in it?

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java, line 76
> > <https://reviews.apache.org/r/1947/diff/3/?file=45543#file45543line76>
> >
> >     Should we check the list's size before accessing any of the elements in it?

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java, line 156
> > <https://reviews.apache.org/r/1947/diff/3/?file=45543#file45543line156>
> >
> >     Log this exception

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java, line 39
> > <https://reviews.apache.org/r/1947/diff/3/?file=45544#file45544line39>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java, line 36
> > <https://reviews.apache.org/r/1947/diff/3/?file=45545#file45545line36>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java, line 35
> > <https://reviews.apache.org/r/1947/diff/3/?file=45546#file45546line35>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java, line 28
> > <https://reviews.apache.org/r/1947/diff/3/?file=45547#file45547line28>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java, line 35
> > <https://reviews.apache.org/r/1947/diff/3/?file=45548#file45548line35>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java, line 32
> > <https://reviews.apache.org/r/1947/diff/3/?file=45549#file45549line32>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java, line 73
> > <https://reviews.apache.org/r/1947/diff/3/?file=45551#file45551line73>
> >
> >     Use the Maps API

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java, line 56
> > <https://reviews.apache.org/r/1947/diff/3/?file=45552#file45552line56>
> >
> >     Use the Maps API

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java, line 69
> > <https://reviews.apache.org/r/1947/diff/3/?file=45553#file45553line69>
> >
> >     Use the Maps API

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java, line 48
> > <https://reviews.apache.org/r/1947/diff/3/?file=45554#file45554line48>
> >
> >     Use the Maps API

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java, line 145
> > <https://reviews.apache.org/r/1947/diff/3/?file=45555#file45555line145>
> >
> >     NIT: Might help to have a helper class for this to make this code cleaner

split the function into a seperate function to make it more readable... the header string is unique to Mac token type.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java, line 38
> > <https://reviews.apache.org/r/1947/diff/3/?file=45543#file45543line38>
> >
> >     Does this belong in the commons project?
> >     Make sure the javadoc is complete

OAuth2 consumer specific utility. agreed.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java, line 186
> > <https://reviews.apache.org/r/1947/diff/3/?file=45573#file45573line186>
> >
> >     Not sure we want to call out facebook

removed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java, line 132
> > <https://reviews.apache.org/r/1947/diff/3/?file=45579#file45579line132>
> >
> >     Could you break here after you set foundHandler to true

fixed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java, line 95
> > <https://reviews.apache.org/r/1947/diff/3/?file=45568#file45568line95>
> >
> >     Want to log these exceptions

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java, line 200
> > <https://reviews.apache.org/r/1947/diff/3/?file=45568#file45568line200>
> >
> >     Remove this

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java, line 248
> > <https://reviews.apache.org/r/1947/diff/3/?file=45568#file45568line248>
> >
> >     Remove this

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java, line 304
> > <https://reviews.apache.org/r/1947/diff/3/?file=45568#file45568line304>
> >
> >     Remove this

done


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java, line 23
> > <https://reviews.apache.org/r/1947/diff/3/?file=45570#file45570line23>
> >
> >     Add Javadoc

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java, line 25
> > <https://reviews.apache.org/r/1947/diff/3/?file=45572#file45572line25>
> >
> >     Add Javadoc

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java, line 182
> > <https://reviews.apache.org/r/1947/diff/3/?file=45579#file45579line182>
> >
> >     Would it be better to just have a constructor where there are injected instead of just having the default constructor?

 servlet spec requires configuration being done in init() thus can't handle constructor injection for servlet. please see comments in 
InjectedServlet.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java, line 40
> > <https://reviews.apache.org/r/1947/diff/3/?file=45581#file45581line40>
> >
> >     Make sure Javadoc is complete
> >     Is there any code we can share between the OAuth2 service and the OAuth1 service?

agreed about javadoc.
created BaseOAuthService.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java, line 36
> > <https://reviews.apache.org/r/1947/diff/3/?file=45582#file45582line36>
> >
> >     Make sure the Javadoc is complete
> >     Can we share any code between the OAuth2 spec and the OAuth1 spec?

agreed about javadoc. need to be unique to different service: OAuthService or OAuth2Service.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java, line 31
> > <https://reviews.apache.org/r/1947/diff/3/?file=45559#file45559line31>
> >
> >     Make sure javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java, line 33
> > <https://reviews.apache.org/r/1947/diff/3/?file=45561#file45561line33>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java, line 27
> > <https://reviews.apache.org/r/1947/diff/3/?file=45562#file45562line27>
> >
> >     Make sure the javadoc is compelte

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java, line 41
> > <https://reviews.apache.org/r/1947/diff/3/?file=45565#file45565line41>
> >
> >     Make sure the javadoc is complete

agreed


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java, line 76
> > <https://reviews.apache.org/r/1947/diff/3/?file=45558#file45558line76>
> >
> >     Is the spec vague about the content type?  Why does Facebook and Google have two different content types?

spec is not vague, however Facebook seems behind the spec.


> On 2011-09-27 17:46:35, Ryan Baxter wrote:
> > /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java, line 197
> > <https://reviews.apache.org/r/1947/diff/3/?file=45555#file45555line197>
> >
> >     NIT:  There are alot of params here, consider making a POJO object and passing that in.

agreed


- li


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review2092
-----------------------------------------------------------


On 2011-10-12 14:52:23, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-10-12 14:52:23)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1182008 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1182008 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1182008 
>   /trunk/java/common/conf/shindig.properties 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/GadgetOAuthTokenStore.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLogger.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/BaseOAuthService.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1182008 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuthService.java 1182008 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStoreTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/MockUtils.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ArgumentsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfigTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContextTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2MessageModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParamsTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BasicAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/BearerTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/ClientCredentialsGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/CodeGrantTypeHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/MacTokenHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerErrorTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/StandardAuthenticationHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/handler/TokenAuthorizationResponseHandlerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/logger/FilteredLoggerTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2ClientTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceExceptionTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCacheTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2PersisterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypterTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBindingTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModuleTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2ProviderTest.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1182008 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1182008 
>   /trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/oauth2/oauth2_test.json PRE-CREATION 
>   /trunk/java/server/pom.xml 1182008 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1182008 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1182008 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Ryan Baxter <rb...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review2092
-----------------------------------------------------------


A few general comments in addition to the ones below.

In several files there are white spaces, please go through and remove these, its best to start with a clean slate.

My major concern here is testing.  It looks like you added a lot of new code but I see a little in the way of unit tests for it.  Also in the unit tests you did modify I did not see any new tests exercising the new code paths.

There is a lot of code here and it would be best to get as many eyes on this as possible.


/trunk/config/oauth2.json
<https://reviews.apache.org/r/1947/#comment4737>

    If there any way we can combine this file with the oauth file that already exists in shindig.  Does that make sense?  I would rather not have another file which does the same thing.



/trunk/config/oauth2.json
<https://reviews.apache.org/r/1947/#comment4736>

    We probably want to point to the section in the spec, not the issue.



/trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml
<https://reviews.apache.org/r/1947/#comment4738>

    It looks like this gadget is using jquery but I don't see a script import for it....



/trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml
<https://reviews.apache.org/r/1947/#comment4739>

    The tabs here look to be off, should be 2 spaces



/trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml
<https://reviews.apache.org/r/1947/#comment4740>

    Is this neccessary to point out ideally this the oauth2 provider patch will be there



/trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml
<https://reviews.apache.org/r/1947/#comment4741>

    again not sure where the jquery is coming from



/trunk/java/common/conf/shindig.properties
<https://reviews.apache.org/r/1947/#comment4742>

    Comments on what these properties do would be good



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java
<https://reviews.apache.org/r/1947/#comment4743>

    Log the exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4745>

    Nit: Might help to break this out into separate methods to make this cleaner



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4746>

    Nit: Might help to break this out into separate methods to make this cleaner



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4747>

    Any need to check for null here?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4748>

    Could we just handle this exception in the outer try?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4749>

    Any need to check for null here?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4750>

    Use Maps.newHashMap(...)



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java
<https://reviews.apache.org/r/1947/#comment4751>

    It would be nice if it is at all possible to use the existing oauth store



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java
<https://reviews.apache.org/r/1947/#comment4752>

    spacing here



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java
<https://reviews.apache.org/r/1947/#comment4753>

    It would be great if you could javadoc these public methods



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java
<https://reviews.apache.org/r/1947/#comment4754>

    Document the exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java
<https://reviews.apache.org/r/1947/#comment4755>

    Log the exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java
<https://reviews.apache.org/r/1947/#comment4757>

    Please make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java
<https://reviews.apache.org/r/1947/#comment4758>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java
<https://reviews.apache.org/r/1947/#comment4759>

    I believe you can use the Maps API to create a new TreeMap



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java
<https://reviews.apache.org/r/1947/#comment4763>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java
<https://reviews.apache.org/r/1947/#comment4760>

    At the very least you probably want to log this exception.



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java
<https://reviews.apache.org/r/1947/#comment4765>

    Make sure there are descriptions in the javadoc



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java
<https://reviews.apache.org/r/1947/#comment4766>

    Log this exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java
<https://reviews.apache.org/r/1947/#comment4767>

    Log this exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java
<https://reviews.apache.org/r/1947/#comment4768>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java
<https://reviews.apache.org/r/1947/#comment4769>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java
<https://reviews.apache.org/r/1947/#comment4770>

    Should use a StringBuffer



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java
<https://reviews.apache.org/r/1947/#comment4771>

    what does this return?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java
<https://reviews.apache.org/r/1947/#comment4772>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java
<https://reviews.apache.org/r/1947/#comment4773>

    Does this belong in the commons project?
    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java
<https://reviews.apache.org/r/1947/#comment4774>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java
<https://reviews.apache.org/r/1947/#comment4777>

    Should we check the list's size before accessing any of the elements in it?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java
<https://reviews.apache.org/r/1947/#comment4778>

    Should we check the list's size before accessing any of the elements in it?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java
<https://reviews.apache.org/r/1947/#comment4780>

    Log this exception



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java
<https://reviews.apache.org/r/1947/#comment4781>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java
<https://reviews.apache.org/r/1947/#comment4784>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java
<https://reviews.apache.org/r/1947/#comment4785>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java
<https://reviews.apache.org/r/1947/#comment4788>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java
<https://reviews.apache.org/r/1947/#comment4789>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java
<https://reviews.apache.org/r/1947/#comment4790>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java
<https://reviews.apache.org/r/1947/#comment4792>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java
<https://reviews.apache.org/r/1947/#comment4793>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java
<https://reviews.apache.org/r/1947/#comment4794>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java
<https://reviews.apache.org/r/1947/#comment4796>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java
<https://reviews.apache.org/r/1947/#comment4798>

    NIT: Might help to have a helper class for this to make this code cleaner



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java
<https://reviews.apache.org/r/1947/#comment4800>

    NIT:  There are alot of params here, consider making a POJO object and passing that in.



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java
<https://reviews.apache.org/r/1947/#comment4805>

    Is the spec vague about the content type?  Why does Facebook and Google have two different content types?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java
<https://reviews.apache.org/r/1947/#comment4806>

    Make sure javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java
<https://reviews.apache.org/r/1947/#comment4808>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java
<https://reviews.apache.org/r/1947/#comment4809>

    Make sure the javadoc is compelte



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4810>

    Make sure the javadoc is complete



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java
<https://reviews.apache.org/r/1947/#comment4811>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java
<https://reviews.apache.org/r/1947/#comment4812>

    Cleaner if you do &&



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4817>

    Want to log these exceptions



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4818>

    Use the Maps API



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4819>

    Remove this



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4820>

    Remove this



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java
<https://reviews.apache.org/r/1947/#comment4821>

    Remove this



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java
<https://reviews.apache.org/r/1947/#comment4822>

    Add Javadoc



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java
<https://reviews.apache.org/r/1947/#comment4824>

    Add Javadoc



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java
<https://reviews.apache.org/r/1947/#comment4828>

    Not sure we want to call out facebook



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java
<https://reviews.apache.org/r/1947/#comment4834>

    Could you break here after you set foundHandler to true



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java
<https://reviews.apache.org/r/1947/#comment4836>

    Would it be better to just have a constructor where there are injected instead of just having the default constructor?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java
<https://reviews.apache.org/r/1947/#comment4839>

    Make sure Javadoc is complete
    Is there any code we can share between the OAuth2 service and the OAuth1 service?



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java
<https://reviews.apache.org/r/1947/#comment4840>

    Make sure the Javadoc is complete
    Can we share any code between the OAuth2 spec and the OAuth1 spec?


- Ryan


On 2011-09-23 19:54:08, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-23 19:54:08)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1173772 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1173772 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1173772 
>   /trunk/java/common/conf/shindig.properties 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1173772 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1173772 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1173772 
>   /trunk/java/server/pom.xml 1173772 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1173772 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1173772 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

(Updated 2011-09-23 19:54:08.692577)


Review request for shindig.


Changes
-------

Another patch from Adam,please find the feature below.
1) Created against the 20110923 trunk
2) More error handling and reporting improvements
3) Tested against Windows Live with new Windows Live test gadget
4) Tested against Tivoli Federated Identity Manager 6.2.2 beta
5) (Theoretical) support for "mac" token type (draft version 5) and hmac_sha_1 signing**

Appreciate if review can be given and help to make progress on the patch!
thanks,
li


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


This addresses bug shindig-1624.
    https://issues.apache.org/jira/browse/shindig-1624


Diffs (updated)
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1173772 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_windowslive.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
  /trunk/features/src/main/javascript/features/core.io/io.js 1173772 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1173772 
  /trunk/java/common/conf/shindig.properties 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/OAuth2HandlerError.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/MACTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1173772 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1173772 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1173772 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173772 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1173772 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1173772 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1173772 
  /trunk/java/server/pom.xml 1173772 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1173772 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1173772 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review1998
-----------------------------------------------------------


Updates about features included in  2nd patch...both patch passed maven build and junit tests...2nd patch is tested with OAuth2.0 provider patch.
1) Fixed Java error in Eclipse workspace
2) Cross-contamination with provider patch 
3) Brian's issue about the message keys
4) Paul's initial comments
5) Streamline BasicOAuth2Request flow for error cases
6) General improvements to error handling/reporting/translating
7) Some javadoc improvements

- li


On 2011-09-21 14:54:57, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-21 14:54:57)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1172585 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1172585 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1172585 
>   /trunk/java/common/conf/shindig.properties 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173605 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1172585 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
>   /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173592 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1172585 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1172585 
>   /trunk/java/server/pom.xml 1172585 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1172585 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1172585 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

(Updated 2011-09-21 14:54:57.411815)


Review request for shindig.


Changes
-------

Great work from Adam Clark! 

Here're the features this patch address:
1) Build break with original patch
2) Cross-contamination with provider patch 
3) Brian's issue about the message keys
4) Paul's initial comments
5) Streamline BasicOAuth2Request flow for error cases
6) General improvements to error handling/reporting/translating
7) Some javadoc improvements


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


This addresses bug shindig-1624.
    https://issues.apache.org/jira/browse/shindig-1624


Diffs (updated)
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1172585 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
  /trunk/features/src/main/javascript/features/core.io/io.js 1172585 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1172585 
  /trunk/java/common/conf/shindig.properties 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1173605 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/StandardAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1172585 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource.properties PRE-CREATION 
  /trunk/java/gadgets/src/main/resources/org/apache/shindig/gadgets/oauth2/resource_en_US.properties PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1172585 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1172585 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1173592 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1172585 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1172585 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1172585 
  /trunk/java/server/pom.xml 1172585 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1172585 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1172585 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Paul Lindner <li...@inuus.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review1972
-----------------------------------------------------------


big patch, only skimmed parts.  Will have to continue reviewing later..


/trunk/config/oauth2.json
<https://reviews.apache.org/r/1947/#comment4452>

    this file and all others need standard apache boilerplate.



/trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml
<https://reviews.apache.org/r/1947/#comment4453>

    I think you mean facebook contacts :)



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java
<https://reviews.apache.org/r/1947/#comment4454>

    consider logging here (and above) where GadgetException is caught



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java
<https://reviews.apache.org/r/1947/#comment4455>

    Consider refactoring this re-used logic into a common method.
    



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java
<https://reviews.apache.org/r/1947/#comment4456>

    Consider wrapping the larger chunk of code in a null check after setting a local variable. 



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java
<https://reviews.apache.org/r/1947/#comment4457>

    extra tab



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4458>

    Introduce a logger.



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4459>

    this doesn't retry.



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java
<https://reviews.apache.org/r/1947/#comment4460>

    use servlet constants here..



/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java
<https://reviews.apache.org/r/1947/#comment4461>

    remove this comment
    


- Paul


On 2011-09-17 13:54:52, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-17 13:54:52)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1162113 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/content/sampledata/canonicaldb.json 1162113 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1162113 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1162113 
>   /trunk/java/common/conf/shindig.properties 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/OAuthProtocolException.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuthCallbackServlet.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1162113 
>   /trunk/java/server/pom.xml 1162113 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1162113 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1157240 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.

> On 2011-09-18 05:30:27, Murali VP wrote:
> > By adding new XML elements this change affects the XML schema of gadgets. Please provide/publish an updated XSD that a gadget that includes the new elements can validate against.
> > An alternative would be introduce a special namespace for the new elements so that the XML will remain backward compatible.

Murali, that's a good point. We have a proposal to open social gadget spec about the new elements that's added. Right now the proposal doesn't include gadget xml schema updates. Will update that soon. You may see the link here:
http://code.google.com/p/opensocial-resources/issues/detail?id=1209


- li


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review1958
-----------------------------------------------------------


On 2011-09-17 13:54:52, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-17 13:54:52)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1162113 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/content/sampledata/canonicaldb.json 1162113 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1162113 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1162113 
>   /trunk/java/common/conf/shindig.properties 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/OAuthProtocolException.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuthCallbackServlet.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1162113 
>   /trunk/java/server/pom.xml 1162113 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1162113 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1157240 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by Murali VP <mu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/#review1958
-----------------------------------------------------------


By adding new XML elements this change affects the XML schema of gadgets. Please provide/publish an updated XSD that a gadget that includes the new elements can validate against.
An alternative would be introduce a special namespace for the new elements so that the XML will remain backward compatible.

- Murali


On 2011-09-17 13:54:52, li xu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1947/
> -----------------------------------------------------------
> 
> (Updated 2011-09-17 13:54:52)
> 
> 
> Review request for shindig.
> 
> 
> Summary
> -------
> 
> OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.
> 
> 
> Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig
> 
> 
> JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624
> 
> OAuth2 test gadgets are added to common container test page and can be tested by using 
> http://localhost:8080/samplecontainer/examples/commoncontainer/index.html
> 
> You will need OAuth2 service provider implementation to test following two gadgets:
> OAuth2 demo with Shindig Provider (Authorization Code)
> OAuth2 demo with Shindig Provider (Client credential )
> 
> You will need to have your own google/facebook client to test following two gadgets
> OAuth2 demo with Google Provider
> OAuth2 demo with Facebook Provider
> Once it's registered with Google/Facebook, you can register the client-id/pwd under
> /config/oauth2.json
> 
> 
> This addresses bug shindig-1624.
>     https://issues.apache.org/jira/browse/shindig-1624
> 
> 
> Diffs
> -----
> 
>   /trunk/config/oauth2.json PRE-CREATION 
>   /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1162113 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
>   /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
>   /trunk/content/sampledata/canonicaldb.json 1162113 
>   /trunk/features/src/main/javascript/features/core.io/io.js 1162113 
>   /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1162113 
>   /trunk/java/common/conf/shindig.properties 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/OAuthProtocolException.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuthCallbackServlet.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1162113 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
>   /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java PRE-CREATION 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1162113 
>   /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1162113 
>   /trunk/java/server/pom.xml 1162113 
>   /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1162113 
>   /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1157240 
> 
> Diff: https://reviews.apache.org/r/1947/diff
> 
> 
> Testing
> -------
> 
> Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.
> 
> 
> Thanks,
> 
> li
> 
>


Re: Review Request: OAuth2.0 client implementation in Apache Shindig.

Posted by li xu <le...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1947/
-----------------------------------------------------------

(Updated 2011-09-17 13:54:52.494137)


Review request for shindig.


Changes
-------

link to related shindig issue.
https://issues.apache.org/jira/browse/SHINDIG-1624


Summary
-------

OAuth 2.0 client implementation in Apache Shindig from Adam Clarke, Eric Woods, Jeff Hoy, Li Xu and Matthew Marum.


Documentation wiki: http://docs.opensocial.org/display/OSD/OAuth+2.0+Consumer+Implementation+in+Apache+Shindig


JIRA issue: https://issues.apache.org/jira/browse/SHINDIG-1624

OAuth2 test gadgets are added to common container test page and can be tested by using 
http://localhost:8080/samplecontainer/examples/commoncontainer/index.html

You will need OAuth2 service provider implementation to test following two gadgets:
OAuth2 demo with Shindig Provider (Authorization Code)
OAuth2 demo with Shindig Provider (Client credential )

You will need to have your own google/facebook client to test following two gadgets
OAuth2 demo with Google Provider
OAuth2 demo with Facebook Provider
Once it's registered with Google/Facebook, you can register the client-id/pwd under
/config/oauth2.json


This addresses bug shindig-1624.
    https://issues.apache.org/jira/browse/shindig-1624


Diffs
-----

  /trunk/config/oauth2.json PRE-CREATION 
  /trunk/content/samplecontainer/examples/commoncontainer/gadgetCollections.json 1162113 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_facebook.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/oauth2_google.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_authorization.xml PRE-CREATION 
  /trunk/content/samplecontainer/examples/oauth2/shindig_client_credentials.xml PRE-CREATION 
  /trunk/content/sampledata/canonicaldb.json 1162113 
  /trunk/features/src/main/javascript/features/core.io/io.js 1162113 
  /trunk/features/src/main/javascript/features/shindig.xhrwrapper/xhrwrapper.js 1162113 
  /trunk/java/common/conf/shindig.properties 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AuthType.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/config/XhrwrapperConfigContributor.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/AbstractHttpCache.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpRequest.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth/OAuthProtocolException.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/BasicOAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/GadgetOAuth2TokenStore.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Accessor.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Arguments.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Error.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2FetcherConfig.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2GadgetContext.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Module.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Request.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2RequestException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2ResponseParams.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Store.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Token.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/OAuth2Utils.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/AuthorizationEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ClientAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/GrantRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/ResourceRequestHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/TokenEndpointResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BasicAuthenticationHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/BearerTokenHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/ClientCredentialsGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/CodeGrantTypeHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/OAuth2HandlerModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/handler/sample/TokenAuthorizationResponseHandler.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Cache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2CacheException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Client.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Encrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2EncryptionException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2PersistenceException.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/InMemoryCache.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/JSONOAuth2Persister.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/NoOpEncrypter.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2GadgetBinding.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2PersistenceModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/sample/OAuth2Provider.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/BasicOAuth2Message.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/sample/OAuth2MessageModule.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/HttpPreloader.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/ProxyRenderer.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuth2CallbackServlet.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/OAuthCallbackServlet.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java 1162113 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Service.java PRE-CREATION 
  /trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/OAuth2Spec.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/AuthTypeTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationService.java PRE-CREATION 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultInvalidationServiceTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/http/DefaultRequestPipelineTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java 1162113 
  /trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/templates/tags/TemplateBasedTagHandlerTest.java 1162113 
  /trunk/java/server/pom.xml 1162113 
  /trunk/java/server/src/main/webapp/WEB-INF/web.xml 1162113 
  /trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndServer.java 1157240 

Diff: https://reviews.apache.org/r/1947/diff


Testing
-------

Yes, passed all JUnit tests with mantis build. tested with new OAuth2 demo pages.


Thanks,

li