diff --git a/bundles/com.amazonaws.eclipse.dynamodb/src/com/amazonaws/eclipse/dynamodb/AbstractAddNewAttributeDialog.java b/bundles/com.amazonaws.eclipse.dynamodb/src/com/amazonaws/eclipse/dynamodb/AbstractAddNewAttributeDialog.java index 21d057a..40d3236 100644 --- a/bundles/com.amazonaws.eclipse.dynamodb/src/com/amazonaws/eclipse/dynamodb/AbstractAddNewAttributeDialog.java +++ b/bundles/com.amazonaws.eclipse.dynamodb/src/com/amazonaws/eclipse/dynamodb/AbstractAddNewAttributeDialog.java @@ -57,7 +57,58 @@ protected void createButtonsForButtonBar(Composite parent) { super.createButtonsForButtonBar(parent); validate(); } + + + private final class LoadEnvironmentsThread extends CancelableThread { + @Override + public void run() { + final List environments = new ArrayList<>(); + try { + environments.addAll(elasticBeanstalkClient.describeEnvironments().getEnvironments()); + } catch (Exception e) { + if (isServiceSignUpException(e)) { + StatusManager.getManager().handle(newServiceSignUpErrorStatus(e), StatusManager.SHOW | StatusManager.LOG); + } else { + Status status = new Status(Status.ERROR, ElasticBeanstalkPlugin.PLUGIN_ID, + "Unable to load existing environments: " + e.getMessage(), e); + StatusManager.getManager().handle(status, StatusManager.LOG); + } + setRunning(false); + return; + } + + Display.getDefault().asyncExec(new Runnable() { + @Override + public void run() { + try { + List environmentNames = new ArrayList<>(); + for ( EnvironmentDescription environment : environments ) { + // Skip any terminated environments, since we can safely reuse their names + if ( isEnvironmentTerminated(environment) ) { + continue; + } + environmentNames.add(environment.getEnvironmentName()); + } + Collections.sort(environmentNames); + + synchronized (LoadEnvironmentsThread.this) { + if ( !isCanceled() ) { + existingEnvironmentNames.clear(); + existingEnvironmentNames.addAll(environmentNames); + environmentNamesLoaded.setValue(true); + runValidators(); + } + } + } finally { + setRunning(false); + } + } + }); + } + } abstract public void validate(); } + + diff --git a/bundles/com.amazonaws.eclipse.elasticbeanstalk/src/com/amazonaws/eclipse/elasticbeanstalk/server/ui/DeployWizardApplicationSelectionPage.java b/bundles/com.amazonaws.eclipse.elasticbeanstalk/src/com/amazonaws/eclipse/elasticbeanstalk/server/ui/DeployWizardApplicationSelectionPage.java index 38b0e5a..09d9109 100644 --- a/bundles/com.amazonaws.eclipse.elasticbeanstalk/src/com/amazonaws/eclipse/elasticbeanstalk/server/ui/DeployWizardApplicationSelectionPage.java +++ b/bundles/com.amazonaws.eclipse.elasticbeanstalk/src/com/amazonaws/eclipse/elasticbeanstalk/server/ui/DeployWizardApplicationSelectionPage.java @@ -581,54 +581,6 @@ public void run() { } } - private final class LoadEnvironmentsThread extends CancelableThread { - @Override - public void run() { - final List environments = new ArrayList<>(); - try { - environments.addAll(elasticBeanstalkClient.describeEnvironments().getEnvironments()); - } catch (Exception e) { - if (isServiceSignUpException(e)) { - StatusManager.getManager().handle(newServiceSignUpErrorStatus(e), StatusManager.SHOW | StatusManager.LOG); - } else { - Status status = new Status(Status.ERROR, ElasticBeanstalkPlugin.PLUGIN_ID, - "Unable to load existing environments: " + e.getMessage(), e); - StatusManager.getManager().handle(status, StatusManager.LOG); - } - setRunning(false); - return; - } - - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - try { - List environmentNames = new ArrayList<>(); - for ( EnvironmentDescription environment : environments ) { - // Skip any terminated environments, since we can safely reuse their names - if ( isEnvironmentTerminated(environment) ) { - continue; - } - environmentNames.add(environment.getEnvironmentName()); - } - Collections.sort(environmentNames); - - synchronized (LoadEnvironmentsThread.this) { - if ( !isCanceled() ) { - existingEnvironmentNames.clear(); - existingEnvironmentNames.addAll(environmentNames); - environmentNamesLoaded.setValue(true); - runValidators(); - } - } - } finally { - setRunning(false); - } - } - }); - } - } - private boolean isEnvironmentTerminated(EnvironmentDescription environment) { if (environment == null || environment.getStatus() == null) { return false;