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 class
EventChannelEncoder.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 void
acquireNextTest()
The provider acquires a new test set to run.void
bye()
Say BYE on exit.boolean
checkError()
void
consoleDebugLog(java.lang.String message)
Debug log.void
consoleErrorLog(java.lang.String message)
Error log.void
consoleErrorLog(java.lang.String message, java.lang.Throwable t)
Error log.void
consoleErrorLog(java.lang.Throwable t)
Error log.void
consoleErrorLog(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
Error log.void
consoleInfoLog(java.lang.String message)
Info log.void
consoleWarningLog(java.lang.String message)
Warning log.private void
encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, java.lang.String message, java.lang.String smartStackTrace, java.lang.String stackTrace)
private void
encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, EventChannelEncoder.StackTrace stw)
(package private) 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
.private void
encode(ForkedProcessEventType operation, ReportEntry reportEntry, boolean trimStackTraces, boolean sync)
(package private) java.nio.ByteBuffer
encodeMessage(ForkedProcessEventType eventType, java.lang.String message)
(package private) java.nio.ByteBuffer
encodeMessage(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)
private void
encodeOpcode(ForkedProcessEventType eventType, boolean sync)
(package private) void
encodeSystemProperties(java.util.Map<java.lang.String,java.lang.String> sysProps, RunMode runMode, java.lang.Long testRunId)
private void
error(StackTraceWriter stackTraceWriter, boolean trimStackTraces, ForkedProcessEventType eventType, boolean sync)
void
onJvmExit()
Called on JVM exit error.void
sendExitError(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
ForkedBooter tear down has failed while waiting for BYE_ACK command.private void
setOutErr(ForkedProcessEventType eventType, RunMode runMode, java.lang.Long testRunId, java.lang.String message)
void
stopOnNextTest()
The provider wants to stop the progress.void
testAssumptionFailure(ReportEntry reportEntry, boolean trimStackTraces)
The test assumption failure.void
testError(ReportEntry reportEntry, boolean trimStackTraces)
The test error.void
testFailed(ReportEntry reportEntry, boolean trimStackTraces)
The test has failed.void
testOutput(TestOutputReportEntry reportEntry)
Test output, a line or characters.void
testSetCompleted(TestSetReportEntry reportEntry, boolean trimStackTraces)
The test set has finished.void
testSetStarting(TestSetReportEntry reportEntry, boolean trimStackTraces)
The test set has started.void
testSkipped(ReportEntry reportEntry, boolean trimStackTraces)
The test is skipped.void
testStarting(ReportEntry reportEntry, boolean trimStackTraces)
The test has started.void
testSucceeded(ReportEntry reportEntry, boolean trimStackTraces)
The test has succeeded.private static java.lang.String
toStackTrace(StackTraceWriter stw, boolean trimStackTraces)
protected void
write(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:
checkError
in interfaceMasterProcessChannelEncoder
- Returns:
true
if the encoder's stream has got an error
-
onJvmExit
public void onJvmExit()
Description copied from interface:MasterProcessChannelEncoder
Called on JVM exit error.- Specified by:
onJvmExit
in 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:MasterProcessChannelEncoder
The test set has started.- Specified by:
testSetStarting
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testSetCompleted
public void testSetCompleted(TestSetReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test set has finished.- Specified by:
testSetCompleted
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testStarting
public void testStarting(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test has started.- Specified by:
testStarting
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testSucceeded
public void testSucceeded(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test has succeeded.- Specified by:
testSucceeded
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testFailed
public void testFailed(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test has failed.- Specified by:
testFailed
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testSkipped
public void testSkipped(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test is skipped.- Specified by:
testSkipped
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testError
public void testError(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test error.- Specified by:
testError
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testAssumptionFailure
public void testAssumptionFailure(ReportEntry reportEntry, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
The test assumption failure.- Specified by:
testAssumptionFailure
in interfaceMasterProcessChannelEncoder
- Parameters:
reportEntry
- test set report entrytrimStackTraces
-true
if stack trace trimming
-
testOutput
public void testOutput(TestOutputReportEntry reportEntry)
Description copied from interface:MasterProcessChannelEncoder
Test output, a line or characters.- Specified by:
testOutput
in 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:MasterProcessChannelEncoder
Info log.- Specified by:
consoleInfoLog
in interfaceMasterProcessChannelEncoder
- Parameters:
message
- message of info logger
-
consoleErrorLog
public void consoleErrorLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoder
Error log.- Specified by:
consoleErrorLog
in interfaceMasterProcessChannelEncoder
- Parameters:
message
- message of error logger
-
consoleErrorLog
public void consoleErrorLog(java.lang.Throwable t)
Description copied from interface:MasterProcessChannelEncoder
Error log.- Specified by:
consoleErrorLog
in interfaceMasterProcessChannelEncoder
- Parameters:
t
- exception
-
consoleErrorLog
public void consoleErrorLog(java.lang.String message, java.lang.Throwable t)
Description copied from interface:MasterProcessChannelEncoder
Error log.- Specified by:
consoleErrorLog
in interfaceMasterProcessChannelEncoder
- Parameters:
message
- additional error messaget
- exception
-
consoleErrorLog
public void consoleErrorLog(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
Error log.- Specified by:
consoleErrorLog
in interfaceMasterProcessChannelEncoder
- Parameters:
stackTraceWriter
- printable stack tracetrimStackTraces
-true
if selected trimmed stack trace to print into encoder channel/stream
-
consoleDebugLog
public void consoleDebugLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoder
Debug log.- Specified by:
consoleDebugLog
in interfaceMasterProcessChannelEncoder
- Parameters:
message
- message of debug logger
-
consoleWarningLog
public void consoleWarningLog(java.lang.String message)
Description copied from interface:MasterProcessChannelEncoder
Warning log.- Specified by:
consoleWarningLog
in interfaceMasterProcessChannelEncoder
- Parameters:
message
- message of warning logger
-
bye
public void bye()
Description copied from interface:MasterProcessChannelEncoder
Say BYE on exit. ForkBooter will consequently wait for BYE_ACK command which finally drains the (std/in) sink channel.- Specified by:
bye
in interfaceMasterProcessChannelEncoder
-
stopOnNextTest
public void stopOnNextTest()
Description copied from interface:MasterProcessChannelEncoder
The provider wants to stop the progress.- Specified by:
stopOnNextTest
in interfaceMasterProcessChannelEncoder
-
acquireNextTest
public void acquireNextTest()
Description copied from interface:MasterProcessChannelEncoder
The provider acquires a new test set to run.- Specified by:
acquireNextTest
in interfaceMasterProcessChannelEncoder
-
sendExitError
public void sendExitError(StackTraceWriter stackTraceWriter, boolean trimStackTraces)
Description copied from interface:MasterProcessChannelEncoder
ForkedBooter tear down has failed while waiting for BYE_ACK command.- Specified by:
sendExitError
in interfaceMasterProcessChannelEncoder
- Parameters:
stackTraceWriter
- printable stack tracetrimStackTraces
-true
if 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:
write
in 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)
-
-