Honor cancelled login into google cloud.

Avoid spamming the user with login into google cloud
dialogs when the user cancels (or fails) the login
for a given action (like openning a particular dialog).

Change-Id: I025b007dbcec0681481f86672cf461898b393551
diff --git a/src/com/google/gct/testing/CloudConfigurationProviderImpl.java b/src/com/google/gct/testing/CloudConfigurationProviderImpl.java
index df10c86..02d57ed 100644
--- a/src/com/google/gct/testing/CloudConfigurationProviderImpl.java
+++ b/src/com/google/gct/testing/CloudConfigurationProviderImpl.java
@@ -126,6 +126,11 @@
   @NotNull
   @Override
   public List<? extends CloudConfiguration> getCloudConfigurations(@NotNull AndroidFacet facet, @NotNull final Kind configurationKind) {
+    try {
+      CloudAuthenticator.prepareCredential();
+    } catch(Exception e) {
+      return Lists.newArrayList();
+    }
 
     List<CloudPersistentConfiguration> cloudPersistentConfigurations = Lists.newArrayList(Iterables.filter(
       CloudCustomPersistentConfigurations.getInstance(facet.getModule()).getState().myCloudPersistentConfigurations,
@@ -179,6 +184,12 @@
 
   @NotNull
   public List<? extends CloudConfiguration> getAllCloudConfigurations(@NotNull AndroidFacet facet) {
+    try {
+      CloudAuthenticator.prepareCredential();
+    } catch(Exception e) {
+      return Lists.newArrayList();
+    }
+
     List<CloudPersistentConfiguration> cloudPersistentConfigurations =
       CloudCustomPersistentConfigurations.getInstance(facet.getModule()).getState().myCloudPersistentConfigurations;
     return Lists.newArrayList(Iterables.concat(deserializeConfigurations(cloudPersistentConfigurations, true, facet),
diff --git a/src/com/google/gct/testing/launcher/CloudAuthenticator.java b/src/com/google/gct/testing/launcher/CloudAuthenticator.java
index 9321345..b06747e 100644
--- a/src/com/google/gct/testing/launcher/CloudAuthenticator.java
+++ b/src/com/google/gct/testing/launcher/CloudAuthenticator.java
@@ -107,13 +107,13 @@
     return toolresults;
   }
 
-  private static void prepareCredential() {
+  public static void prepareCredential() {
     if (httpTransport == null) {
       httpTransport = createHttpTransport();
     }
     if (credential == null) {
       if (!authorize()) {
-        throw new RuntimeException("Failed to authorize in Google Cloud!");
+        throw new RuntimeException("Failed to authorize to Google Cloud!");
       }
       credential = GoogleLogin.getInstance().getCredential();
     }