Top Fields Constructors Methods
com.fasterxml.jackson.dataformat.yaml

public final Class UTF8Writer

extends Writer
Class Inheritance
Imports
java.io.*, java.lang.ref.SoftReference

Field Summary

Modifier and TypeField and Description
protected final byte[][]
protected static final ThreadLocal<SoftReference<byte[][]>>
_bufferRecycler

This ThreadLocal contains a java.lang.ref.SoftReference to a byte array used for holding content to decode

private OutputStream
private byte[]
private final int
private int
pack-priv int
_surrogate

When outputting chars from BMP, surrogate pairs need to be coalesced.

private static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
Inherited from java.io.Writer:
lock

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static byte[][]
public Writer
append(char
The 16-bit character to append
c
)

Overrides java.io.Writer.append.

Implements java.lang.Appendable.append.

Appends the specified character to this writer.

public void
close()

Implements abstract java.io.Writer.close.

Implements java.io.Closeable.close.

Closes the stream, flushing it first.

private int
convertSurrogate(int secondPart)

Method called to calculate UTF codepoint, from a surrogate pair.

public void
flush()

Implements abstract java.io.Writer.flush.

Implements java.io.Flushable.flush.

Flushes the stream.

private void
throwIllegal(int code)

public void
write(char[]
Array of characters to be written
cbuf
)

Overrides java.io.Writer.write.

Writes an array of characters.

public void
write(char[]
Array of characters
cbuf
,
int
Offset from which to start writing characters
off
,
int
Number of characters to write
len
)

Implements abstract java.io.Writer.write.

Writes a portion of an array of characters.

public void
write(int
int specifying a character to be written
c
)

Overrides java.io.Writer.write.

Writes a single character.

public void
write(String
String to be written
str
)

Overrides java.io.Writer.write.

Writes a string.

public void
write(String
A String
str
,
int
Offset from which to start writing characters
off
,
int
Number of characters to write
len
)

Overrides java.io.Writer.write.

Writes a portion of a string.

Inherited from java.io.Writer:
appendappendnullWriter

Field Detail

_bufferHolderback to summary
protected final byte[][] _bufferHolder
_bufferRecyclerback to summary
protected static final ThreadLocal<SoftReference<byte[][]>> _bufferRecycler

This ThreadLocal contains a java.lang.ref.SoftReference to a byte array used for holding content to decode

_outback to summary
private OutputStream _out
_outBufferback to summary
private byte[] _outBuffer
_outBufferEndback to summary
private final int _outBufferEnd
_outPtrback to summary
private int _outPtr
_surrogateback to summary
pack-priv int _surrogate

When outputting chars from BMP, surrogate pairs need to be coalesced. To do this, both pairs must be known first; and since it is possible pairs may be split, we need temporary storage for the first half

DEFAULT_BUFFER_SIZEback to summary
private static final int DEFAULT_BUFFER_SIZE
SURR1_FIRSTback to summary
pack-priv static final int SURR1_FIRST
SURR1_LASTback to summary
pack-priv static final int SURR1_LAST
SURR2_FIRSTback to summary
pack-priv static final int SURR2_FIRST
SURR2_LASTback to summary
pack-priv static final int SURR2_LAST

Constructor Detail

UTF8Writerback to summary
public UTF8Writer(OutputStream out)

Method Detail

_findBufferHolderback to summary
private static byte[][] _findBufferHolder()
appendback to summary
public Writer append(char c) throws IOException

Overrides java.io.Writer.append.

Implements java.lang.Appendable.append.

Doc from java.io.Writer.append.

Appends the specified character to this writer.

An invocation of this method of the form out.append(c) behaves in exactly the same way as the invocation

out.write(c)
out.write(c)
Parameters
c:char

The 16-bit character to append

Returns:Writer

This writer

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
closeback to summary
public void close() throws IOException

Implements abstract java.io.Writer.close.

Implements java.io.Closeable.close.

Doc from java.io.Writer.close.

Closes the stream, flushing it first. Once the stream has been closed, further write() or flush() invocations will cause an IOException to be thrown. Closing a previously closed stream has no effect.

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
convertSurrogateback to summary
private int convertSurrogate(int secondPart) throws IOException

Method called to calculate UTF codepoint, from a surrogate pair.

flushback to summary
public void flush() throws IOException

Implements abstract java.io.Writer.flush.

Implements java.io.Flushable.flush.

Doc from java.io.Writer.flush.

Flushes the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination. Then, if that destination is another character or byte stream, flush it. Thus one flush() invocation will flush all the buffers in a chain of Writers and OutputStreams.

If the intended destination of this stream is an abstraction provided by the underlying operating system, for example a file, then flushing the stream guarantees only that bytes previously written to the stream are passed to the operating system for writing; it does not guarantee that they are actually written to a physical device such as a disk drive.

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
throwIllegalback to summary
private void throwIllegal(int code) throws IOException
writeback to summary
public void write(char[] cbuf) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes an array of characters.

Parameters
cbuf:char[]

Array of characters to be written

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(char[] cbuf, int off, int len) throws IOException

Implements abstract java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a portion of an array of characters.

Parameters
cbuf:char[]

Array of characters

off:int

Offset from which to start writing characters

len:int

Number of characters to write

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(int c) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a single character. The character to be written is contained in the 16 low-order bits of the given integer value; the 16 high-order bits are ignored.

Subclasses that intend to support efficient single-character output should override this method.

Parameters
c:int

int specifying a character to be written

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(String str) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a string.

Parameters
str:String

String to be written

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(String str, int off, int len) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a portion of a string.

Parameters
str:String

A String

off:int

Offset from which to start writing characters

len:int

Number of characters to write

Annotations
@Override
Exceptions
IOException:
If an I/O error occurs