クラス org.objectweb.cjdbc.common.stream.CJDBCOutputStream

すべてのメンバ一覧

説明

ObjectOutputStream to use between the controller and the driver.

参照:
org.objectweb.cjdbc.common.stream.CJDBCStream
作者:
Nicolas Modrzyk

CJDBCOutputStream.java40 行で定義されています。

Public メソッド

 CJDBCOutputStream (Socket socket) throws IOException, StreamCorruptedException
 CJDBCOutputStream (OutputStream out) throws IOException, StreamCorruptedException
void flush () throws IOException
void close () throws IOException
void writeObject (Object obj) throws IOException
void writeUTF (String string) throws IOException
void writeInt (int value) throws IOException
void writeLong (long value) throws IOException
void writeBoolean (boolean value) throws IOException
long getBytesWritten ()
Socket getSocket ()
long getDateCreated ()
boolean getUseCompression ()
long getSpeed ()

Private 変数

ObjectOutputStream output
long bytesWritten
Socket socket
boolean useCompression = false
long speed = -1
long dateCreated
int unshared = 0


コンストラクタとデストラクタ

org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream Socket  socket  )  throws IOException, StreamCorruptedException
 

Creates a new CJDBCOutputStream object for statistics on sockets

引数:
socket socket to monitor
例外:
IOException if an IO error occurs
StreamCorruptedException if an error occurs
CJDBCOutputStream.java59 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.socket.

00061 { 00062 this(socket.getOutputStream()); 00063 this.socket = socket; 00064 }

org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream OutputStream  out  )  throws IOException, StreamCorruptedException
 

Creates a new CJDBCOutputStream from the given input stream.

引数:
out outputstream to wrap
例外:
IOException if new ObjectInputStream() throws anException
StreamCorruptedException same as above
CJDBCOutputStream.java74 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten, org.objectweb.cjdbc.common.stream.CJDBCOutputStream.dateCreated, と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

00076 { 00077 output = new ObjectOutputStream(new BufferedOutputStream(out)); 00078 dateCreated = System.currentTimeMillis(); 00079 bytesWritten = 0; 00080 }


メソッド

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.close  )  throws IOException
 

参照:
java.io.ObjectOutputStream#close()
例外:
IOException if an error occurs
CJDBCOutputStream.java95 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

参照元 org.objectweb.cjdbc.driver.ConnectionClosingThread.closeConnection().

00096 { 00097 output.close(); 00098 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.flush  )  throws IOException
 

参照:
java.io.ObjectOutputStream#flush()
例外:
IOException if an error occurs
CJDBCOutputStream.java86 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

参照元 org.objectweb.cjdbc.driver.ConnectionClosingThread.closeConnection(), org.objectweb.cjdbc.driver.Driver.connect(), org.objectweb.cjdbc.controller.core.ControllerWorkerThread.run(), と org.objectweb.cjdbc.controller.core.ControllerServerThread.run().

00087 { 00088 output.flush(); 00089 }

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getBytesWritten  ) 
 

戻り値:
Returns the bytesWritten.
CJDBCOutputStream.java182 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten.

00183 { 00184 return bytesWritten; 00185 }

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getDateCreated  ) 
 

戻り値:
Returns the dateCreated.
CJDBCOutputStream.java198 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.dateCreated.

00199 { 00200 return dateCreated; 00201 }

Socket org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getSocket  ) 
 

戻り値:
Returns the socket.
CJDBCOutputStream.java190 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.socket.

00191 { 00192 return socket; 00193 }

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getSpeed  ) 
 

戻り値:
Returns the speed.
CJDBCOutputStream.java214 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.speed.

00215 { 00216 return speed; 00217 }

boolean org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getUseCompression  ) 
 

戻り値:
Returns the useCompression.
CJDBCOutputStream.java206 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.useCompression.

00207 { 00208 return useCompression; 00209 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeBoolean boolean  value  )  throws IOException
 

参照:
java.io.ObjectOutputStream#writeBoolean(boolean)
引数:
value a boolean value to write to the stream
例外:
IOException if an error occurs
CJDBCOutputStream.java173 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten, と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

00174 { 00175 bytesWritten += 1; 00176 output.writeBoolean(value); 00177 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeInt int  value  )  throws IOException
 

参照:
java.io.ObjectOutputStream#writeInt(int)
引数:
value an int value to write to the stream
例外:
IOException if an error occurs
CJDBCOutputStream.java151 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten, と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

参照元 org.objectweb.cjdbc.driver.ConnectionClosingThread.closeConnection(), と org.objectweb.cjdbc.driver.Driver.connect().

00152 { 00153 bytesWritten += 4; 00154 output.writeInt(value); 00155 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeLong long  value  )  throws IOException
 

参照:
java.io.ObjectOutputStream#writeLong(long)
引数:
value a long value to write to the stream
例外:
IOException if an error occurs
CJDBCOutputStream.java162 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten, と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output.

00163 { 00164 bytesWritten += 8; 00165 output.writeLong(value); 00166 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeObject Object  obj  )  throws IOException
 

参照:
java.io.ObjectOutputStream#writeObject(java.lang.Object)
引数:
obj an Object to write to the stream
例外:
IOException if an error occurs
CJDBCOutputStream.java105 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten, org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output, org.objectweb.cjdbc.common.stream.CJDBCOutputStream.unshared, と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.useCompression.

参照元 org.objectweb.cjdbc.controller.core.ControllerWorkerThread.run(), と org.objectweb.cjdbc.controller.core.ControllerServerThread.run().

00106 { 00107 if (useCompression) 00108 { 00109 byte[] bytes = CJDBCStream.compressObject(obj); 00110 bytesWritten += bytes.length + 4; 00111 // we are sending an integer on the pipe. 00112 00113 output.writeInt(bytes.length); 00114 output.write(bytes); 00115 } 00116 else 00117 { 00118 // Use the unshared version to prevent the stream to keep references on 00119 // objects. This prevents objects sent through the channel from being 00120 // garbage collected and results in memory leaks. 00121 output.writeUnshared(obj); 00122 if (CJDBCStream.CLEAN_INTERVAL != -1 00123 && (unshared++ > CJDBCStream.CLEAN_INTERVAL)) 00124 { 00125 unshared = 0; 00126 output.flush(); 00127 output.reset(); 00128 } 00129 } 00130 00131 }

void org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeUTF String  string  )  throws IOException
 

参照:
java.io.ObjectOutputStream#writeUTF(java.lang.String)
引数:
string a String to write in UTF form to the stream
例外:
IOException if an error occurs
CJDBCOutputStream.java138 行で定義されています。

参照先 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten.

参照元 org.objectweb.cjdbc.driver.Driver.connect().

00139 { 00140 // use writeUnshared of writeObject of this class 00141 this.writeObject(string); 00142 if (string != null) 00143 bytesWritten += string.length(); 00144 }


変数

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.bytesWritten [private]
 

CJDBCOutputStream.java44 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getBytesWritten(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeBoolean(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeInt(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeLong(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeObject(), と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeUTF().

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.dateCreated [private]
 

CJDBCOutputStream.java48 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream(), と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getDateCreated().

ObjectOutputStream org.objectweb.cjdbc.common.stream.CJDBCOutputStream.output [private]
 

CJDBCOutputStream.java43 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.close(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.flush(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeBoolean(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeInt(), org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeLong(), と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeObject().

Socket org.objectweb.cjdbc.common.stream.CJDBCOutputStream.socket [private]
 

CJDBCOutputStream.java45 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.CJDBCOutputStream(), と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getSocket().

long org.objectweb.cjdbc.common.stream.CJDBCOutputStream.speed = -1 [private]
 

CJDBCOutputStream.java47 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getSpeed().

int org.objectweb.cjdbc.common.stream.CJDBCOutputStream.unshared = 0 [private]
 

CJDBCOutputStream.java49 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeObject().

boolean org.objectweb.cjdbc.common.stream.CJDBCOutputStream.useCompression = false [private]
 

CJDBCOutputStream.java46 行で定義されています。

参照元 org.objectweb.cjdbc.common.stream.CJDBCOutputStream.getUseCompression(), と org.objectweb.cjdbc.common.stream.CJDBCOutputStream.writeObject().


このクラスの説明は次のファイルから生成されました:
CJDBCversion1.0.4に対してTue Oct 12 15:16:19 2004に生成されました。 doxygen 1.3.8