Class EventChannelEncoder
- java.lang.Object
-
- org.apache.maven.surefire.api.stream.AbstractStreamEncoder<ForkedProcessEventType>
-
- org.apache.maven.surefire.booter.stream.EventEncoder
-
- org.apache.maven.surefire.booter.spi.EventChannelEncoder
-
- All Implemented Interfaces:
MasterProcessChannelEncoder
public class EventChannelEncoder extends EventEncoder implements MasterProcessChannelEncoder
magic number : opcode : run mode [: opcode specific data]*- Since:
- 3.0.0-M4
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classEventChannelEncoder.StackTrace
-
Constructor Summary
Constructors Constructor Description EventChannelEncoder(WritableBufferedByteChannel out)The encoder for events.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidacquireNextTest()The provider acquires a new test set to run.voidbye()Say BYE on exit.booleancheckError()voidconsoleDebugLog(java.lang.String message)Debug log.voidconsoleErrorLog(java.lang.String message)Error log.voidconsoleErrorLog(java.lang.String message, java.lang.Throwable t)Error log.voidconsoleErrorLog(java.lang.Throwable t)Error log.voidconsoleErrorLog(StackTraceWriter stackTraceWriter, boolean trimStackTraces)Error log.voidconsoleInfoLog(java.lang.String message)Info log.voidconsoleWarningLog(java.lang.String message)Warning log.private voidencode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, java.lang.String message, java.lang.String smartStackTrace, java.lang.String stackTrace)private voidencode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, EventChannelEncoder.StackTrace stw)(package private) java.nio.ByteBufferencode(ForkedProcessEventType operation, ReportEntry reportEntry, boolean trimStackTraces)Used operations:
ForkedProcessEventType.BOOTERCODE_TESTSET_STARTING,ForkedProcessEventType.BOOTERCODE_TESTSET_COMPLETED,ForkedProcessEventType.BOOTERCODE_TEST_STARTING,ForkedProcessEventType.BOOTERCODE_TEST_SUCCEEDED,ForkedProcessEventType.BOOTERCODE_TEST_FAILED,ForkedProcessEventType.BOOTERCODE_TEST_ERROR,ForkedProcessEventType.BOOTERCODE_TEST_SKIPPED,ForkedProcessEventType.BOOTERCODE_TEST_ASSUMPTIONFAILURE.private voidencode(ForkedProcessEventType operation, ReportEntry reportEntry, boolean trimStackTraces, boolean sync)(package private) java.nio.ByteBufferencodeMessage(ForkedProcessEventType eventType, java.lang.String message)(package private) java.nio.ByteBufferencodeMessage(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)private voidencodeOpcode(ForkedProcessEventType eventType, boolean sync)(package private) voidencodeSystemProperties(java.util.Map<java.lang.String,java.lang.String> sysProps, RunMode runMode, java.lang.Long testRunId)private voiderror(StackTraceWriter stackTraceWriter, boolean trimStackTraces, ForkedProcessEventType eventType, boolean sync)voidonJvmExit()Called on JVM exit error.voidsendExitError(StackTraceWriter stackTraceWriter, boolean trimStackTraces)ForkedBooter tear down has failed while waiting for BYE_ACK command.private voidsetOutErr(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)voidstopOnNextTest()The provider wants to stop the progress.voidtestAssumptionFailure(ReportEntry reportEntry, boolean trimStackTraces)The test assumption failure.voidtestError(ReportEntry reportEntry, boolean trimStackTraces)The test error.voidtestFailed(ReportEntry reportEntry, boolean trimStackTraces)The test has failed.voidtestOutput(TestOutputReportEntry reportEntry)Test output, a line or characters.voidtestSetCompleted(TestSetReportEntry reportEntry, boolean trimStackTraces)The test set has finished.voidtestSetStarting(TestSetReportEntry reportEntry, boolean trimStackTraces)The test set has started.voidtestSkipped(ReportEntry reportEntry, boolean trimStackTraces)The test is skipped.voidtestStarting(ReportEntry reportEntry, boolean trimStackTraces)The test has started.voidtestSucceeded(ReportEntry reportEntry, boolean trimStackTraces)The test has succeeded.private static java.lang.StringtoStackTrace(StackTraceWriter stw, boolean trimStackTraces)protected voidwrite(java.nio.ByteBuffer frame, boolean sync)-
Methods inherited from class org.apache.maven.surefire.booter.stream.EventEncoder
enumToByteArray, getCharset, getEncodedCharsetName, getEncodedMagicNumber, newCharsetEncoder
-
Methods inherited from class org.apache.maven.surefire.api.stream.AbstractStreamEncoder
encode, encode, encodeCharset, encodeHeader, encodeHeader, encodeInteger, encodeString, estimateBufferLength
-
-
-
-
Constructor Detail
-
EventChannelEncoder
public EventChannelEncoder(@Nonnull WritableBufferedByteChannel out)The encoder for events.- Parameters:
out- the channel available for writing the events
-
-
Method Detail
-
checkError
public boolean checkError()
- Specified by:
checkErrorin interfaceMasterProcessChannelEncoder- Returns:
trueif the encoder's stream has got an error
-
onJvmExit
public void onJvmExit()
Description copied from interface:MasterProcessChannelEncoderCalled on JVM exit error.- Specified by:
onJvmExitin interfaceMasterProcessChannelEncoder
-
encodeSystemProperties
void encodeSystemProperties(java.util.Map<java.lang.String,java.lang.String> sysProps, RunMode runMode, java.lang.Long testRunId)
-
testSetStarting
public void testSetStarting(TestSetReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test set has started.- Specified by:
testSetStartingin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testSetCompleted
public void testSetCompleted(TestSetReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test set has finished.- Specified by:
testSetCompletedin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testStarting
public void testStarting(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test has started.- Specified by:
testStartingin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testSucceeded
public void testSucceeded(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test has succeeded.- Specified by:
testSucceededin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testFailed
public void testFailed(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test has failed.- Specified by:
testFailedin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testSkipped
public void testSkipped(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test is skipped.- Specified by:
testSkippedin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testError
public void testError(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test error.- Specified by:
testErrorin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testAssumptionFailure
public void testAssumptionFailure(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderThe test assumption failure.- Specified by:
testAssumptionFailurein interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- test set report entrytrimStackTraces-trueif stack trace trimming
-
testOutput
public void testOutput(TestOutputReportEntry reportEntry)
Description copied from interface:MasterProcessChannelEncoderTest output, a line or characters.- Specified by:
testOutputin interfaceMasterProcessChannelEncoder- Parameters:
reportEntry- std/out or std/err context
-
setOutErr
private void setOutErr(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)
-
consoleInfoLog
public void consoleInfoLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoderInfo log.- Specified by:
consoleInfoLogin interfaceMasterProcessChannelEncoder- Parameters:
message- message of info logger
-
consoleErrorLog
public void consoleErrorLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoderError log.- Specified by:
consoleErrorLogin interfaceMasterProcessChannelEncoder- Parameters:
message- message of error logger
-
consoleErrorLog
public void consoleErrorLog(java.lang.Throwable t)
Description copied from interface:MasterProcessChannelEncoderError log.- Specified by:
consoleErrorLogin interfaceMasterProcessChannelEncoder- Parameters:
t- exception
-
consoleErrorLog
public void consoleErrorLog(java.lang.String message, java.lang.Throwable t)Description copied from interface:MasterProcessChannelEncoderError log.- Specified by:
consoleErrorLogin interfaceMasterProcessChannelEncoder- Parameters:
message- additional error messaget- exception
-
consoleErrorLog
public void consoleErrorLog(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderError log.- Specified by:
consoleErrorLogin interfaceMasterProcessChannelEncoder- Parameters:
stackTraceWriter- printable stack tracetrimStackTraces-trueif selected trimmed stack trace to print into encoder channel/stream
-
consoleDebugLog
public void consoleDebugLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoderDebug log.- Specified by:
consoleDebugLogin interfaceMasterProcessChannelEncoder- Parameters:
message- message of debug logger
-
consoleWarningLog
public void consoleWarningLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoderWarning log.- Specified by:
consoleWarningLogin interfaceMasterProcessChannelEncoder- Parameters:
message- message of warning logger
-
bye
public void bye()
Description copied from interface:MasterProcessChannelEncoderSay BYE on exit. ForkBooter will consequently wait for BYE_ACK command which finally drains the (std/in) sink channel.- Specified by:
byein interfaceMasterProcessChannelEncoder
-
stopOnNextTest
public void stopOnNextTest()
Description copied from interface:MasterProcessChannelEncoderThe provider wants to stop the progress.- Specified by:
stopOnNextTestin interfaceMasterProcessChannelEncoder
-
acquireNextTest
public void acquireNextTest()
Description copied from interface:MasterProcessChannelEncoderThe provider acquires a new test set to run.- Specified by:
acquireNextTestin interfaceMasterProcessChannelEncoder
-
sendExitError
public void sendExitError(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoderForkedBooter tear down has failed while waiting for BYE_ACK command.- Specified by:
sendExitErrorin interfaceMasterProcessChannelEncoder- Parameters:
stackTraceWriter- printable stack tracetrimStackTraces-trueif selected trimmed stack trace to print into encoder channel/stream
-
error
private void error(StackTraceWriter stackTraceWriter, boolean trimStackTraces, ForkedProcessEventType eventType, boolean sync)
-
encode
private void encode(ForkedProcessEventType operation, ReportEntry reportEntry, boolean trimStackTraces, boolean sync)
-
encodeOpcode
private void encodeOpcode(ForkedProcessEventType eventType, boolean sync)
-
write
protected void write(java.nio.ByteBuffer frame, boolean sync)- Overrides:
writein classAbstractStreamEncoder<ForkedProcessEventType>
-
encode
private void encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, EventChannelEncoder.StackTrace stw)
-
encode
private void encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, java.lang.String message, java.lang.String smartStackTrace, java.lang.String stackTrace)
-
encode
java.nio.ByteBuffer encode(ForkedProcessEventType operation, ReportEntry reportEntry, boolean trimStackTraces)
Used operations:
ForkedProcessEventType.BOOTERCODE_TESTSET_STARTING,ForkedProcessEventType.BOOTERCODE_TESTSET_COMPLETED,ForkedProcessEventType.BOOTERCODE_TEST_STARTING,ForkedProcessEventType.BOOTERCODE_TEST_SUCCEEDED,ForkedProcessEventType.BOOTERCODE_TEST_FAILED,ForkedProcessEventType.BOOTERCODE_TEST_ERROR,ForkedProcessEventType.BOOTERCODE_TEST_SKIPPED,ForkedProcessEventType.BOOTERCODE_TEST_ASSUMPTIONFAILURE.
-
encodeMessage
java.nio.ByteBuffer encodeMessage(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)
-
encodeMessage
java.nio.ByteBuffer encodeMessage(ForkedProcessEventType eventType, java.lang.String message)
-
toStackTrace
private static java.lang.String toStackTrace(StackTraceWriter stw, boolean trimStackTraces)
-
-