public class SplitPositionBufProcessor extends AbstractStringAwareBufProcessor implements ByteBufProcessor
ByteBufProcessor
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 a ByteBuf
by calling ByteBuf#forEachByte(ByteBufProcessor)
methods.ByteProcessor.IndexNotOfProcessor, ByteProcessor.IndexOfProcessor
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
FIND_ASCII_SPACE, FIND_COMMA, FIND_SEMI_COLON
Constructor and Description |
---|
SplitPositionBufProcessor(char splitChar) |
SplitPositionBufProcessor(char splitChar,
boolean detectJsonString) |
Modifier and Type | Method and Description |
---|---|
boolean |
process(byte current) |
isEscaped
public SplitPositionBufProcessor(char splitChar)
splitChar
- the split character to find.public SplitPositionBufProcessor(char splitChar, boolean detectJsonString)
splitChar
- the split character to find.detectJsonString
- set to true to not inspect bytes detected as being part of a String.public boolean process(byte current) throws Exception
process
in interface ByteProcessor
Exception
Copyright © 2021 Couchbase, Inc.. All rights reserved.