public <E, X extends Exception> void useExtension(Class<E> extensionType, ExtensionConsumer<E, X> callback)
            throws X {
        withExtension(extensionType, extension -> {
            callback.useExtension(extension);
            return null;
        });
    }
A convenience method which opens an extension of the given type, and yields it to a callback. A handle is opened
if needed by the extention, and closed before returning to the caller.

@param extensionType the type of extension
@param callback      a callback which will receive the extension
@param <E>           the extension type
@param <X>           the exception type optionally thrown by the callback
@throws NoSuchExtensionException if no {@link ExtensionFactory} is registered which supports the given extension type.
@throws X                        if thrown by the callback.
core/src/main/java/org/jdbi/v3/core/Jdbi.java