All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ldaptive.props.CredentialConfigParser Maven / Gradle / Ivy

There is a newer version: 2.4.1
Show newest version
/* See LICENSE for licensing and NOTICE for copyright. */
package org.ldaptive.props;

import java.util.regex.Matcher;

/**
 * Parses the configuration data associated with credential configs. The format of the property string should be like:
 *
 * 
   KeyStoreCredentialConfig
     {{trustStore=file:/tmp/my.truststore}{trustStoreType=JKS}}
 * 
* *

or

* *
   {{trustCertificates=file:/tmp/my.crt}}
 * 
* * @author Middleware Services */ public class CredentialConfigParser extends PropertyValueParser { /** Credential config class found in the config. */ protected static final String DEFAULT_CREDENTIAL_CONFIG_CLASS = "org.ldaptive.ssl.X509CredentialConfig"; /** * Creates a new credential config parser. * * @param config containing configuration data */ public CredentialConfigParser(final String config) { final Matcher credentialOnlyMatcher = CONFIG_PATTERN.matcher(config); final Matcher paramsOnlyMatcher = PARAMS_ONLY_CONFIG_PATTERN.matcher(config); if (credentialOnlyMatcher.matches()) { initialize(credentialOnlyMatcher.group(1).trim(), credentialOnlyMatcher.group(2).trim()); } else if (paramsOnlyMatcher.matches()) { initialize(DEFAULT_CREDENTIAL_CONFIG_CLASS, paramsOnlyMatcher.group(1).trim()); } } /** * Returns whether the supplied configuration data contains a credential config. * * @param config containing configuration data * * @return whether the supplied configuration data contains a credential config */ public static boolean isCredentialConfig(final String config) { return isConfig(config) || isParamsOnlyConfig(config); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy