class ConfigLoaderConstructor extends Constructor {
    private static final Logger logger = LoggerFactory.getLogger(ConfigLoaderConstructor.class);
    public static final String CONFIG_LOADER_CLASS = "configLoaderClass";
    private final ConfigLoader configLoader;

    public static ConfigLoaderConstructor getInstance(String configLoaderClass) {
        return new ConfigLoaderConstructor(configLoaderClass);
    }

    private ConfigLoaderConstructor(String configLoaderClass) {
        super(new LoaderOptions());
        configLoader = createConfigLoader(configLoaderClass);
    }

    public ConfigLoader getConfigLoader() {
        return configLoader;
    }

    private ConfigLoader createConfigLoader(String configLoaderClass) {<FILL_FUNCTION_BODY>}
}

        if (configLoaderClass == null || configLoaderClass.equals("")) {
            return null;
        }
        logger.debug("creating config loader {}.", configLoaderClass);
        try {
            Class<?> typeClass = Class.forName(configLoaderClass);
            if (!typeClass.isInterface()) {
                return (ConfigLoader) typeClass.getConstructor().newInstance();
            } else {
                logger.error("Please specify an implementing class of com.networknt.config.ConfigLoader.");
            }
        } catch (Exception e) {
            logger.error(e.getMessage());
            throw new RuntimeException("Unable to construct the class loader.", e);
        }
        return null;
    
<no_super_class>