Class SplitPositionBufProcessor
- java.lang.Object
-
- com.couchbase.client.core.endpoint.util.AbstractStringAwareBufProcessor
-
- com.couchbase.client.core.endpoint.util.SplitPositionBufProcessor
-
- All Implemented Interfaces:
ByteBufProcessor
,ByteProcessor
public class SplitPositionBufProcessor extends AbstractStringAwareBufProcessor implements ByteBufProcessor
AByteBufProcessor
to find the position of a single character usable as a split pivot. Applying this to a buffer will output the position of the closing of the section, relative to that buffer's readerIndex, or -1 if the end of the section couldn't be found. Note that this processor is typically used to find split positions in a JSON array inside a streaming JSON response (in which case the constructor variant that detects JSON strings should be used). It is invoked on aByteBuf
by callingByteBuf#forEachByte(ByteBufProcessor)
methods.- Since:
- 1.3
- Author:
- Simon Baslé
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.netty.util.ByteProcessor
ByteProcessor.IndexNotOfProcessor, ByteProcessor.IndexOfProcessor
-
-
Field Summary
-
Fields inherited from interface io.netty.buffer.ByteBufProcessor
FIND_CR, FIND_CRLF, FIND_LF, FIND_LINEAR_WHITESPACE, FIND_NON_CR, FIND_NON_CRLF, FIND_NON_LF, FIND_NON_LINEAR_WHITESPACE, FIND_NON_NUL, FIND_NUL
-
Fields inherited from interface io.netty.util.ByteProcessor
FIND_ASCII_SPACE, FIND_COMMA, FIND_SEMI_COLON
-
-
Constructor Summary
Constructors Constructor Description SplitPositionBufProcessor(char splitChar)
SplitPositionBufProcessor(char splitChar, boolean detectJsonString)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
process(byte current)
-
Methods inherited from class com.couchbase.client.core.endpoint.util.AbstractStringAwareBufProcessor
isEscaped
-
-
-
-
Constructor Detail
-
SplitPositionBufProcessor
public SplitPositionBufProcessor(char splitChar)
- Parameters:
splitChar
- the split character to find.
-
SplitPositionBufProcessor
public SplitPositionBufProcessor(char splitChar, boolean detectJsonString)
- Parameters:
splitChar
- the split character to find.detectJsonString
- set to true to not inspect bytes detected as being part of a String.
-
-
Method Detail
-
process
public boolean process(byte current) throws Exception
- Specified by:
process
in interfaceByteProcessor
- Throws:
Exception
-
-