use of com.microsoft.azure.toolkit.redis.PricingTier in project azure-tools-for-java by Microsoft.
the class CreateRedisCacheForm method createDialogArea.
/**
* Create contents of the dialog.
*
* @param parent
*/
@Override
protected Control createDialogArea(Composite parent) {
resourceBundle = MessageHandler.getResourceBundle(MODULE_NAME);
if (resourceBundle == null) {
return null;
}
setTitle(MessageHandler.getResourceString(resourceBundle, DIALOG_TITLE));
setMessage(MessageHandler.getResourceString(resourceBundle, DIALOG_MESSAGE));
Composite area = (Composite) super.createDialogArea(parent);
Composite container = new Composite(area, SWT.NONE);
GridLayout glContainer = new GridLayout(4, false);
glContainer.horizontalSpacing = LAYOUT_SPACING;
glContainer.verticalSpacing = LAYOUT_SPACING;
container.setLayout(glContainer);
container.setLayoutData(new GridData(GridData.FILL_BOTH));
Label lblDnsName = new Label(container, SWT.NONE);
lblDnsName.setText(MessageHandler.getResourceString(resourceBundle, LABEL_DNS_NAME));
txtDnsName = new Text(container, SWT.BORDER);
txtDnsName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
decoratorDnsName = new ControlDecoration(txtDnsName, SWT.CENTER);
decoratorDnsName.setDescriptionText(MessageHandler.getResourceString(resourceBundle, DECORACTOR_DNS));
FieldDecoration fieldDecoration = FieldDecorationRegistry.getDefault().getFieldDecoration(FieldDecorationRegistry.DEC_ERROR);
if (fieldDecoration != null) {
Image image = fieldDecoration.getImage();
decoratorDnsName.setImage(image);
}
Label lblDnsSuffix = new Label(container, SWT.NONE);
lblDnsSuffix.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));
lblDnsSuffix.setText(MessageHandler.getResourceString(resourceBundle, LABEL_DNS_SUFFIX));
Label lblSubscription = new Label(container, SWT.NONE);
lblSubscription.setText(MessageHandler.getResourceString(resourceBundle, LABEL_SUBSCRIPTION));
cbSubs = new Combo(container, SWT.READ_ONLY);
cbSubs.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1));
Label lblResourceGroup = new Label(container, SWT.NONE);
lblResourceGroup.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 4, 1));
lblResourceGroup.setText(MessageHandler.getResourceString(resourceBundle, LABEL_RESOURCE_GRP));
rdoCreateNew = new Button(container, SWT.RADIO);
rdoCreateNew.setText(MessageHandler.getResourceString(resourceBundle, RADIOBUTTON_NEW_GRP));
rdoCreateNew.setSelection(true);
txtNewResGrpName = new Text(container, SWT.BORDER);
txtNewResGrpName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1));
txtNewResGrpName.setEnabled(true);
decoratorResGrpName = new ControlDecoration(txtNewResGrpName, SWT.CENTER);
decoratorResGrpName.setDescriptionText(MessageHandler.getResourceString(resourceBundle, RES_GRP_NAME_RULE));
if (fieldDecoration != null) {
Image image = fieldDecoration.getImage();
decoratorResGrpName.setImage(image);
}
rdoUseExisting = new Button(container, SWT.RADIO);
rdoUseExisting.setText(MessageHandler.getResourceString(resourceBundle, RADIOBUTTON_USE_EXIST_GRP));
rdoUseExisting.setSelection(false);
cbUseExisting = new Combo(container, SWT.READ_ONLY);
cbUseExisting.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1));
cbUseExisting.add(MessageHandler.getResourceString(resourceBundle, LOADING));
cbUseExisting.select(0);
cbUseExisting.setEnabled(false);
Label lblLocation = new Label(container, SWT.NONE);
lblLocation.setText(MessageHandler.getResourceString(resourceBundle, LABEL_LOCTION));
cbLocations = new Combo(container, SWT.READ_ONLY);
cbLocations.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1));
cbLocations.add(MessageHandler.getResourceString(resourceBundle, LOADING));
cbLocations.select(0);
cbLocations.setEnabled(false);
Label lblPricingTier = new Label(container, SWT.READ_ONLY);
lblPricingTier.setText(MessageHandler.getResourceString(resourceBundle, LABEL_PRICING));
cbPricetiers = new Combo(container, SWT.READ_ONLY);
cbPricetiers.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));
for (PricingTier price : PricingTier.values()) {
cbPricetiers.add(price.toString());
}
cbPricetiers.select(0);
selectedPriceTierValue = cbPricetiers.getText();
Link lnkPrice = new Link(container, SWT.NONE);
lnkPrice.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
lnkPrice.setText(MessageHandler.getResourceString(resourceBundle, LINK_PRICE));
lnkPrice.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
try {
PlatformUI.getWorkbench().getBrowserSupport().getExternalBrowser().openURL(new URL(event.text));
} catch (Exception ex) {
LOG.log(MessageHandler.getCommonStr(OPEN_BROWSER_ERROR), ex);
}
}
});
chkUnblockPort = new Button(container, SWT.CHECK);
chkUnblockPort.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 4, 1));
chkUnblockPort.setText(MessageHandler.getResourceString(resourceBundle, CHECKBOX_SSL));
this.setHelpAvailable(false);
txtDnsName.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent arg0) {
dnsNameValue = txtDnsName.getText();
validateFields();
}
});
for (Subscription sub : selectedSubscriptions) {
cbSubs.add(String.format(SUBS_COMBO_ITEMS_FORMAT, sub.getName(), sub.getId()));
}
cbSubs.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
currentSub = selectedSubscriptions.get(cbSubs.getSelectionIndex());
if (loaded) {
fillLocationsAndResourceGrps(currentSub);
}
validateFields();
}
});
if (selectedSubscriptions.size() > 0) {
cbSubs.select(0);
}
rdoCreateNew.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
txtNewResGrpName.setEnabled(true);
cbUseExisting.setEnabled(false);
newResGrp = true;
selectedResGrpValue = txtNewResGrpName.getText();
validateFields();
}
});
rdoUseExisting.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
txtNewResGrpName.setEnabled(false);
cbUseExisting.setEnabled(true);
if (loaded) {
newResGrp = false;
selectedResGrpValue = sortedGroups.get(cbUseExisting.getSelectionIndex());
validateFields();
}
}
});
txtNewResGrpName.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent arg0) {
selectedResGrpValue = txtNewResGrpName.getText();
validateFields();
}
});
cbUseExisting.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
selectedResGrpValue = cbUseExisting.getText();
validateFields();
}
});
cbLocations.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
selectedLocationValue = sortedLocations.get(cbLocations.getSelectionIndex()).getLabel();
validateFields();
}
});
cbPricetiers.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
selectedPriceTierValue = cbPricetiers.getText();
validateFields();
}
});
chkUnblockPort.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
Button btn = (Button) e.getSource();
if (btn.getSelection()) {
noSSLPort = true;
} else {
noSSLPort = false;
}
}
});
AzureTaskManager.getInstance().runInBackground(MessageHandler.getResourceString(resourceBundle, LOADING_LOCATION_AND_GRPS), false, () -> {
try {
DefaultLoader.getIdeHelper().invokeLater(new Runnable() {
@Override
public void run() {
fillLocationsAndResourceGrps(currentSub);
cbLocations.setEnabled(true);
loaded = true;
validateFields();
}
});
} catch (Exception ex) {
LOG.log(MessageHandler.getCommonStr(LOAD_LOCATION_AND_RESOURCE_ERROR), ex);
}
});
return area;
}
use of com.microsoft.azure.toolkit.redis.PricingTier in project azure-tools-for-java by Microsoft.
the class CreateRedisCacheForm method getData.
private RedisConfig getData() {
RedisConfig redisConfig = new RedisConfig();
redisConfig.setSubscription(this.currentSub);
redisConfig.setRegion(Region.fromName(selectedLocationValue));
redisConfig.setResourceGroup(newResGrp ? new DraftResourceGroup(this.currentSub, selectedResGrpValue) : com.microsoft.azure.toolkit.lib.Azure.az(AzureGroup.class).get(this.currentSub.getId(), selectedResGrpValue));
redisConfig.setEnableNonSslPort(noSSLPort);
redisConfig.setPricingTier(PricingTier.values().stream().filter(pricingTier -> StringUtils.equalsIgnoreCase(pricingTier.toString(), selectedPriceTierValue)).findFirst().orElse(null));
redisConfig.setName(dnsNameValue);
return redisConfig;
}
Aggregations