if (Configuration.DEBUG)
  private void setDName(String name) throws IOException,      UnsupportedCallbackException  {    if (name != null && name.trim().length() > 0)      name = name.trim();    else      {        // prompt user to provide one        String dnTxt = Messages.getString("GenKeyCmd.0"); //$NON-NLS-1$        String oDefault =  Messages.getString("GenKeyCmd.6"); //$NON-NLS-1$        String lDefault =  Messages.getString("GenKeyCmd.7"); //$NON-NLS-1$        String stDefault = Messages.getString("GenKeyCmd.8"); //$NON-NLS-1$        String cDefault =  Messages.getString("GenKeyCmd.9"); //$NON-NLS-1$        String cnPrompt = Messages.getString("GenKeyCmd.10"); //$NON-NLS-1$        String oPrompt =  Messages.getFormattedString("GenKeyCmd.11", oDefault); //$NON-NLS-1$        String ouPrompt = Messages.getString("GenKeyCmd.13"); //$NON-NLS-1$        String lPrompt =  Messages.getFormattedString("GenKeyCmd.14", lDefault); //$NON-NLS-1$        String stPrompt = Messages.getFormattedString("GenKeyCmd.16", stDefault); //$NON-NLS-1$        String cPrompt =  Messages.getFormattedString("GenKeyCmd.18", cDefault); //$NON-NLS-1$        TextOutputCallback dnCB = new TextOutputCallback(TextOutputCallback.INFORMATION,                                                         dnTxt);        TextInputCallback cnCB = new TextInputCallback(cnPrompt);        TextInputCallback oCB =  new TextInputCallback(oPrompt, oDefault);        TextInputCallback ouCB = new TextInputCallback(ouPrompt);        TextInputCallback lCB =  new TextInputCallback(lPrompt, lDefault);        TextInputCallback sCB =  new TextInputCallback(stPrompt, stDefault);        TextInputCallback cCB =  new TextInputCallback(cPrompt, cDefault);        getCallbackHandler().handle(new Callback[] { dnCB, cnCB, oCB, ouCB, lCB, sCB, cCB });        StringBuilder sb = new StringBuilder();        // handle CN        name = parseUserPrompt(cnCB);        if (name != null && name.length() > 0)          sb.append("CN=").append(name); //$NON-NLS-1$        // handle O        name = parseUserPrompt(oCB);        if (name != null && name.length() > 0)          sb.append(",O=").append(name); //$NON-NLS-1$        // handle OU        name = parseUserPrompt(ouCB);        if (name != null && name.length() > 0)          sb.append(",OU=").append(name.trim()); //$NON-NLS-1$        // handle L        name = parseUserPrompt(lCB);        if (name != null && name.length() > 0)          sb.append(",L=").append(name.trim()); //$NON-NLS-1$        // handle ST        name = parseUserPrompt(sCB);        if (name != null && name.length() > 0)          sb.append(",ST=").append(name.trim()); //$NON-NLS-1$        // handle C        name = parseUserPrompt(cCB);        if (name != null && name.length() > 0)          sb.append(",C=").append(name.trim()); //$NON-NLS-1$        name = sb.toString().trim();      }    log.fine("dName=[" + name + "]"); //$NON-NLS-1$ //$NON-NLS-2$    distinguishedName = new X500DistinguishedName(name);  }