Repository: jclouds-karaf
Updated Branches:
  refs/heads/master e22b06138 -> c696fecff


Properly encapsulate google credential processing


Project: http://git-wip-us.apache.org/repos/asf/jclouds-karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-karaf/commit/c696fecf
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-karaf/tree/c696fecf
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-karaf/diff/c696fecf

Branch: refs/heads/master
Commit: c696fecff73428a23fdcd9eb79c85c7a0380346d
Parents: e22b061
Author: Ignasi Barrera <[email protected]>
Authored: Wed Nov 23 15:09:19 2016 +0100
Committer: Ignasi Barrera <[email protected]>
Committed: Wed Nov 23 15:11:04 2016 +0100

----------------------------------------------------------------------
 .../blobstore/BlobStoreCommandWithOptions.java  |  5 +---
 .../BlobStoreServiceCreateCommand.java          |  2 +-
 .../compute/ComputeCommandWithOptions.java      |  5 +---
 .../compute/ComputeServiceCreateCommand.java    |  5 +---
 .../java/org/jclouds/karaf/utils/EnvHelper.java | 24 ++++++++++++++------
 5 files changed, 21 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-karaf/blob/c696fecf/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandWithOptions.java
----------------------------------------------------------------------
diff --git 
a/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandWithOptions.java
 
b/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandWithOptions.java
index 9020e0c..21ad4f0 100644
--- 
a/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandWithOptions.java
+++ 
b/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandWithOptions.java
@@ -88,10 +88,7 @@ public abstract class BlobStoreCommandWithOptions extends 
BlobStoreCommandBase {
       String providerValue = EnvHelper.getBlobStoreProvider(provider);
       String apiValue = EnvHelper.getBlobStoreApi(api);
       String identityValue = EnvHelper.getBlobStoreIdentity(identity);
-      String credentialValue = EnvHelper.getBlobStoreCredential(credential);
-      if (providerValue.equals("google-cloud-storage")) {
-         credentialValue = 
EnvHelper.getGoogleCredentialFromJsonFileIfPath(credentialValue);
-      }
+      String credentialValue = EnvHelper.getBlobStoreCredential(providerValue, 
credential);
       String endpointValue = EnvHelper.getBlobStoreEndpoint(endpoint);
       boolean contextNameProvided = !Strings.isNullOrEmpty(name);
       boolean canCreateService = (!Strings.isNullOrEmpty(providerValue) || 
!Strings.isNullOrEmpty(apiValue))

http://git-wip-us.apache.org/repos/asf/jclouds-karaf/blob/c696fecf/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreServiceCreateCommand.java
----------------------------------------------------------------------
diff --git 
a/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreServiceCreateCommand.java
 
b/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreServiceCreateCommand.java
index 65d8004..72834b4 100644
--- 
a/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreServiceCreateCommand.java
+++ 
b/commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreServiceCreateCommand.java
@@ -146,7 +146,7 @@ public class BlobStoreServiceCreateCommand extends 
BlobStoreCommandWithOptions {
                   String providerValue = 
EnvHelper.getBlobStoreProvider(provider);
                   String apiValue = EnvHelper.getBlobStoreApi(api);
                   String identityValue = 
EnvHelper.getBlobStoreIdentity(identity);
-                  String credentialValue = 
EnvHelper.getBlobStoreCredential(credential);
+                  String credentialValue = 
EnvHelper.getBlobStoreCredential(providerValue, credential);
                   String endpointValue = 
EnvHelper.getBlobStoreEndpoint(endpoint);
 
                  if (id != null) {

http://git-wip-us.apache.org/repos/asf/jclouds-karaf/blob/c696fecf/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandWithOptions.java
----------------------------------------------------------------------
diff --git 
a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandWithOptions.java
 
b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandWithOptions.java
index 6f42cf9..ffcf530 100644
--- 
a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandWithOptions.java
+++ 
b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandWithOptions.java
@@ -86,10 +86,7 @@ public abstract class ComputeCommandWithOptions extends 
ComputeCommandBase {
       String providerValue = EnvHelper.getComputeProvider(provider);
       String apiValue = EnvHelper.getComputeApi(api);
       String identityValue = EnvHelper.getComputeIdentity(identity);
-      String credentialValue = EnvHelper.getComputeCredential(credential);
-      if (credentialValue != null && providerValue != null && 
providerValue.startsWith("google")) {
-         credentialValue = 
EnvHelper.getGoogleCredentialFromJsonFileIfPath(credentialValue);
-      }
+      String credentialValue = EnvHelper.getComputeCredential(providerValue, 
credential);
       String endpointValue = EnvHelper.getComputeEndpoint(endpoint);
       boolean contextNameProvided = !Strings.isNullOrEmpty(name);
       boolean canCreateService = (!Strings.isNullOrEmpty(providerValue) || 
!Strings.isNullOrEmpty(apiValue))

http://git-wip-us.apache.org/repos/asf/jclouds-karaf/blob/c696fecf/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeServiceCreateCommand.java
----------------------------------------------------------------------
diff --git 
a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeServiceCreateCommand.java
 
b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeServiceCreateCommand.java
index 46ba926..9ce7e7c 100644
--- 
a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeServiceCreateCommand.java
+++ 
b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeServiceCreateCommand.java
@@ -145,10 +145,7 @@ public class ComputeServiceCreateCommand extends 
ComputeCommandWithOptions {
                   String apiValue = EnvHelper.getComputeApi(api);
                   String identityValue = 
EnvHelper.getComputeIdentity(identity);
                   String endpointValue = 
EnvHelper.getComputeEndpoint(endpoint);
-                  String credentialValue = 
EnvHelper.getComputeCredential(credential);
-                  if (credentialValue != null && providerValue != null && 
providerValue.startsWith("google")) {
-                     credentialValue = 
EnvHelper.getGoogleCredentialFromJsonFileIfPath(credentialValue);
-                  }
+                  String credentialValue = 
EnvHelper.getComputeCredential(providerValue, credential);
 
                   if (name != null) {
                     dictionary.put(Constants.NAME, name);

http://git-wip-us.apache.org/repos/asf/jclouds-karaf/blob/c696fecf/utils/src/main/java/org/jclouds/karaf/utils/EnvHelper.java
----------------------------------------------------------------------
diff --git a/utils/src/main/java/org/jclouds/karaf/utils/EnvHelper.java 
b/utils/src/main/java/org/jclouds/karaf/utils/EnvHelper.java
index c3d7b8d..b1e53c8 100644
--- a/utils/src/main/java/org/jclouds/karaf/utils/EnvHelper.java
+++ b/utils/src/main/java/org/jclouds/karaf/utils/EnvHelper.java
@@ -89,12 +89,13 @@ public class EnvHelper {
     /**
      * Returns the credential value and falls back to env if the specified 
value is null.
      *
+     * @param The provider id
      * @param credential
      * @return
      */
-    public static String getComputeCredential(String credential) {
-        return getValueOrPropertyOrEnvironmentVariable(
-            credential, Constants.PROPERTY_CREDENTIAL, 
JCLOUDS_COMPUTE_CREDENTIAL);
+    public static String getComputeCredential(String provider, String 
credential) {
+        return getCredentialValue(provider, 
getValueOrPropertyOrEnvironmentVariable(
+            credential, Constants.PROPERTY_CREDENTIAL, 
JCLOUDS_COMPUTE_CREDENTIAL));
     }
 
     /**
@@ -102,7 +103,7 @@ public class EnvHelper {
      * @param credentialValue
      * @return
      */
-   public static String getGoogleCredentialFromJsonFileIfPath(String 
credentialValue) {
+   private static String getGoogleCredentialFromJsonFileIfPath(String 
credentialValue) {
       File credentialsFile = new File(credentialValue);
       if (credentialsFile.exists()) {
          try {
@@ -163,12 +164,13 @@ public class EnvHelper {
     /**
      * Returns the credential value and falls back to env if the specified 
value is null.
      *
+     * @param The provider id
      * @param credential
      * @return
      */
-    public static String getBlobStoreCredential(String credential) {
-        return getValueOrPropertyOrEnvironmentVariable(
-            credential, Constants.PROPERTY_CREDENTIAL, 
JCLOUDS_BLOBSTORE_CREDENTIAL);
+    public static String getBlobStoreCredential(String provider, String 
credential) {
+        return getCredentialValue(provider, 
getValueOrPropertyOrEnvironmentVariable(
+            credential, Constants.PROPERTY_CREDENTIAL, 
JCLOUDS_BLOBSTORE_CREDENTIAL));
     }
 
     /**
@@ -238,4 +240,12 @@ public class EnvHelper {
         }
         return value;
     }
+    
+   private static String getCredentialValue(String provider, String 
credential) {
+      return credential != null && isGoogleCloud(provider) ? 
getGoogleCredentialFromJsonFileIfPath(credential) : credential;
+   }
+   
+   private static boolean isGoogleCloud(String provider) {
+      return provider != null && provider.startsWith("google");
+   }
 }

Reply via email to