package at.gv.egovernment.moa.spss.server.iaik.config;
import iaik.pki.PKIConfiguration;
import iaik.pki.pathvalidation.ValidationConfiguration;
import iaik.pki.revocation.RevocationConfiguration;
import iaik.pki.store.certstore.CertStoreConfiguration;
import iaik.pki.store.revocation.archive.ArchiveConfiguration;
import at.gv.egovernment.moa.util.BoolUtils;
import at.gv.egovernment.moa.spss.server.config.ConfigurationProvider;
/**
* An implementation of the PKIConfiguration
interface using data
* from the MOA configuration.
*
* @see iaik.pki.PKIConfiguration
* @author Patrick Peck
* @version $Id$
*/
public class PKIConfigurationImpl implements PKIConfiguration {
/** The CertStore
configuration. */
private CertStoreConfiguration certStoreConfiguration;
/** The revocation checking configuration. */
private RevocationConfiguration revocationConfiguration;
/** The revocation archive configuration. */
private ArchiveConfiguration archiveConfiguration;
/** The certificate validation configuration. */
private ValidationConfiguration validationConfiguration;
/**
* Create a new PKIConfigurationImpl
.
*
* @param config The underlying MOA configuration which will be used to build
* the configuration data contained in this object.
*/
public PKIConfigurationImpl(ConfigurationProvider config) {
String archiveInfo;
this.certStoreConfiguration = new CertStoreConfigurationImpl(config);
this.revocationConfiguration = new RevocationConfigurationImpl(config);
archiveInfo =
config.getGenericConfiguration(
ConfigurationProvider.ARCHIVE_REVOCATION_INFO_PROPERTY,
"false");
if (archiveInfo != null && BoolUtils.valueOf(archiveInfo)) {
this.archiveConfiguration = new ArchiveConfigurationImpl(config);
} else {
this.archiveConfiguration = null;
}
this.validationConfiguration = new ValidationConfigurationImpl(config);
}
/**
* @see iaik.pki.PKIConfiguration#getCertStoreConfiguration()
*/
public CertStoreConfiguration getCertStoreConfiguration() {
return certStoreConfiguration;
}
/**
* @see iaik.pki.PKIConfiguration#getRevocationConfiguration()
*/
public RevocationConfiguration getRevocationConfiguration() {
return revocationConfiguration;
}
/**
* @see iaik.pki.PKIConfiguration#getArchiveConfiguration()
*/
public ArchiveConfiguration getArchiveConfiguration() {
return archiveConfiguration;
}
/**
* @see iaik.pki.PKIConfiguration#getValidationConfiguration()
*/
public ValidationConfiguration getValidationConfiguration() {
return validationConfiguration;
}
}