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"); + } }
