/** * Create empty credentials with no certificates. * * @return empty credentials. */ public static ClientCertificateCredentials empty() { return newBuilder().build(); }
/** * Build a new X.509 credentials. * * @return the credentials. */ public ClientCertificateCredentials build() { return new ClientCertificateCredentials(clientCertificate, clientKey); } }
@Override public String toString() { return getClass().getSimpleName() + " [" + "hashCode=" + hashCode() + "]"; }
@Override public SSLContext clientCertificate(final ClientCertificateCredentials credentials) { final String clientKeyPem = credentials.getClientKey().orElse(null); final String clientCertificatePem = credentials.getClientCertificate().orElse(null); final Supplier<KeyManager[]> keyManagerSupplier = newKeyManagerFactory(clientKeyPem, clientCertificatePem); final Supplier<TrustManager[]> trustManagerFactory = trust.isRight() ? newTrustManagerFactory(trust.right().get()) : () -> new TrustManager[]{trust.left().get()}; return newTLSContext(keyManagerSupplier, trustManagerFactory); }
/** * Create an SSL context with trusted certificates without client authentication. * * @return the SSL context */ public SSLContext withoutClientCertificate() { return clientCertificate(ClientCertificateCredentials.empty()); }
@Override public SSLContext clientCertificate(final ClientCertificateCredentials credentials) { final String clientKeyPem = credentials.getClientKey().orElse(null); final String clientCertificatePem = credentials.getClientCertificate().orElse(null); final Supplier<KeyManager[]> keyManagerSupplier = newKeyManagerFactory(clientKeyPem, clientCertificatePem); final Supplier<TrustManager[]> trustManagerFactory = trust.isRight() ? newTrustManagerFactory(trust.right().get()) : () -> new TrustManager[]{trust.left().get()}; return newTLSContext(keyManagerSupplier, trustManagerFactory); }
/** * Create an SSL context with trusted certificates without client authentication. * * @return the SSL context */ public SSLContext withoutClientCertificate() { return clientCertificate(ClientCertificateCredentials.empty()); }
/** * Create empty credentials with no certificates. * * @return empty credentials. */ public static ClientCertificateCredentials empty() { return newBuilder().build(); }
@Override public String toString() { return getClass().getSimpleName() + " [" + "hashCode=" + hashCode() + "]"; }
/** * Build a new X.509 credentials. * * @return the credentials. */ public ClientCertificateCredentials build() { return new ClientCertificateCredentials(clientCertificate, clientKey); } }
static ClientCertificateCredentials fromJson(final JsonObject jsonObject) { final Builder builder = newBuilder(); jsonObject.getValue(JsonFields.CLIENT_CERTIFICATE).ifPresent(builder::clientCertificate); jsonObject.getValue(JsonFields.CLIENT_KEY).ifPresent(builder::clientKey); return builder.build(); }
static ClientCertificateCredentials fromJson(final JsonObject jsonObject) { final Builder builder = newBuilder(); jsonObject.getValue(JsonFields.CLIENT_CERTIFICATE).ifPresent(builder::clientCertificate); jsonObject.getValue(JsonFields.CLIENT_KEY).ifPresent(builder::clientKey); return builder.build(); }
@Test public void getBuilderFromConnectionCoversAllFields() { final Connection connection = ImmutableConnection.getBuilder(ID, TYPE, STATUS, URI) .sources(SOURCES) .targets(TARGETS) .connectionStatus(ConnectionStatus.OPEN) .name("connection") .clientCount(5) .tag("AAA") .trustedCertificates("certs") .processorPoolSize(8) .credentials(ClientCertificateCredentials.newBuilder() .clientKey("clientkey") .clientCertificate("certificate") .build()) .validateCertificate(true) .uri("amqps://some.amqp.org:5672") .id("id") .build(); assertThat(ImmutableConnection.getBuilder(connection).build()).isEqualTo(connection); }