/** * Sets the cause which led to the exception to be built. * * @param causeSupplier supplier of the cause to be set. * @return this builder to allow method chaining. * @throws NullPointerException if {@code messageSupplier} is {@code null}. */ public DittoRuntimeExceptionBuilder<T> cause(final Supplier<Throwable> causeSupplier) { checkSupplier(causeSupplier); return cause(causeSupplier.get()); }
/** * Sets the cause which led to the exception to be built. * * @param causeSupplier supplier of the cause to be set. * @return this builder to allow method chaining. * @throws NullPointerException if {@code messageSupplier} is {@code null}. */ public DittoRuntimeExceptionBuilder<T> cause(final Supplier<Throwable> causeSupplier) { checkSupplier(causeSupplier); return cause(causeSupplier.get()); }
@Override public Builder cause(@Nullable final Throwable cause) { if (cause == null) { message(DEFAULT_MESSAGE); } else { super.cause(cause); message(MessageFormat.format(MESSAGE_TEMPLATE, cause.getMessage())); } return this; }
private SSLContext newTLSContext(final Supplier<KeyManager[]> keyManagerSupplier, @Nullable final Supplier<TrustManager[]> trustManagerSupplier) { try { final SSLContext sslContext = SSLContext.getInstance(TLS12); final TrustManager[] trustManagers = trustManagerSupplier != null ? trustManagerSupplier.get() : null; sslContext.init(keyManagerSupplier.get(), trustManagers, null); return sslContext; } catch (final NoSuchAlgorithmException | KeyManagementException e) { throw fatalError("Cannot start TLS 1.2 engine") .cause(e) .build(); } }
private SSLContext newTLSContext(final Supplier<KeyManager[]> keyManagerSupplier, @Nullable final Supplier<TrustManager[]> trustManagerSupplier) { try { final SSLContext sslContext = SSLContext.getInstance(TLS12); final TrustManager[] trustManagers = trustManagerSupplier != null ? trustManagerSupplier.get() : null; sslContext.init(keyManagerSupplier.get(), trustManagers, null); return sslContext; } catch (final NoSuchAlgorithmException | KeyManagementException e) { throw fatalError("Cannot start TLS 1.2 engine") .cause(e) .build(); } }
@Override public Builder cause(@Nullable final Throwable cause) { if (cause == null) { message(DEFAULT_MESSAGE); } else { super.cause(cause); message(MessageFormat.format(MESSAGE_TEMPLATE, cause.getMessage())); } return this; }
private void setCertificate(final KeyStore keystore, final Certificate certificate) { try { keystore.setCertificateEntry("cert", certificate); } catch (final KeyStoreException e) { throw fatalError("Engine failed to configure client certificate") .cause(e) .build(); } }
private void setCertificate(final KeyStore keystore, final Certificate certificate) { try { keystore.setCertificateEntry("cert", certificate); } catch (final KeyStoreException e) { throw fatalError("Engine failed to configure client certificate") .cause(e) .build(); } }
private void setPrivateKey(final KeyStore keystore, final PrivateKey privateKey, final Certificate... certs) { try { keystore.setKeyEntry("key", privateKey, new char[0], certs); } catch (final KeyStoreException e) { throw fatalError("Engine failed to configure client key") .cause(e) .build(); } }
private void setPrivateKey(final KeyStore keystore, final PrivateKey privateKey, final Certificate... certs) { try { keystore.setKeyEntry("key", privateKey, new char[0], certs); } catch (final KeyStoreException e) { throw fatalError("Engine failed to configure client key") .cause(e) .build(); } }
private KeyStore newKeystore() { try { return TrustManagerFactory.emptyKeyStore(); } catch (final Exception e) { throw fatalError("Cannot initialize client-side security for connection") .cause(e) .build(); } }
private KeyStore newKeystore() { try { return TrustManagerFactory.emptyKeyStore(); } catch (final Exception e) { throw fatalError("Cannot initialize client-side security for connection") .cause(e) .build(); } }
/** * @return The JmsConnection */ private JmsConnection createJmsConnection() { try { return jmsConnectionFactory.createConnection(connection, exceptionListener); } catch (final JMSException | NamingException e) { throw ConnectionFailedException.newBuilder(connection.getId()) .message("Failed to connect JMS client:" + e.getMessage()) .cause(e) .build(); } }
/** * @return The JmsConnection */ private JmsConnection createJmsConnection() { try { return jmsConnectionFactory.createConnection(connection, exceptionListener); } catch (final JMSException | NamingException e) { throw ConnectionFailedException.newBuilder(connection.getId()) .message("Failed to connect JMS client:" + e.getMessage()) .cause(e) .build(); } }
private void setOptions(final String options, final QueryBuilder queryBuilder, final DittoHeaders dittoHeaders) { try { final ParameterOptionVisitor visitor = new ParameterOptionVisitor(fieldExpressionFactory, queryBuilder); visitor.visitAll(rqlOptionParser.parse(options)); } catch (final ParserException | IllegalArgumentException e) { throw InvalidOptionException.newBuilder() .message(e.getMessage()) .cause(e) .dittoHeaders(dittoHeaders) .build(); } }
private void setOptions(final String options, final QueryBuilder queryBuilder, final DittoHeaders dittoHeaders) { try { final ParameterOptionVisitor visitor = new ParameterOptionVisitor(fieldExpressionFactory, queryBuilder); visitor.visitAll(rqlOptionParser.parse(options)); } catch (final ParserException | IllegalArgumentException e) { throw InvalidOptionException.newBuilder() .message(e.getMessage()) .cause(e) .dittoHeaders(dittoHeaders) .build(); } }
private void setOptions(final String options, final QueryBuilder queryBuilder, final DittoHeaders dittoHeaders) { try { final ParameterOptionVisitor visitor = new ParameterOptionVisitor(fieldExpressionFactory, queryBuilder); visitor.visitAll(rqlOptionParser.parse(options)); } catch (final ParserException | IllegalArgumentException e) { throw InvalidOptionException.newBuilder() .message(e.getMessage()) .cause(e) .dittoHeaders(dittoHeaders) .build(); } }
private void setOptions(final String options, final AggregationBuilder aggregationBuilder, final DittoHeaders dittoHeaders) { try { final AggregationParameterOptionVisitor visitor = new AggregationParameterOptionVisitor(fieldExpressionFactory, aggregationBuilder); visitor.visitAll(rqlOptionParser.parse(options)); } catch (final ParserException | IllegalArgumentException e) { throw InvalidOptionException.newBuilder() .message(e.getMessage()) .cause(e) .dittoHeaders(dittoHeaders) .build(); } }
/** * Returns a mutable builder for this exception. * * @return the builder. */ public DittoRuntimeExceptionBuilder<NamespaceBlockedException> toBuilder() { return new Builder() .dittoHeaders(getDittoHeaders()) .message(getMessage()) .description(getDescription().orElse(DEFAULT_DESCRIPTION)) .cause(getCause()) .href(getHref().orElse(null)); }
private static DittoRuntimeException buildAuthenticationProviderUnavailableException(final String correlationId, final Throwable cause) { return GatewayAuthenticationProviderUnavailableException .newBuilder() .dittoHeaders(DittoHeaders.newBuilder().correlationId(correlationId).build()) .cause(cause) .build(); } }