Search in sources :

Example 1 with ExternalStorageAccountForm

use of com.microsoft.azuretools.azureexplorer.forms.ExternalStorageAccountForm in project azure-tools-for-java by Microsoft.

the class AttachExternalStorageAccountAction method actionPerformed.

@Override
public void actionPerformed(NodeActionEvent e) {
    final ExternalStorageAccountForm form = new ExternalStorageAccountForm(PluginUtil.getParentShell(), "Attach External Storage Account");
    form.setOnFinish(new Runnable() {

        @Override
        public void run() {
            DefaultLoader.getIdeHelper().invokeLater(new Runnable() {

                public void run() {
                    ClientStorageAccount storageAccount = form.getStorageAccount();
                    ClientStorageAccount fullStorageAccount = form.getFullStorageAccount();
                    for (ClientStorageAccount clientStorageAccount : ExternalStorageHelper.getList(null)) {
                        String name = storageAccount.getName();
                        if (clientStorageAccount.getName().equals(name)) {
                            DefaultLoader.getUIHelper().showError("Storage account with name '" + name + "' already exists.", "Service Explorer");
                            return;
                        }
                    }
                    ExternalStorageNode node = new ExternalStorageNode(storageModule, fullStorageAccount);
                    storageModule.addChildNode(node);
                    ExternalStorageHelper.add(storageAccount);
                }
            });
        }
    });
    form.open();
}
Also used : ClientStorageAccount(com.microsoft.tooling.msservices.model.storage.ClientStorageAccount) ExternalStorageAccountForm(com.microsoft.azuretools.azureexplorer.forms.ExternalStorageAccountForm) ExternalStorageNode(com.microsoft.tooling.msservices.serviceexplorer.azure.storage.ExternalStorageNode)

Aggregations

ExternalStorageAccountForm (com.microsoft.azuretools.azureexplorer.forms.ExternalStorageAccountForm)1 ClientStorageAccount (com.microsoft.tooling.msservices.model.storage.ClientStorageAccount)1 ExternalStorageNode (com.microsoft.tooling.msservices.serviceexplorer.azure.storage.ExternalStorageNode)1