in PluginsAndFeatures/azure-toolkit-for-eclipse/com.microsoft.azuretools.core/src/com/microsoft/azuretools/core/ui/commoncontrols/NewCertificateDialog.java [287:427]
protected void okPressed() {
if (txtPwd.getText() == null
|| txtPwd.getText().isEmpty()) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCertDlgPwNul;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
} else if (txtConfirmPwd.getText() == null
|| txtConfirmPwd.getText().isEmpty()) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCertDlgCfPwNul;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
} else if (!(txtPwd.getText() == null)
&& !(txtPwd.getText().isEmpty())) {
// check for password length
if (txtPwd.getText().length() < 6) {
PluginUtil.displayErrorDialog(getShell(),
Messages.newCertDlgPwdWrng, Messages.newCertDlgPwLength);
return;
}
Pattern pattern = Pattern.compile("^\\S+$");
Matcher match = pattern.matcher(txtPwd.getText());
if (!match.find()) {
errorTitle = Messages.newCertDlgPwdWrng;
errorMessage = Messages.newCertDlgPwNtCor;
PluginUtil.displayErrorDialog(getShell(),
errorTitle, errorMessage);
return;
}
}
if (!(txtConfirmPwd.getText() == null)
&& !(txtConfirmPwd.getText().isEmpty())) {
// check for password length
if (txtConfirmPwd.getText().length() < 6) {
PluginUtil.displayErrorDialog(getShell(),
Messages.newCertDlgPwdWrng, Messages.newCertDlgPwLength);
return;
}
Pattern pattern = Pattern.compile("^\\S+$");
Matcher match = pattern.matcher(txtConfirmPwd.getText());
if (!match.find()) {
errorTitle = Messages.newCertDlgPwdWrng;
errorMessage = Messages.newCertDlgPwNtCor;
PluginUtil.displayErrorDialog(getShell(),
errorTitle, errorMessage);
return;
}
}
if (!(txtPwd.getText()).equals(txtConfirmPwd.getText())) {
errorTitle = Messages.newCertDlgPwNtMtch;
errorMessage = Messages.newCerDlgPwNtMsg;
PluginUtil.displayErrorDialog(getShell(),
errorTitle, errorMessage);
return;
}
if (txtCNName.getText() == null || txtCNName.getText().isEmpty()) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCertDlgCNNull;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
if (txtCertFile.getText() == null || txtCertFile.getText().isEmpty()) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCertDlgCerNul;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
} else if (txtPFXFile.getText() == null
|| txtPFXFile.getText().isEmpty()) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCertDlgPFXNull;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
String certFilePath = txtCertFile.getText();
String pfxFilePath = txtPFXFile.getText();
if (certFilePath.lastIndexOf(File.separator) == -1
|| pfxFilePath.lastIndexOf(File.separator) == -1) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCerDlgInvldPth;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
if ((!(certFilePath.endsWith(".cer") || certFilePath.endsWith(".CER")))
|| (!(pfxFilePath.endsWith(".pfx") || pfxFilePath.endsWith(".PFX")))) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCerDlgInvdFlExt;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
String certFolder = certFilePath.substring(0,
certFilePath.lastIndexOf(File.separator));
String pfxFolder = pfxFilePath.substring(0,
pfxFilePath.lastIndexOf(File.separator));
File certFile = new File(certFolder);
File pfxFile = new File(pfxFolder);
if (!(certFile.exists() && pfxFile.exists())) {
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCerDlgInvldPth;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
else {
try {
PluginUtil.showBusy(true, getShell());
String alias = Messages.newCertDlgAlias;
// fix for #2663
if (jdkPath == null || jdkPath.isEmpty()) {
jdkPath = WAEclipseHelperMethods.jdkDefaultDirectory(null);
}
com.microsoft.azuretools.azurecommons.util.CerPfxUtil.createCertificate(txtCertFile.getText(),
txtPFXFile.getText(), alias , txtPwd.getText(), txtCNName.getText(), jdkPath);
//At this point certificates are created , populate the values for caller
if(newCertificateDialogHolder != null ){
newCertificateDialogHolder.setCerFilePath(txtCertFile.getText());
newCertificateDialogHolder.setPfxFilePath(txtPFXFile.getText());
newCertificateDialogHolder.setPassword(txtPFXFile.getText());
newCertificateDialogHolder.setCnName(txtCNName.getText());
}
PluginUtil.showBusy(false, getShell());
} catch (Exception e) {
PluginUtil.showBusy(false, getShell());
Activator.getDefault().log(e.getMessage(), e);
errorTitle = Messages.newCertDlgCrtErTtl;
errorMessage = Messages.newCerDlgCrtCerEr;
PluginUtil.displayErrorDialog(this.getShell(),
errorTitle, errorMessage);
return;
}
}
super.okPressed();
}