@Override
    public Optional<Object> onDemand(Jdbi jdbi, Class<?> extensionType, Class<?>... extraTypes) {
        if (!isConcrete(extensionType)) {
            return Optional.empty();
        }

        return Optional.of(onDemandTypeCache.computeIfAbsent(extensionType, GeneratorSqlObjectFactory::getOnDemandClass)
                .invoke(handle -> handle.invokeExact(jdbi)));
    }
Attach a sql object from a jdbi generator created class.

@param extensionType  the type of sql object to create.
@param handleSupplier the Handle instance to attach this sql object to.
@return the new sql object bound to this handle.
sqlobject/src/main/java/org/jdbi/v3/sqlobject/GeneratorSqlObjectFactory.java