class UnknownTopicPathException extends DittoRuntimeException {

    static UnknownTopicPathException fromTopicAndPath(
            @Nullable final TopicPath topicPath,
            @Nullable final MessagePath path,
            @Nonnull final DittoHeaders dittoHeaders) {
        final String theTopicPath = null != topicPath ? topicPath.getPath() : "";
        final String message = MessageFormat.format(MESSAGE_TEMPLATE_WITH_PATH, theTopicPath, path);
        return new Builder()
                .dittoHeaders(dittoHeaders)
                .message(message)
                .build();
    }

    private  UnknownTopicPathException(final DittoHeaders dittoHeaders,
            @Nullable final String message,
            @Nullable final String description,
            @Nullable final Throwable cause,
            @Nullable final URI href);

}