public synchronized static void refresh( MultiPropertiesConfig[] overrides, String overridesDescription ) { String[] defaults = new String[] { "/com/mchange/v2/log/default-mchange-log.properties" }; String[] preempts = new String[] { "/mchange-log.properties", "/" }; List bli = new ArrayList(); MultiPropertiesConfig tmpCONFIG = MLogConfigSource.readVmConfig( defaults, preempts, bli ); boolean firstLoad = (CONFIG == null); if ( overrides != null ) { int olen = overrides.length; MultiPropertiesConfig[] combineMe = new MultiPropertiesConfig[ olen + 1 ]; combineMe[0] = tmpCONFIG; for ( int i = 0; i < olen; ++i ) combineMe[ i + 1 ] = overrides[i]; bli.add( new DelayedLogItem( DelayedLogItem.Level.INFO, (firstLoad ? "Loaded" : "Refreshed") + " MLog library log configuration, with overrides" + (overridesDescription == null ? "." : ": " + overridesDescription) ) ); CONFIG = MConfig.combine( combineMe ); } else { if ( !firstLoad ) bli.add( new DelayedLogItem( DelayedLogItem.Level.INFO, "Refreshed MLog library log configuration, without overrides.") ); CONFIG = tmpCONFIG; } BOOTSTRAP_LOG_ITEMS = bli; }