Skip to content

Commit d765847

Browse files
Make lists threadsafe #1043
1 parent 9de771b commit d765847

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

core/src/main/java/com/microsoft/applicationinsights/TelemetryConfiguration.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@
3030
import com.microsoft.applicationinsights.extensibility.TelemetryProcessor;
3131
import com.microsoft.applicationinsights.internal.config.TelemetryConfigurationFactory;
3232

33-
import java.util.ArrayList;
3433
import java.util.List;
34+
import java.util.concurrent.CopyOnWriteArrayList;
3535

3636
/**
3737
* Encapsulates the global telemetry configuration typically loaded from the ApplicationInsights.xml file.
@@ -48,10 +48,10 @@ public final class TelemetryConfiguration {
4848
private String instrumentationKey;
4949
private String roleName;
5050

51-
private final ArrayList<ContextInitializer> contextInitializers = new ArrayList<ContextInitializer>();
52-
private final ArrayList<TelemetryInitializer> telemetryInitializers = new ArrayList<TelemetryInitializer>();
53-
private final ArrayList<TelemetryModule> telemetryModules = new ArrayList<TelemetryModule>();
54-
private final ArrayList<TelemetryProcessor> telemetryProcessors = new ArrayList<TelemetryProcessor>();
51+
private final List<ContextInitializer> contextInitializers = new CopyOnWriteArrayList<ContextInitializer>();
52+
private final List<TelemetryInitializer> telemetryInitializers = new CopyOnWriteArrayList<TelemetryInitializer>();
53+
private final List<TelemetryModule> telemetryModules = new CopyOnWriteArrayList<TelemetryModule>();
54+
private final List<TelemetryProcessor> telemetryProcessors = new CopyOnWriteArrayList<TelemetryProcessor>();
5555

5656
private TelemetryChannel channel;
5757

0 commit comments

Comments
 (0)