33import datadog .environment .EnvironmentVariables ;
44import datadog .trace .api .telemetry .ConfigInversionMetricCollectorProvider ;
55import java .util .Collections ;
6+ import java .util .HashMap ;
67import java .util .List ;
78import java .util .Locale ;
89import java .util .Map ;
@@ -41,7 +42,7 @@ public String toString() {
4142 private static final String DD_PREFIX = "DD_" ;
4243 private static final String OTEL_PREFIX = "OTEL_" ;
4344
44- // Cache for configs, init value is null
45+ // Cache for configs, init value is EmptyMap
4546 private Map <String , String > configs = Collections .emptyMap ();
4647
4748 // Default to production source
@@ -66,21 +67,24 @@ void setConfigurationSource(SupportedConfigurationSource testSource) {
6667
6768 /** Resetting config cache. Useful for cleaning up after tests. */
6869 void resetCache () {
69- configs = null ;
70+ configs = Collections . emptyMap () ;
7071 }
7172
7273 /** Reset all configuration data to the generated defaults. Useful for cleaning up after tests. */
7374 void resetToDefaults () {
7475 configSource = new SupportedConfigurationSource ();
7576 this .configInversionStrict = StrictnessPolicy .WARNING ;
76- configs = Collections . emptyMap ();
77+ resetCache ();
7778 }
7879
7980 public Map <String , String > getEnvironmentVariables () {
8081 if (!configs .isEmpty ()) {
8182 return configs ;
8283 }
8384
85+ // Initial value is EmptyMap
86+ configs = new HashMap <>();
87+
8488 Map <String , String > env = EnvironmentVariables .getAll ();
8589 for (Map .Entry <String , String > entry : env .entrySet ()) {
8690 String key = entry .getKey ();
0 commit comments