クラス org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector

org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollectorに対する継承グラフ

Inheritance graph
[凡例]
org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollectorのコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

説明

Collects information about C-JDBC clients. TODO: Implements proper client data collection. This is not used at the moment.
作者:
Nicolas Modrzyk

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

Public メソッド

 AbstractClientDataCollector (String virtualDatabaseName, String clientId) throws DataCollectorException
long collectValue () throws DataCollectorException
abstract long getValue (Object client)
String getTargetName ()

Private メソッド

Object setClientIndex () throws DataCollectorException
Object checkClientIndex () throws DataCollectorException

Private 変数

String virtualDatabaseName
String clientId
int clientIndex


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

org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.AbstractClientDataCollector String  virtualDatabaseName,
String  clientId
throws DataCollectorException
 

引数:
virtualDatabaseName of the virtualdatabase
clientId for the client
例外:
DataCollectorException if cannot access client
AbstractClientDataCollector.java51 行で定義されています。

参照先 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientId, org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.setClientIndex(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.virtualDatabaseName.

00053 { 00054 super(); 00055 this.virtualDatabaseName = virtualDatabaseName; 00056 this.clientId = clientId; 00057 setClientIndex(); 00058 }


メソッド

Object org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex  )  throws DataCollectorException [private]
 

AbstractClientDataCollector.java86 行で定義されています。

参照先 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientId, org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientIndex, org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabase.getActiveThreads(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.getUser(), org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.setClientIndex(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.virtualDatabaseName.

参照元 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.collectValue().

00087 { 00088 VirtualDatabase vdb = ((Controller)controller).getVirtualDatabase( 00089 virtualDatabaseName); 00090 ArrayList activeThreads = vdb.getActiveThreads(); 00091 VirtualDatabaseWorkerThread client = (VirtualDatabaseWorkerThread) activeThreads 00092 .get(clientIndex); 00093 if (client.getUser().equals(clientId)) 00094 return client; 00095 else 00096 { 00097 return setClientIndex(); 00098 } 00099 }

long org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.collectValue  )  throws DataCollectorException [virtual]
 

参照:
org.objectweb.cjdbc.common.monitor.AbstractDataCollector.collectValue()

org.objectweb.cjdbc.common.monitor.AbstractDataCollectorを実装しています.

AbstractClientDataCollector.java104 行で定義されています。

参照先 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex().

00105 { 00106 VirtualDatabaseWorkerThread client = (VirtualDatabaseWorkerThread) checkClientIndex(); 00107 return this.getValue(client); 00108 }

String org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.getTargetName  )  [virtual]
 

参照:
org.objectweb.cjdbc.common.monitor.AbstractDataCollector.getTargetName()

org.objectweb.cjdbc.common.monitor.AbstractDataCollectorを実装しています.

AbstractClientDataCollector.java121 行で定義されています。

参照先 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientId.

00122 { 00123 return clientId; 00124 }

abstract long org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.getValue Object  client  )  [pure virtual]
 

We have the client object so let's get the value we want from ot

引数:
client as an object to allow it through RMI, but IS a VirtualDatabaseWorkerThread
戻り値:
the collected value

org.objectweb.cjdbc.common.monitor.client.ClientActiveTimeCollector, org.objectweb.cjdbc.common.monitor.client.ClientBytesReadCollector, org.objectweb.cjdbc.common.monitor.client.ClientBytesWrittenCollector, org.objectweb.cjdbc.common.monitor.client.ClientReadingSpeedCollector, と org.objectweb.cjdbc.common.monitor.client.ClientWritingSpeedCollectorで実装されています.

Object org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.setClientIndex  )  throws DataCollectorException [private]
 

AbstractClientDataCollector.java60 行で定義されています。

参照先 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientId, org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabase.getActiveThreads(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.getUser(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.virtualDatabaseName.

参照元 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.AbstractClientDataCollector(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex().

00061 { 00062 VirtualDatabase vdb = ((Controller)controller).getVirtualDatabase( 00063 virtualDatabaseName); 00064 ArrayList activeThreads = vdb.getActiveThreads(); 00065 int size = activeThreads.size(); 00066 VirtualDatabaseWorkerThread client = null; 00067 int index = 0; 00068 for (index = 0; index < size; index++) 00069 { 00070 client = ((VirtualDatabaseWorkerThread) activeThreads.get(index)); 00071 if (client.getUser().equals(clientId)) 00072 break; 00073 else 00074 client = null; 00075 } 00076 00077 if (client == null) 00078 throw new DataCollectorException(ExceptionTypes.CLIENT_NOT_FOUND); 00079 else 00080 { 00081 this.clientIndex = index; 00082 return client; 00083 } 00084 }


変数

String org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientId [private]
 

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

参照元 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.AbstractClientDataCollector(), org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex(), org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.getTargetName(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.setClientIndex().

int org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.clientIndex [private]
 

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

参照元 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex().

String org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.virtualDatabaseName [private]
 

AbstractClientDataCollector.java42 行で定義されています。

参照元 org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.AbstractClientDataCollector(), org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.checkClientIndex(), と org.objectweb.cjdbc.common.monitor.client.AbstractClientDataCollector.setClientIndex().


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