Class ClosingPositionBufProcessor

java.lang.Object
com.couchbase.client.core.endpoint.util.AbstractStringAwareBufProcessor
com.couchbase.client.core.endpoint.util.ClosingPositionBufProcessor
All Implemented Interfaces:
ByteBufProcessor, ByteProcessor

public class ClosingPositionBufProcessor
extends AbstractStringAwareBufProcessor
implements ByteBufProcessor
A ByteBufProcessor to find a closing character position. 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 will only work correctly if the number of opening and closing characters match up. This is typically the case when searching for open and closing {} in 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.
Since:
1.1.0
Author:
Simon Baslé
  • Constructor Details

    • ClosingPositionBufProcessor

      public ClosingPositionBufProcessor​(char openingChar, char closingChar)
      Parameters:
      openingChar - the opening section character (used to detect a sub-section).
      closingChar - the closing section character to search for.
    • ClosingPositionBufProcessor

      public ClosingPositionBufProcessor​(char openingChar, char closingChar, boolean detectJsonString)
      Parameters:
      openingChar - the opening section character (used to detect a sub-section)
      closingChar - the closing section character to search for.
      detectJsonString - set to true to not inspect bytes detected as being part of a String.
  • Method Details