|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sourceforge.jtds.jdbc.RequestStream
Class to implement an output stream for the server request.
Implementation note:
Field Summary | |
private SharedSocket.VirtualSocket |
_VirtualSocket
The unique stream id. |
private byte[] |
buffer
The output packet buffer. |
private int |
bufferPtr
The offset of the next byte to write. |
private int |
bufferSize
The current output buffer size |
private boolean |
isClosed
True if stream is closed. |
private int |
maxPrecision
The maximum decimal precision. |
private byte |
pktType
The request packet type. |
private SharedSocket |
socket
The shared network socket. |
Constructor Summary | |
(package private) |
RequestStream(SharedSocket socket,
SharedSocket.VirtualSocket vsock,
int bufferSize,
int maxPrecision)
Construct a RequestStream object. |
Method Summary | |
(package private) void |
close()
Close the output stream. |
(package private) void |
flush()
Flush the packet to the output stream setting the last packet flag. |
(package private) int |
getBufferSize()
Retrieve the current output packet size. |
(package private) byte |
getMaxDecimalBytes()
Returns the maximum number of bytes required to output a decimal given the current maxPrecision . |
(package private) int |
getMaxPrecision()
Retrive the maximum decimal precision. |
(package private) int |
getServerType()
Retrieve the Server type. |
(package private) int |
getTdsVersion()
Retrieve the TDS version number. |
(package private) SharedSocket.VirtualSocket |
getVirtualSocket()
Retrieve the VirtualSocket used by this stream. |
private void |
putPacket(int last)
Write the TDS packet to the network. |
(package private) void |
setBufferSize(int size)
Set the output buffer size |
(package private) void |
setPacketType(byte pktType)
Set the current output packet type. |
(package private) void |
write(java.math.BigDecimal value)
Write a BigDecimal value to the output stream. |
(package private) void |
write(byte b)
Write a byte to the output stream. |
(package private) void |
write(byte[] b)
Write an array of bytes to the output stream. |
(package private) void |
write(byte[] b,
int off,
int len)
Write a partial byte buffer to the output stream. |
(package private) void |
write(char[] s,
int off,
int len)
Write a char array object to the output stream. |
(package private) void |
write(double f)
Write a double value to the output stream. |
(package private) void |
write(float f)
Write a float value to the output stream. |
(package private) void |
write(int i)
Write an int value to the output stream. |
(package private) void |
write(long l)
Write a long value to the output stream. |
(package private) void |
write(short s)
Write a short value to the output stream. |
(package private) void |
write(java.lang.String s)
Write a String object to the output stream. |
(package private) void |
writeAscii(java.lang.String s)
Write a String to the output stream as translated bytes. |
(package private) void |
writeReaderBytes(java.io.Reader in,
int length)
Copy the contents of a Reader stream to the server as bytes. |
(package private) void |
writeReaderChars(java.io.Reader in,
int length)
Copy the contents of a Reader stream to the server. |
(package private) void |
writeStreamBytes(java.io.InputStream in,
int length)
Copy the contents of an InputStream to the server. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private final SharedSocket socket
private byte[] buffer
private int bufferPtr
private byte pktType
private final SharedSocket.VirtualSocket _VirtualSocket
private boolean isClosed
private final int bufferSize
private final int maxPrecision
Constructor Detail |
RequestStream(SharedSocket socket, SharedSocket.VirtualSocket vsock, int bufferSize, int maxPrecision)
socket
- the shared socket object to write tovsock
- the VirtualSocket
used by this streambufferSize
- the initial buffer size to use (the current network
packet size)maxPrecision
- the maximum precision for numeric/decimal typesMethod Detail |
void setBufferSize(int size)
size
- The new buffer size (>= TdsCore.MIN_PKT_SIZE
<= TdsCore.MAX_PKT_SIZE
).int getBufferSize()
int
.int getMaxPrecision()
int
.byte getMaxDecimalBytes()
maxPrecision
.
SharedSocket.VirtualSocket getVirtualSocket()
VirtualSocket
used by this stream.
int
.void setPacketType(byte pktType)
pktType
- The packet type eg TdsCore.QUERY_PKT.void write(byte b) throws java.io.IOException
b
- The byte value to write.
java.io.IOException
void write(byte[] b) throws java.io.IOException
b
- The byte array to write.
java.io.IOException
void write(byte[] b, int off, int len) throws java.io.IOException
b
- The byte array buffer.off
- The offset into the byte array.len
- The number of bytes to write.
java.io.IOException
void write(int i) throws java.io.IOException
i
- The int value to write.
java.io.IOException
void write(short s) throws java.io.IOException
s
- The short value to write.
java.io.IOException
void write(long l) throws java.io.IOException
l
- The long value to write.
java.io.IOException
void write(double f) throws java.io.IOException
f
- The double value to write.
java.io.IOException
void write(float f) throws java.io.IOException
f
- The float value to write.
java.io.IOException
void write(java.lang.String s) throws java.io.IOException
s
- The String to write.
java.io.IOException
void write(char[] s, int off, int len) throws java.io.IOException
s
- The char[] to write.
java.io.IOException
void writeAscii(java.lang.String s) throws java.io.IOException
s
- The String to write.
java.io.IOException
void writeStreamBytes(java.io.InputStream in, int length) throws java.io.IOException
in
- The InputStream to read.length
- The length of the stream.
java.io.IOException
void writeReaderChars(java.io.Reader in, int length) throws java.io.IOException
in
- The Reader object with the data.length
- The length of the data in characters.
java.io.IOException
void writeReaderBytes(java.io.Reader in, int length) throws java.io.IOException
NB. Only reliable where the charset is single byte.
in
- The Reader object with the data.length
- The length of the data in bytes.
java.io.IOException
void write(java.math.BigDecimal value) throws java.io.IOException
value
- The BigDecimal value to write.
java.io.IOException
void flush() throws java.io.IOException
java.io.IOException
void close()
int getTdsVersion()
int
.int getServerType()
int
.private void putPacket(int last) throws java.io.IOException
last
- Set to 1 if this is the last packet else 0.
java.io.IOException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |