Package org.apache.maven.surefire.stream
Class EventDecoder
- java.lang.Object
-
- org.apache.maven.surefire.api.stream.AbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
-
- org.apache.maven.surefire.stream.EventDecoder
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public class EventDecoder extends AbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.maven.surefire.api.stream.AbstractStreamDecoder
AbstractStreamDecoder.BufferedStream, AbstractStreamDecoder.MalformedFrameException, AbstractStreamDecoder.Memento, AbstractStreamDecoder.Segment, AbstractStreamDecoder.StreamReadStatus
-
-
Field Summary
Fields Modifier and Type Field Description private static int
DEBUG_SINK_BUFFER_SIZE
private java.io.OutputStream
debugSink
private static SegmentType[]
EVENT_TEST_CONTROL
private static java.util.Map<AbstractStreamDecoder.Segment,ForkedProcessEventType>
EVENT_TYPES
private static SegmentType[]
EVENT_WITH_ERROR_TRACE
private static SegmentType[]
EVENT_WITH_ONE_STRING
private static SegmentType[]
EVENT_WITH_RUNMODE_TID_AND_ONE_STRING
private static SegmentType[]
EVENT_WITH_RUNMODE_TID_AND_TWO_STRINGS
private static SegmentType[]
EVENT_WITHOUT_DATA
private static int
NO_POSITION
private static java.util.Map<AbstractStreamDecoder.Segment,RunMode>
RUN_MODES
-
Fields inherited from class org.apache.maven.surefire.api.stream.AbstractStreamDecoder
BUFFER_SIZE
-
-
Constructor Summary
Constructors Constructor Description EventDecoder(java.nio.channels.ReadableByteChannel channel, ForkNodeArguments arguments)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
protected void
debugStream(byte[] array, int position, int remaining)
Event
decode(AbstractStreamDecoder.Memento memento)
protected byte[]
getEncodedMagicNumber()
private java.io.OutputStream
newDebugSink(ForkNodeArguments arguments)
(package private) static TestSetReportEntry
newReportEntry(RunMode runMode, long testRunId, java.lang.String source, java.lang.String sourceText, java.lang.String name, java.lang.String nameText, java.lang.String group, java.lang.String message, java.lang.Integer timeElapsed, java.lang.String traceMessage, java.lang.String smartTrimmedStackTrace, java.lang.String stackTrace)
protected SegmentType[]
nextSegmentType(ForkedProcessEventType eventType)
private static java.util.Map<AbstractStreamDecoder.Segment,ForkedProcessEventType>
segmentsToEvents()
private static java.util.Map<AbstractStreamDecoder.Segment,RunMode>
segmentsToRunModes()
protected Event
toMessage(ForkedProcessEventType eventType, AbstractStreamDecoder.Memento memento)
private static TestSetReportEntry
toReportEntry(java.util.List<java.lang.Object> args)
private static StackTraceWriter
toStackTraceWriter(java.util.List<java.lang.Object> args)
private static StackTraceWriter
toTrace(java.lang.String traceMessage, java.lang.String smartTrimmedStackTrace, java.lang.String stackTrace)
-
Methods inherited from class org.apache.maven.surefire.api.stream.AbstractStreamDecoder
checkArguments, checkDelimiter, checkHeader, getArguments, printRemainingStream, read, readByte, readCharset, readInt, readInteger, readLong, readLongPrivate, readMessageType, readSegment, readString
-
-
-
-
Field Detail
-
DEBUG_SINK_BUFFER_SIZE
private static final int DEBUG_SINK_BUFFER_SIZE
- See Also:
- Constant Field Values
-
EVENT_TYPES
private static final java.util.Map<AbstractStreamDecoder.Segment,ForkedProcessEventType> EVENT_TYPES
-
RUN_MODES
private static final java.util.Map<AbstractStreamDecoder.Segment,RunMode> RUN_MODES
-
EVENT_WITHOUT_DATA
private static final SegmentType[] EVENT_WITHOUT_DATA
-
EVENT_WITH_ERROR_TRACE
private static final SegmentType[] EVENT_WITH_ERROR_TRACE
-
EVENT_WITH_ONE_STRING
private static final SegmentType[] EVENT_WITH_ONE_STRING
-
EVENT_WITH_RUNMODE_TID_AND_ONE_STRING
private static final SegmentType[] EVENT_WITH_RUNMODE_TID_AND_ONE_STRING
-
EVENT_WITH_RUNMODE_TID_AND_TWO_STRINGS
private static final SegmentType[] EVENT_WITH_RUNMODE_TID_AND_TWO_STRINGS
-
EVENT_TEST_CONTROL
private static final SegmentType[] EVENT_TEST_CONTROL
-
NO_POSITION
private static final int NO_POSITION
- See Also:
- Constant Field Values
-
debugSink
private final java.io.OutputStream debugSink
-
-
Constructor Detail
-
EventDecoder
public EventDecoder(@Nonnull java.nio.channels.ReadableByteChannel channel, @Nonnull ForkNodeArguments arguments)
-
-
Method Detail
-
decode
public Event decode(@Nonnull AbstractStreamDecoder.Memento memento) throws java.io.IOException
- Specified by:
decode
in classAbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
- Throws:
java.io.IOException
-
getEncodedMagicNumber
@Nonnull protected final byte[] getEncodedMagicNumber()
- Specified by:
getEncodedMagicNumber
in classAbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
-
nextSegmentType
@Nonnull protected final SegmentType[] nextSegmentType(@Nonnull ForkedProcessEventType eventType)
- Specified by:
nextSegmentType
in classAbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
-
toMessage
@Nonnull protected final Event toMessage(@Nonnull ForkedProcessEventType eventType, @Nonnull AbstractStreamDecoder.Memento memento) throws AbstractStreamDecoder.MalformedFrameException
- Specified by:
toMessage
in classAbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
- Throws:
AbstractStreamDecoder.MalformedFrameException
-
toReportEntry
@Nonnull private static TestSetReportEntry toReportEntry(java.util.List<java.lang.Object> args)
-
toStackTraceWriter
private static StackTraceWriter toStackTraceWriter(java.util.List<java.lang.Object> args)
-
toTrace
private static StackTraceWriter toTrace(java.lang.String traceMessage, java.lang.String smartTrimmedStackTrace, java.lang.String stackTrace)
-
newReportEntry
static TestSetReportEntry newReportEntry(RunMode runMode, long testRunId, java.lang.String source, java.lang.String sourceText, java.lang.String name, java.lang.String nameText, java.lang.String group, java.lang.String message, java.lang.Integer timeElapsed, java.lang.String traceMessage, java.lang.String smartTrimmedStackTrace, java.lang.String stackTrace) throws java.lang.NumberFormatException
- Throws:
java.lang.NumberFormatException
-
segmentsToEvents
private static java.util.Map<AbstractStreamDecoder.Segment,ForkedProcessEventType> segmentsToEvents()
-
segmentsToRunModes
private static java.util.Map<AbstractStreamDecoder.Segment,RunMode> segmentsToRunModes()
-
debugStream
protected void debugStream(byte[] array, int position, int remaining)
- Overrides:
debugStream
in classAbstractStreamDecoder<Event,ForkedProcessEventType,SegmentType>
-
newDebugSink
private java.io.OutputStream newDebugSink(ForkNodeArguments arguments)
-
close
public void close() throws java.io.IOException
- Throws:
java.io.IOException
-
-