@Override
    public void fireEvent(String configName, Optional<String> valueOpt) throws ConfigException
    {
        if (!subjectMap.containsKey(configName)) {
            throw new ConfigException("Unknown configName {}", configName);
        }
        emitEvent(configName, valueOpt);
    }
@ Override public void fireEvent ( String configName , Optional < String > valueOpt ) throws ConfigException { if ( ! subjectMap . containsKey ( configName ) ) { throw new ConfigException ( "Unknown configName {}" , configName ) ; } emitEvent ( configName , valueOpt ) ; }
A raw handle to cause this ConfigSource to be updated to the new value, emitting an event if it is different
than the previous value.
It is recommended to instead use {@link #set(Object)} to provide a type-safe value rather than using this method
directly in tests.

@param configName the string name of the configuration value to be fired
@param valueOpt   an Optional String value of the config value to provide to the system. Optional.empty()
implies that the value has been "unset" for the purposes of this config source.