Package io.perfmark.tracewriter
Class MarkListWalker
- java.lang.Object
-
- io.perfmark.tracewriter.MarkListWalker
-
- Direct Known Subclasses:
TraceEventWriter.TraceEventWalker
class MarkListWalker extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.StringUNKNOWN_TASK_NAME
-
Constructor Summary
Constructors Constructor Description MarkListWalker()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static MarkcreateFakeEnd(Mark start, long lastNanoTime)private static voidcreateFakes(java.util.Deque<? super Mark> fakeStarts, java.util.Deque<? super Mark> fakeEnds, java.util.Set<? super Mark> unmatchedPairMarks, java.util.List<Mark> marks, long nowNanoTime)private static MarkcreateFakeStart(Mark end, long firstNanoTime)protected voidenterGeneration(long generation)protected voidenterMarkList(java.lang.String threadName, long threadId, long markRecorderId)protected voidexitGeneration()protected voidexitMarkList()private static java.util.Map<java.lang.Long,java.util.List<MarkList>>groupMarkListsByGeneration(java.util.List<? extends MarkList> markLists)protected voidonAttachTag(Mark mark)protected voidonEvent(Mark mark)protected voidonLink(Mark mark)private voidonRealMark(Mark mark, java.util.Collection<Mark> unmatchedPairMarks)protected voidonTaskEnd(Mark mark, boolean unmatchedStart, boolean unmatchedEnd)protected voidonTaskStart(Mark mark, boolean unmatchedStart, boolean unmatchedEnd)private static voidsetNanoTimeBounds(long[] nanoTimeBounds, Mark mark)(package private) voidwalk(java.util.List<? extends MarkList> markLists, long nowNanoTime)
-
-
-
Field Detail
-
UNKNOWN_TASK_NAME
static final java.lang.String UNKNOWN_TASK_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
walk
final void walk(java.util.List<? extends MarkList> markLists, long nowNanoTime)
-
enterGeneration
protected void enterGeneration(long generation)
-
exitGeneration
protected void exitGeneration()
-
enterMarkList
protected void enterMarkList(java.lang.String threadName, long threadId, long markRecorderId)
-
exitMarkList
protected void exitMarkList()
-
onTaskStart
protected void onTaskStart(Mark mark, boolean unmatchedStart, boolean unmatchedEnd)
-
onTaskEnd
protected void onTaskEnd(Mark mark, boolean unmatchedStart, boolean unmatchedEnd)
-
onLink
protected void onLink(Mark mark)
-
onEvent
protected void onEvent(Mark mark)
-
onAttachTag
protected void onAttachTag(Mark mark)
-
groupMarkListsByGeneration
private static java.util.Map<java.lang.Long,java.util.List<MarkList>> groupMarkListsByGeneration(java.util.List<? extends MarkList> markLists)
-
createFakes
private static void createFakes(java.util.Deque<? super Mark> fakeStarts, java.util.Deque<? super Mark> fakeEnds, java.util.Set<? super Mark> unmatchedPairMarks, java.util.List<Mark> marks, long nowNanoTime)
-
setNanoTimeBounds
private static void setNanoTimeBounds(long[] nanoTimeBounds, Mark mark)
-
-