Class AbstractStreamEncoder<E extends java.lang.Enum<E>>
- java.lang.Object
-
- org.apache.maven.surefire.api.stream.AbstractStreamEncoder<E>
-
- Type Parameters:
E
- type of the message
- Direct Known Subclasses:
CommandEncoder
,EventEncoder
public abstract class AbstractStreamEncoder<E extends java.lang.Enum<E>> extends java.lang.Object
The base class of stream encoder. The type of message is expressed by opcode where the opcode object is described by the generic typeAbstractStreamEncoder
.
-
-
Field Summary
Fields Modifier and Type Field Description private static byte
BOOLEAN_NON_NULL_OBJECT
private static byte
BOOLEAN_NULL_OBJECT
private static byte[]
INT_BINARY
private java.nio.channels.WritableByteChannel
out
-
Constructor Summary
Constructors Constructor Description AbstractStreamEncoder(java.nio.channels.WritableByteChannel out)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, E operation, java.lang.String... messages)
void
encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, E operation, RunMode runMode, java.lang.Long testRunId, java.lang.String... messages)
void
encodeCharset(java.nio.ByteBuffer result)
void
encodeHeader(java.nio.ByteBuffer result, E operation)
void
encodeHeader(java.nio.ByteBuffer result, E operation, RunMode runMode, java.lang.Long testRunId)
void
encodeInteger(java.nio.ByteBuffer result, java.lang.Integer i)
void
encodeString(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, java.lang.String string)
private void
encodeStringData(java.nio.ByteBuffer result, java.nio.charset.CharsetEncoder encoder, java.lang.String... messages)
protected abstract byte[]
enumToByteArray(E e)
int
estimateBufferLength(int opcodeLength, RunMode runMode, java.nio.charset.CharsetEncoder encoder, int integersCounter, int longsCounter, java.lang.String... strings)
protected abstract java.nio.charset.Charset
getCharset()
protected abstract byte[]
getEncodedCharsetName()
protected abstract byte[]
getEncodedMagicNumber()
protected abstract java.nio.charset.CharsetEncoder
newCharsetEncoder()
private static java.lang.String
nonNull(java.lang.String msg)
protected void
write(java.nio.ByteBuffer frame, boolean sendImmediately)
-
-
-
Field Detail
-
BOOLEAN_NON_NULL_OBJECT
private static final byte BOOLEAN_NON_NULL_OBJECT
- See Also:
- Constant Field Values
-
BOOLEAN_NULL_OBJECT
private static final byte BOOLEAN_NULL_OBJECT
- See Also:
- Constant Field Values
-
INT_BINARY
private static final byte[] INT_BINARY
-
out
private final java.nio.channels.WritableByteChannel out
-
-
Method Detail
-
getEncodedMagicNumber
@Nonnull protected abstract byte[] getEncodedMagicNumber()
-
enumToByteArray
@Nonnull protected abstract byte[] enumToByteArray(E e)
-
getEncodedCharsetName
@Nonnull protected abstract byte[] getEncodedCharsetName()
-
getCharset
@Nonnull protected abstract java.nio.charset.Charset getCharset()
-
newCharsetEncoder
@Nonnull protected abstract java.nio.charset.CharsetEncoder newCharsetEncoder()
-
write
protected void write(java.nio.ByteBuffer frame, boolean sendImmediately) throws java.io.IOException
- Throws:
java.io.IOException
-
encodeHeader
public void encodeHeader(java.nio.ByteBuffer result, E operation, RunMode runMode, java.lang.Long testRunId)
-
encodeHeader
public void encodeHeader(java.nio.ByteBuffer result, E operation)
-
encodeCharset
public void encodeCharset(java.nio.ByteBuffer result)
-
encodeString
public void encodeString(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, java.lang.String string)
-
encodeInteger
public void encodeInteger(java.nio.ByteBuffer result, java.lang.Integer i)
-
encode
public void encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, E operation, RunMode runMode, java.lang.Long testRunId, java.lang.String... messages)
-
encode
public void encode(java.nio.charset.CharsetEncoder encoder, java.nio.ByteBuffer result, E operation, java.lang.String... messages)
-
encodeStringData
private void encodeStringData(java.nio.ByteBuffer result, java.nio.charset.CharsetEncoder encoder, java.lang.String... messages)
-
estimateBufferLength
public int estimateBufferLength(int opcodeLength, RunMode runMode, java.nio.charset.CharsetEncoder encoder, int integersCounter, int longsCounter, java.lang.String... strings)
-
nonNull
private static java.lang.String nonNull(java.lang.String msg)
-
-