/** * Register bean arguments and row mapping for an {@code Modifiable*} value class, expecting the default generated class and public nullary constructor. * @param spec the specification interface or abstract class * @param <S> the specification class * @return a plugin that configures type mapping for the given class */ public <S> JdbiImmutables registerModifiable(Class<S> spec) { final Class<? extends S> impl = classByPrefix("Modifiable", spec); return registerModifiable(spec, impl, nullaryMethodOf(impl, "create") .orElseGet(() -> constructorOf(impl))); }