use of com.microsoft.azure.docker.model.AzureDockerVnet in project azure-tools-for-java by Microsoft.
the class AzureNewDockerConfigPage method updateDockerHostVnetGroup.
private void updateDockerHostVnetGroup(Composite mainContainer) {
dockerHostNewVNetRadioButton.setSelection(true);
dockerHostNewVNetRadioButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
dockerHostNewVNetNameTextField.setEnabled(true);
dockerHostNewVNetAddrSpaceTextField.setEnabled(true);
dockerHostSelectVnetComboBox.setEnabled(false);
dockerHostSelectSubnetComboBox.setEnabled(false);
setPageComplete(doValidate());
}
});
dockerHostNewVNetNameTextField.setToolTipText(AzureDockerValidationUtils.getDockerVnetNameTip());
dockerHostNewVNetNameTextField.setText(newHost.hostVM.vnetName);
dockerHostNewVNetNameTextField.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent event) {
if (AzureDockerValidationUtils.validateDockerVnetName(((Text) event.getSource()).getText())) {
errDispatcher.removeMessage("dockerHostNewVNetNameTextField", dockerHostNewVNetNameTextField);
setErrorMessage(null);
setPageComplete(doValidate());
} else {
errDispatcher.addMessage("dockerHostNewVNetNameTextField", AzureDockerValidationUtils.getDockerVnetNameTip(), null, IMessageProvider.ERROR, dockerHostNewVNetNameTextField);
setErrorMessage("Invalid network name");
setPageComplete(false);
}
}
});
dockerHostNewVNetAddrSpaceTextField.setToolTipText(AzureDockerValidationUtils.getDockerVnetAddrspaceTip());
dockerHostNewVNetAddrSpaceTextField.setText(newHost.hostVM.vnetAddressSpace);
dockerHostNewVNetAddrSpaceTextField.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent event) {
if (AzureDockerValidationUtils.validateDockerVnetAddrSpace(((Text) event.getSource()).getText())) {
errDispatcher.removeMessage("dockerHostNewVNetAddrSpaceTextField", dockerHostNewVNetAddrSpaceTextField);
setErrorMessage(null);
setPageComplete(doValidate());
} else {
errDispatcher.addMessage("dockerHostNewVNetAddrSpaceTextField", AzureDockerValidationUtils.getDockerVnetAddrspaceTip(), null, IMessageProvider.ERROR, dockerHostNewVNetAddrSpaceTextField);
setErrorMessage("Invalid address space");
setPageComplete(false);
}
}
});
dockerHostSelectVNetRadioButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
dockerHostNewVNetNameTextField.setEnabled(false);
dockerHostNewVNetAddrSpaceTextField.setEnabled(false);
dockerHostSelectVnetComboBox.setEnabled(true);
dockerHostSelectSubnetComboBox.setEnabled(true);
setPageComplete(doValidate());
}
});
dockerHostSelectVnetComboBox.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
updateDockerSelectSubnetComboBox(mainContainer, (AzureDockerVnet) dockerHostSelectVnetComboBox.getData(dockerHostSelectVnetComboBox.getText()));
setPageComplete(doValidate());
}
});
dockerHostSelectSubnetComboBox.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
setPageComplete(doValidate());
}
});
dockerHostSelectVnetComboBox.setEnabled(false);
dockerHostSelectSubnetComboBox.setEnabled(false);
String region = (String) dockerLocationComboBox.getText();
Region regionObj = Region.findByLabelOrName(region);
updateDockerSelectVnetComboBox(mainContainer, getCurrentSubscription(), regionObj != null ? regionObj.name() : region);
}
use of com.microsoft.azure.docker.model.AzureDockerVnet in project azure-tools-for-java by Microsoft.
the class AzureNewDockerConfigPage method validateDockerVnet.
private boolean validateDockerVnet() {
// Docker virtual network name
if (dockerHostNewVNetRadioButton.getSelection()) {
// New virtual network
String vnetName = dockerHostNewVNetNameTextField.getText();
if (vnetName == null || vnetName.isEmpty() || !AzureDockerValidationUtils.validateDockerVnetName(vnetName)) {
hostDetailsTabFolder.setSelection(2);
errDispatcher.addMessage("dockerHostNewVNetNameTextField", AzureDockerValidationUtils.getDockerVnetNameTip(), null, IMessageProvider.ERROR, dockerHostNewVNetNameTextField);
setErrorMessage("Invalid network name");
return false;
} else {
errDispatcher.removeMessage("dockerHostNewVNetNameTextField", dockerHostNewVNetNameTextField);
setErrorMessage(null);
String vnetAddrSpace = dockerHostNewVNetAddrSpaceTextField.getText();
if (vnetAddrSpace == null || vnetAddrSpace.isEmpty() || !AzureDockerValidationUtils.validateDockerVnetAddrSpace(vnetAddrSpace)) {
hostDetailsTabFolder.setSelection(2);
errDispatcher.addMessage("dockerHostNewVNetAddrSpaceTextField", AzureDockerValidationUtils.getDockerVnetAddrspaceTip(), null, IMessageProvider.ERROR, dockerHostNewVNetAddrSpaceTextField);
setErrorMessage("Invalid address space");
return false;
} else {
errDispatcher.removeMessage("dockerHostNewVNetAddrSpaceTextField", dockerHostNewVNetAddrSpaceTextField);
setErrorMessage(null);
newHost.hostVM.vnetName = vnetName;
newHost.hostVM.vnetAddressSpace = vnetAddrSpace;
newHost.hostVM.subnetName = "subnet1";
return true;
}
}
} else {
// Existing virtual network and subnet
AzureDockerVnet vnet = (AzureDockerVnet) dockerHostSelectVnetComboBox.getData(dockerHostSelectVnetComboBox.getText());
if (vnet == null || vnet.name == null || vnet.name.isEmpty()) {
hostDetailsTabFolder.setSelection(2);
String errMsg = "Network not set";
errDispatcher.addMessage("dockerHostSelectVnetComboBox", errMsg, null, IMessageProvider.ERROR, dockerHostSelectVnetComboBox);
setErrorMessage(errMsg);
return false;
} else {
errDispatcher.removeMessage("dockerHostSelectVnetComboBox", dockerHostSelectVnetComboBox);
setErrorMessage(null);
String subnet = (String) dockerHostSelectSubnetComboBox.getText();
if (subnet == null || subnet.isEmpty()) {
hostDetailsTabFolder.setSelection(2);
errDispatcher.addMessage("dockerHostSelectSubnetComboBox", AzureDockerValidationUtils.getDockerVnetAddrspaceTip(), null, IMessageProvider.ERROR, dockerHostSelectSubnetComboBox);
setErrorMessage("Subnet not set");
return false;
} else {
errDispatcher.removeMessage("dockerHostSelectSubnetComboBox", dockerHostSelectSubnetComboBox);
setErrorMessage(null);
// Add "@resourceGroupName" to mark this as an existing virtual
// network
newHost.hostVM.vnetName = vnet.name + "@" + vnet.resourceGroup;
newHost.hostVM.vnetAddressSpace = vnet.addrSpace;
newHost.hostVM.subnetName = subnet;
return true;
}
}
}
}
use of com.microsoft.azure.docker.model.AzureDockerVnet in project azure-tools-for-java by Microsoft.
the class AzureNewDockerConfigPage method updateDockerSelectVnetComboBox.
private void updateDockerSelectVnetComboBox(Composite mainContainer, AzureDockerSubscription currentSubscription, String region) {
dockerHostSelectVnetComboBox.deselectAll();
dockerHostSelectVnetComboBox.removeAll();
if (currentSubscription != null && region != null) {
List<AzureDockerVnet> dockerVnets = dockerManager.getNetworksAndSubnets(currentSubscription);
for (AzureDockerVnet vnet : dockerVnets) {
if (region != null && vnet.region.equals(region)) {
dockerHostSelectVnetComboBox.add(vnet.name);
dockerHostSelectVnetComboBox.setData(vnet.name, vnet);
}
}
}
dockerHostSelectVnetComboBox.redraw();
if (dockerHostSelectVnetComboBox.getItemCount() > 0) {
dockerHostSelectVnetComboBox.select(0);
updateDockerSelectSubnetComboBox(mainContainer, (AzureDockerVnet) dockerHostSelectVnetComboBox.getData(dockerHostSelectVnetComboBox.getText()));
} else {
updateDockerSelectSubnetComboBox(mainContainer, null);
}
}
Aggregations