Loading telecomm/java/android/telecom/Logging/EventManager.java +20 −16 Original line number Original line Diff line number Diff line Loading @@ -180,7 +180,7 @@ public class EventManager { } } } } private final List<Event> mEvents = new LinkedList<>(); private final List<Event> mEvents = Collections.synchronizedList(new LinkedList<>()); private final Loggable mRecordEntry; private final Loggable mRecordEntry; public EventRecord(Loggable recordEntry) { public EventRecord(Loggable recordEntry) { Loading @@ -197,7 +197,7 @@ public class EventManager { } } public List<Event> getEvents() { public List<Event> getEvents() { return mEvents; return new LinkedList<>(mEvents); } } public List<EventTiming> extractEventTimings() { public List<EventTiming> extractEventTimings() { Loading @@ -207,11 +207,13 @@ public class EventManager { LinkedList<EventTiming> result = new LinkedList<>(); LinkedList<EventTiming> result = new LinkedList<>(); Map<String, PendingResponse> pendingResponses = new HashMap<>(); Map<String, PendingResponse> pendingResponses = new HashMap<>(); synchronized (mEvents) { for (Event event : mEvents) { for (Event event : mEvents) { if (requestResponsePairs.containsKey(event.eventId)) { if (requestResponsePairs.containsKey(event.eventId)) { // This event expects a response, so add that expected response to the maps // This event expects a response, so add that expected response to the maps // of pending events. // of pending events. for (EventManager.TimedEventPair p : requestResponsePairs.get(event.eventId)) { for (EventManager.TimedEventPair p : requestResponsePairs.get( event.eventId)) { pendingResponses.put(p.mResponse, new PendingResponse(event.eventId, pendingResponses.put(p.mResponse, new PendingResponse(event.eventId, event.time, p.mTimeoutMillis, p.mName)); event.time, p.mTimeoutMillis, p.mName)); } } Loading @@ -225,6 +227,7 @@ public class EventManager { } } } } } } } return result; return result; } } Loading @@ -233,7 +236,8 @@ public class EventManager { pw.print(mRecordEntry.getDescription()); pw.print(mRecordEntry.getDescription()); pw.increaseIndent(); pw.increaseIndent(); for (Event event : mEvents) { // Iterate over copy of events so that this doesn't hold the lock for too long. for (Event event : getEvents()) { pw.print(event.timestampString); pw.print(event.timestampString); pw.print(" - "); pw.print(" - "); pw.print(event.eventId); pw.print(event.eventId); Loading Loading
telecomm/java/android/telecom/Logging/EventManager.java +20 −16 Original line number Original line Diff line number Diff line Loading @@ -180,7 +180,7 @@ public class EventManager { } } } } private final List<Event> mEvents = new LinkedList<>(); private final List<Event> mEvents = Collections.synchronizedList(new LinkedList<>()); private final Loggable mRecordEntry; private final Loggable mRecordEntry; public EventRecord(Loggable recordEntry) { public EventRecord(Loggable recordEntry) { Loading @@ -197,7 +197,7 @@ public class EventManager { } } public List<Event> getEvents() { public List<Event> getEvents() { return mEvents; return new LinkedList<>(mEvents); } } public List<EventTiming> extractEventTimings() { public List<EventTiming> extractEventTimings() { Loading @@ -207,11 +207,13 @@ public class EventManager { LinkedList<EventTiming> result = new LinkedList<>(); LinkedList<EventTiming> result = new LinkedList<>(); Map<String, PendingResponse> pendingResponses = new HashMap<>(); Map<String, PendingResponse> pendingResponses = new HashMap<>(); synchronized (mEvents) { for (Event event : mEvents) { for (Event event : mEvents) { if (requestResponsePairs.containsKey(event.eventId)) { if (requestResponsePairs.containsKey(event.eventId)) { // This event expects a response, so add that expected response to the maps // This event expects a response, so add that expected response to the maps // of pending events. // of pending events. for (EventManager.TimedEventPair p : requestResponsePairs.get(event.eventId)) { for (EventManager.TimedEventPair p : requestResponsePairs.get( event.eventId)) { pendingResponses.put(p.mResponse, new PendingResponse(event.eventId, pendingResponses.put(p.mResponse, new PendingResponse(event.eventId, event.time, p.mTimeoutMillis, p.mName)); event.time, p.mTimeoutMillis, p.mName)); } } Loading @@ -225,6 +227,7 @@ public class EventManager { } } } } } } } return result; return result; } } Loading @@ -233,7 +236,8 @@ public class EventManager { pw.print(mRecordEntry.getDescription()); pw.print(mRecordEntry.getDescription()); pw.increaseIndent(); pw.increaseIndent(); for (Event event : mEvents) { // Iterate over copy of events so that this doesn't hold the lock for too long. for (Event event : getEvents()) { pw.print(event.timestampString); pw.print(event.timestampString); pw.print(" - "); pw.print(" - "); pw.print(event.eventId); pw.print(event.eventId); Loading