Top Description Fields Constructors Methods
org.apache.derby.client.am

pack-priv Class ClobLocatorWriter

extends Writer
Class Inheritance
Imports
java.io.IOException, .Writer

An Writer that will use an locator to write the Clob value into the server.

This Writer implementation is pretty basic. No buffering of data is done. Hence, for efficiency #write(char[]) should be used instead of #write(int).

Field Summary

Modifier and TypeField and Description
private final ClientClob
clob

The Clob to be accessed.

private final ClientConnection
connection

Connection used to read Clob from server.

private long
currentPos

Current position in the underlying Clob.

private boolean
isClosed

Stores the information to whether this Writer has been closed or not.

Inherited from java.io.Writer:
lock

Constructor Summary

AccessConstructor and Description
pack-priv
ClobLocatorWriter(ClientConnection
connection to be used to write to the Clob value on the server
connection
,
ClientClob
Clob object that contains locator for the Clob value on the server.
clob
,
long
the position in the CLOB value at which to start writing; the first position is 1
pos
)

Create a Writer for writing to the Clob value represented by the given locator based Clob object.

Method Summary

Modifier and TypeMethod and Description
private void
checkClosed()

Check to see if this Writer is closed.

public void
close()

Implements abstract java.io.Writer.close.

Implements java.io.Closeable.close.

Closes the stream, flushing it first.
public void
flush()

Implements abstract java.io.Writer.flush.

Implements java.io.Flushable.flush.

Flushes the stream.
public void
write(int
int specifying a character to be written
c
)

Overrides java.io.Writer.write.

Writes a single character.
public void
write(char[]
Array of characters to be written
c
)

Overrides java.io.Writer.write.

Writes an array of characters.
public void
write(char[]
Array of characters
c
,
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.
private void
writeCharacters(char[]
The character array containing the chars to be written
c
,
int off, int len)

Write the char[] to the Clob value on the server; starting from the current position of this stream.

Inherited from java.io.Writer:
appendappendappendnullWriterwritewrite

Field Detail

clobback to summary
private final ClientClob clob

The Clob to be accessed.

connectionback to summary
private final ClientConnection connection

Connection used to read Clob from server.

currentPosback to summary
private long currentPos

Current position in the underlying Clob. Clobs are indexed from 1

isClosedback to summary
private boolean isClosed

Stores the information to whether this Writer has been closed or not. Is set to true if close() has been called. Is false otherwise.

Constructor Detail

ClobLocatorWriterback to summary
pack-priv ClobLocatorWriter(ClientConnection connection, ClientClob clob, long pos) throws SqlException

Create a Writer for writing to the Clob value represented by the given locator based Clob object.

Parameters
connection:ClientConnection

connection to be used to write to the Clob value on the server

clob:ClientClob

Clob object that contains locator for the Clob value on the server.

pos:long

the position in the CLOB value at which to start writing; the first position is 1

Method Detail

checkClosedback to summary
private void checkClosed() throws IOException

Check to see if this Writer is closed. If it is closed throw an IOException that states that the stream is closed.

Exceptions
IOException:
if isClosed = true.
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.

Exceptions
IOException:
If an I/O error occurs
See Also
java.io.Writer#close()
flushback to summary
public void flush()

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.

See Also
java.io.Writer#flush()
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

Exceptions
IOException:
If an I/O error occurs
See Also
This method writes one Character at a time to the server. For more efficient writing, use #write(char[]).
writeback to summary
public void write(char[] c) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes an array of characters.

Parameters
c:char[]

Array of characters to be written

Exceptions
IOException:
If an I/O error occurs
See Also
java.io.Writer#write(char[])
writeback to summary
public void write(char[] c, 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
c:char[]

Array of characters

off:int

Offset from which to start writing characters

len:int

Number of characters to write

Exceptions
IOException:
If an I/O error occurs
See Also
java.io.Writer#write(char[], int, int)
writeCharactersback to summary
private void writeCharacters(char[] c, int off, int len) throws IOException

Write the char[] to the Clob value on the server; starting from the current position of this stream.

Parameters
c:char[]

The character array containing the chars to be written

Exceptions
IOException:
Wrapped SqlException if writing to server fails.