public class IOContext extends Object
NOTE: non-final since 2.4, to allow sub-classing.
| Modifier and Type | Field and Description | 
|---|---|
| protected byte[] | _base64BufferReference to the buffer allocated for temporary use with
 base64 encoding or decoding. | 
| protected BufferRecycler | _bufferRecyclerRecycler used for actual allocation/deallocation/reuse | 
| protected char[] | _concatCBufferReference to the buffer allocated for buffering it for
 output, before being encoded: generally this means concatenating
 output, then encoding when buffer fills up. | 
| protected JsonEncoding | _encodingEncoding used by the underlying stream, if known. | 
| protected boolean | _managedResourceFlag that indicates whether underlying input/output source/target
 object is fully managed by the owner of this context (parser or
 generator). | 
| protected char[] | _nameCopyBufferReference temporary buffer Parser instances need if calling
 app decides it wants to access name via 'getTextCharacters' method. | 
| protected byte[] | _readIOBufferReference to the allocated I/O buffer for low-level input reading,
 if any allocated. | 
| protected Object | _sourceRefReference to the source object, which can be used for displaying
 location information | 
| protected char[] | _tokenCBufferReference to the buffer allocated for tokenization purposes,
 in which character input is read, and from which it can be
 further returned. | 
| protected byte[] | _writeEncodingBufferReference to the allocated I/O buffer used for low-level
 encoding-related buffering. | 
| Constructor and Description | 
|---|
| IOContext(BufferRecycler br,
         Object sourceRef,
         boolean managedResource) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | _verifyAlloc(Object buffer) | 
| protected void | _verifyRelease(byte[] toRelease,
              byte[] src) | 
| protected void | _verifyRelease(char[] toRelease,
              char[] src) | 
| byte[] | allocBase64Buffer() | 
| byte[] | allocBase64Buffer(int minSize) | 
| char[] | allocConcatBuffer() | 
| char[] | allocNameCopyBuffer(int minSize) | 
| byte[] | allocReadIOBuffer()
 Note: the method can only be called once during its life cycle. | 
| byte[] | allocReadIOBuffer(int minSize) | 
| char[] | allocTokenBuffer() | 
| char[] | allocTokenBuffer(int minSize) | 
| byte[] | allocWriteEncodingBuffer() | 
| byte[] | allocWriteEncodingBuffer(int minSize) | 
| TextBuffer | constructTextBuffer() | 
| JsonEncoding | getEncoding() | 
| Object | getSourceReference() | 
| boolean | isResourceManaged() | 
| void | releaseBase64Buffer(byte[] buf) | 
| void | releaseConcatBuffer(char[] buf) | 
| void | releaseNameCopyBuffer(char[] buf) | 
| void | releaseReadIOBuffer(byte[] buf)Method to call when all the processing buffers can be safely
 recycled. | 
| void | releaseTokenBuffer(char[] buf) | 
| void | releaseWriteEncodingBuffer(byte[] buf) | 
| void | setEncoding(JsonEncoding enc) | 
| IOContext | withEncoding(JsonEncoding enc) | 
protected final Object _sourceRef
protected JsonEncoding _encoding
protected final boolean _managedResource
protected final BufferRecycler _bufferRecycler
protected byte[] _readIOBuffer
protected byte[] _writeEncodingBuffer
protected byte[] _base64Buffer
protected char[] _tokenCBuffer
protected char[] _concatCBuffer
protected char[] _nameCopyBuffer
public IOContext(BufferRecycler br, Object sourceRef, boolean managedResource)
public void setEncoding(JsonEncoding enc)
public IOContext withEncoding(JsonEncoding enc)
public Object getSourceReference()
public JsonEncoding getEncoding()
public boolean isResourceManaged()
public TextBuffer constructTextBuffer()
public byte[] allocReadIOBuffer()
Note: the method can only be called once during its life cycle. This is to protect against accidental sharing.
public byte[] allocReadIOBuffer(int minSize)
public byte[] allocWriteEncodingBuffer()
public byte[] allocWriteEncodingBuffer(int minSize)
public byte[] allocBase64Buffer()
public byte[] allocBase64Buffer(int minSize)
public char[] allocTokenBuffer()
public char[] allocTokenBuffer(int minSize)
public char[] allocConcatBuffer()
public char[] allocNameCopyBuffer(int minSize)
public void releaseReadIOBuffer(byte[] buf)
public void releaseWriteEncodingBuffer(byte[] buf)
public void releaseBase64Buffer(byte[] buf)
public void releaseTokenBuffer(char[] buf)
public void releaseConcatBuffer(char[] buf)
public void releaseNameCopyBuffer(char[] buf)
protected final void _verifyAlloc(Object buffer)
protected final void _verifyRelease(byte[] toRelease,
                                    byte[] src)
protected final void _verifyRelease(char[] toRelease,
                                    char[] src)
Copyright © 2008–2020 FasterXML. All rights reserved.