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

com.yammer.dropwizard.config.SslConfiguration Maven / Gradle / Ivy

package com.yammer.dropwizard.config;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;
import java.io.File;
import java.net.URI;
import java.util.List;

import static com.google.common.base.Preconditions.checkNotNull;

@SuppressWarnings("UnusedDeclaration")
public class SslConfiguration {
    @NotNull
    @JsonProperty
    private Optional keyStore = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional keyStorePassword = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional keyManagerPassword = Optional.absent();

    @NotEmpty
    @JsonProperty
    private String keyStoreType = "JKS";

    @NotNull
    @JsonProperty
    private Optional trustStore = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional trustStorePassword = Optional.absent();

    @NotEmpty
    @JsonProperty
    private String trustStoreType = "JKS";

    @NotNull
    @JsonProperty
    private Optional needClientAuth = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional wantClientAuth = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional certAlias = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional allowRenegotiate = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional crlPath = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional crldpEnabled = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional ocspEnabled = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional maxCertPathLength = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional ocspResponderUrl = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional jceProvider = Optional.absent();

    @NotNull
    @JsonProperty
    private Optional validatePeers = Optional.absent();

    @NotEmpty
    @JsonProperty
    private ImmutableList supportedProtocols = ImmutableList.of("SSLv3",
                                                                        "TLSv1",
                                                                        "TLSv1.1",
                                                                        "TLSv1.2");

    public String getKeyStoreType() {
        return keyStoreType;
    }

    public void setKeyStoreType(String keyStoreType) {
        this.keyStoreType = checkNotNull(keyStoreType);
    }

    public ImmutableList getSupportedProtocols() {
        return supportedProtocols;
    }

    public void setSupportedProtocols(List protocols) {
        this.supportedProtocols = ImmutableList.copyOf(protocols);
    }

    public String getTrustStoreType() {
        return trustStoreType;
    }

    public void setTrustStoreType(String trustStoreType) {
        this.trustStoreType = checkNotNull(trustStoreType);
    }

    public Optional getKeyStore() {
        return keyStore;
    }

    public void setKeyStore(Optional keyStore) {
        this.keyStore = keyStore;
    }

    public Optional getKeyStorePassword() {
        return keyStorePassword;
    }

    public void setKeyStorePassword(Optional keyStorePassword) {
        this.keyStorePassword = keyStorePassword;
    }

    public Optional getKeyManagerPassword() {
        return keyManagerPassword;
    }

    public void setKeyManagerPassword(Optional keyManagerPassword) {
        this.keyManagerPassword = keyManagerPassword;
    }

    public Optional getTrustStore() {
        return trustStore;
    }

    public void setTrustStore(Optional trustStore) {
        this.trustStore = trustStore;
    }

    public Optional getTrustStorePassword() {
        return trustStorePassword;
    }

    public void setTrustStorePassword(Optional trustStorePassword) {
        this.trustStorePassword = trustStorePassword;
    }

    public Optional getNeedClientAuth() {
        return needClientAuth;
    }

    public void setNeedClientAuth(Optional needClientAuth) {
        this.needClientAuth = needClientAuth;
    }

    public Optional getWantClientAuth() {
        return wantClientAuth;
    }

    public void setWantClientAuth(Optional wantClientAuth) {
        this.wantClientAuth = wantClientAuth;
    }

    public Optional getCertAlias() {
        return certAlias;
    }

    public void setCertAlias(Optional certAlias) {
        this.certAlias = certAlias;
    }

    public Optional getAllowRenegotiate() {
        return allowRenegotiate;
    }

    public void setAllowRenegotiate(Optional allowRenegotiate) {
        this.allowRenegotiate = allowRenegotiate;
    }

    public Optional getCrlPath() {
        return crlPath;
    }

    public void setCrlPath(Optional crlPath) {
        this.crlPath = crlPath;
    }

    public Optional getCrldpEnabled() {
        return crldpEnabled;
    }

    public void setCrldpEnabled(Optional crldpEnabled) {
        this.crldpEnabled = crldpEnabled;
    }

    public Optional getOcspEnabled() {
        return ocspEnabled;
    }

    public void setOcspEnabled(Optional ocspEnabled) {
        this.ocspEnabled = ocspEnabled;
    }

    public Optional getMaxCertPathLength() {
        return maxCertPathLength;
    }

    public void setMaxCertPathLength(Optional maxCertPathLength) {
        this.maxCertPathLength = maxCertPathLength;
    }

    public Optional getOcspResponderUrl() {
        return ocspResponderUrl;
    }

    public void setOcspResponderUrl(Optional ocspResponderUrl) {
        this.ocspResponderUrl = ocspResponderUrl;
    }

    public Optional getJceProvider() {
        return jceProvider;
    }

    public void setJceProvider(Optional jceProvider) {
        this.jceProvider = jceProvider;
    }

    public Optional getValidatePeers() {
        return validatePeers;
    }

    public void setValidatePeers(Optional validatePeers) {
        this.validatePeers = validatePeers;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy