private List<LdapName> parseAllowedPrincipals(JolokiaServerConfig pConfig) {
   List<String> principals = pConfig.getClientPrincipals();
   if (principals != null) {
     List<LdapName> ret = new ArrayList<LdapName>();
     for (String principal : principals) {
       try {
         ret.add(new LdapName(principal));
       } catch (InvalidNameException e) {
         throw new IllegalArgumentException(
             "Principal '" + principal + "' cannot be parsed as X500 RDNs");
       }
     }
     return ret;
   } else {
     return null;
   }
 }
 /**
  * Constructor
  *
  * @param pConfig full server config (in contrast to the jolokia config use by the http-handler)
  */
 public ClientCertAuthenticator(JolokiaServerConfig pConfig) {
   useSslClientAuthentication = pConfig.useSslClientAuthentication();
   allowedPrincipals = parseAllowedPrincipals(pConfig);
   extendedClientCheck = pConfig.getExtendedClientCheck();
 }