Skip to content

Commit 0d7e62e

Browse files
fix: Print domain mapping logs only once per session (#598)
1 parent 448f3ca commit 0d7e62e

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

android-core/src/main/java/com/mparticle/networking/NetworkOptions.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,15 @@
2020
import java.util.HashMap;
2121
import java.util.List;
2222
import java.util.Map;
23+
import java.util.HashSet;
24+
import java.util.Set;
2325

2426
public class NetworkOptions {
2527

2628
Map<Endpoint, DomainMapping> domainMappings = new HashMap<Endpoint, DomainMapping>();
2729
boolean pinningDisabledInDevelopment = false;
2830
boolean pinningDisabled = false;
31+
private static Set<Endpoint> loggedDomainTypes = new HashSet<>();
2932

3033
private NetworkOptions() {
3134
}
@@ -144,10 +147,13 @@ public Builder addDomainMapping(@Nullable DomainMapping domain) {
144147
domainMappings = new HashMap<Endpoint, DomainMapping>();
145148
}
146149
if (domainMappings.containsKey(domain.getType())) {
147-
try {
148-
Logger.warning("Duplicate DomainMapping submitted, DomainMapping:\n" + domain.toJson().toString(4) + "\n will overwrite DomainMapping:\n" + domain.toJson().toString(4));
149-
} catch (JSONException e) {
150-
e.printStackTrace();
150+
if (!loggedDomainTypes.contains(domain.getType())) {
151+
try {
152+
Logger.warning("Duplicate DomainMapping submitted, DomainMapping:\n" + domain.toJson().toString(4) + "\n will overwrite DomainMapping:\n" + domain.toJson().toString(4));
153+
loggedDomainTypes.add(domain.getType());
154+
} catch (JSONException e) {
155+
Logger.error(e);
156+
}
151157
}
152158
}
153159
if (domain.getType() == EVENTS && !domain.isEventsOnly() && !domainMappings.containsKey(ALIAS)) {

0 commit comments

Comments
 (0)