@NonNull
    @Override
    public T configure(CNode config, ConfigurationContext context) throws ConfiguratorException {
        try {
            final T instance = target.getDeclaredConstructor().newInstance();
            instance.configure(config);
            return instance;
        } catch (InstantiationException
                | IllegalAccessException
                | NoSuchMethodException
                | InvocationTargetException e) {
            throw new ConfiguratorException(
                    "Cannot instantiate Configurable " + target + " with default constructor", e);
        }
    }
@author <a href="mailto:nicolas.deloof@gmail.com">Nicolas De Loof</a>
plugin/src/main/java/io/jenkins/plugins/casc/impl/configurators/ConfigurableConfigurator.java