@Override
    public Optional<ExtensionHandler> createExtensionHandler(Class<?> extensionType, Method method) {

        List<Method> candidates = Stream.of(extensionType.getMethods())
                .filter(candidate -> !candidate.isBridge())
                .filter(candidate -> Objects.equals(candidate.getName(), method.getName()))
                .filter(candidate -> candidate.getParameterCount() == method.getParameterCount())
                .filter(candidate -> {
                    Class<?>[] candidateParamTypes = candidate.getParameterTypes();
                    Class<?>[] methodParamTypes = method.getParameterTypes();
                    return IntStream.range(0, method.getParameterCount())
                            .allMatch(i -> methodParamTypes[i].isAssignableFrom(candidateParamTypes[i]));
                })
                .collect(Collectors.toList());

        for (Method candidate : candidates) {
            try {
                return Optional.of(ExtensionHandler.createForMethod(candidate));
            } catch (IllegalAccessException ignored) {}
        }
        throw new UnableToCreateExtensionException(
                "Could not create an extension handler for bridge method %s#%s.", extensionType, method);
    }
Extension handler factory for bridge methods. Forwards bridge methods to matching candidates.
core/src/main/java/org/jdbi/v3/core/extension/BridgeMethodExtensionHandlerFactory.java