private void ApplicationNameTB_TextChanged(object sender, EventArgs e)
{
try
{
if (!DomainsCK.Checked)
{
DomainsTB.Text = System.Net.Dns.GetHostName();
}
// get the domain name.
string domainName = DomainsTB.Text;
int index = domainName.IndexOfAny(new char[] { ',', ';' });
if (index > 0)
{
domainName = DomainsTB.Text.Substring(0, index);
}
// update subject name.
if (!SubjectNameCK.Checked)
{
StringBuilder buffer = new StringBuilder();
buffer.Append("CN=");
buffer.Append(ApplicationNameTB.Text);
if (!String.IsNullOrEmpty(OrganizationTB.Text))
{
buffer.Append("/O=");
buffer.Append(OrganizationTB.Text);
}
buffer.Append("/DC=");
buffer.Append(domainName);
SubjectNameTB.Text = buffer.ToString();
}
// update application uri.
if (!ApplicationUriCK.Checked)
{
StringBuilder buffer = new StringBuilder();
buffer.Append("urn:");
buffer.Append(domainName);
if (!String.IsNullOrEmpty(OrganizationTB.Text))
{
buffer.Append(":");
buffer.Append(OrganizationTB.Text);
}
buffer.Append(":");
buffer.Append(ApplicationNameTB.Text);
ApplicationUriTB.Text = buffer.ToString();
}
}
catch (Exception exception)
{
GuiUtils.HandleException(this.Text, System.Reflection.MethodBase.GetCurrentMethod(), exception);
}
}