class ConfigReloadConfig {
    private static final Logger logger = LoggerFactory.getLogger(ConfigReloadConfig.class);
    public static final String CONFIG_NAME = "configReload";

    private static final String ENABLED = "enabled";
    private Map<String, Object> mappedConfig;
    private final Config config;

    boolean enabled;

    private ConfigReloadConfig(String configName) {
        config = Config.getInstance();
        mappedConfig = config.getJsonMapConfigNoCache(configName);
        setConfigData();
    }

    private ConfigReloadConfig() {
        this(CONFIG_NAME);
    }

    public static ConfigReloadConfig load(String configName) {
        return new ConfigReloadConfig(configName);
    }

    public static ConfigReloadConfig load() {
        return new ConfigReloadConfig();
    }

    public void reload() {
        mappedConfig = config.getJsonMapConfigNoCache(CONFIG_NAME);
        setConfigData();
    }

    public void reload(String configName) {
        mappedConfig = config.getJsonMapConfigNoCache(configName);
        setConfigData();
    }

    public boolean isEnabled() {
        return enabled;
    }

    public void setEnabled(boolean enabled) {
        this.enabled = enabled;
    }

    public Map<String, Object> getMappedConfig() {
        return mappedConfig;
    }

    Config getConfig() {
        return config;
    }

    private void setConfigData() {<FILL_FUNCTION_BODY>}

}

        if(getMappedConfig() != null) {
            Object object = getMappedConfig().get(ENABLED);
            if(object != null) enabled = Config.loadBooleanValue(ENABLED, object);
        }
    
<no_super_class>