You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2014/09/09 20:52:19 UTC

git commit: Allow accessToken to be manually specified

Repository: camel
Updated Branches:
  refs/heads/master c047e252c -> 294ced50c


Allow accessToken to be manually specified


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/294ced50
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/294ced50
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/294ced50

Branch: refs/heads/master
Commit: 294ced50c75426c82a8f26d8f158949c9f21b8de
Parents: c047e25
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Tue Sep 9 16:21:42 2014 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Tue Sep 9 16:21:42 2014 -0230

----------------------------------------------------------------------
 .../drive/BatchGoogleDriveClientFactory.java       | 17 ++++++++++++-----
 .../google/drive/GoogleDriveClientFactory.java     |  2 +-
 .../google/drive/GoogleDriveComponent.java         |  2 +-
 .../drive/InteractiveGoogleDriveClientFactory.java |  2 +-
 .../src/test/resources/test-options.properties     |  1 +
 5 files changed, 16 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/294ced50/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/BatchGoogleDriveClientFactory.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/BatchGoogleDriveClientFactory.java b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/BatchGoogleDriveClientFactory.java
index 0e736bc..9166aea 100644
--- a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/BatchGoogleDriveClientFactory.java
+++ b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/BatchGoogleDriveClientFactory.java
@@ -38,24 +38,31 @@ public class BatchGoogleDriveClientFactory implements GoogleDriveClientFactory {
     }
 
     @Override
-    public Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken) {
+    public Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken, String accessToken) {
         Credential credential;
         try {
-            credential = authorize(clientId, clientSecret, scopes, refreshToken);
+            credential = authorize(clientId, clientSecret, scopes);
+
+            if (refreshToken != null && !"".equals(refreshToken)) {
+                credential.setRefreshToken(refreshToken);
+            } 
+            if (accessToken != null && !"".equals(accessToken)) {
+                credential.setAccessToken(accessToken);
+            }
             return new Drive.Builder(transport, jsonFactory, credential).setApplicationName(applicationName).build();
         } catch (Exception e) {
             LOG.error("Could not create Google Drive client.", e);            
         }
         return null;
     }
-
+    
     // Authorizes the installed application to access user's protected data.
-    private Credential authorize(String clientId, String clientSecret, Collection<String> scopes, String refreshToken) throws Exception {
+    private Credential authorize(String clientId, String clientSecret, Collection<String> scopes) throws Exception {
         // authorize
         return new GoogleCredential.Builder()
             .setJsonFactory(jsonFactory)
             .setTransport(transport)
             .setClientSecrets(clientId, clientSecret)
-            .build().setRefreshToken(refreshToken);
+            .build();
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/294ced50/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveClientFactory.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveClientFactory.java b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveClientFactory.java
index 0b87f2a..5fef36e 100644
--- a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveClientFactory.java
+++ b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveClientFactory.java
@@ -22,6 +22,6 @@ import com.google.api.services.drive.Drive;
 
 public interface GoogleDriveClientFactory {
 
-    Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken);
+    Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken, String accessToken);
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/294ced50/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
index ded60da..a7ee6fd 100644
--- a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
+++ b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
@@ -55,7 +55,7 @@ public class GoogleDriveComponent extends AbstractApiComponent<GoogleDriveApiNam
 
     public Drive getClient() {
         if (client == null) {
-            client = getClientFactory().makeClient(configuration.getClientId(), configuration.getClientSecret(), scopes, configuration.getApplicationName(), configuration.getRefreshToken());
+            client = getClientFactory().makeClient(configuration.getClientId(), configuration.getClientSecret(), scopes, configuration.getApplicationName(), configuration.getRefreshToken(), configuration.getAccessToken());
         }
         return client;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/294ced50/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/InteractiveGoogleDriveClientFactory.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/InteractiveGoogleDriveClientFactory.java b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/InteractiveGoogleDriveClientFactory.java
index cc0b44b..5ac8d51 100644
--- a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/InteractiveGoogleDriveClientFactory.java
+++ b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/InteractiveGoogleDriveClientFactory.java
@@ -43,7 +43,7 @@ public class InteractiveGoogleDriveClientFactory implements GoogleDriveClientFac
     }
 
     @Override
-    public Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken) {
+    public Drive makeClient(String clientId, String clientSecret, Collection<String> scopes, String applicationName, String refreshToken, String accessToken) {
         Credential credential;
         try {
             credential = authorize(clientId, clientSecret, scopes);

http://git-wip-us.apache.org/repos/asf/camel/blob/294ced50/components/camel-google-drive/src/test/resources/test-options.properties
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/resources/test-options.properties b/components/camel-google-drive/src/test/resources/test-options.properties
index 445f90f..d72fdc5 100644
--- a/components/camel-google-drive/src/test/resources/test-options.properties
+++ b/components/camel-google-drive/src/test/resources/test-options.properties
@@ -22,4 +22,5 @@
 clientId=
 clientSecret=
 applicationName=camel-google-drive/1.0
+#accessToken=
 refreshToken=