comparison src/treecms/tree/cassandra/v1/ClientThread.java @ 7:fc19e38b669b

added concurrent access client for cassandr
author shoshi
date Thu, 17 Mar 2011 23:24:08 +0900
parents
children
comparison
equal deleted inserted replaced
6:12604eb6b615 7:fc19e38b669b
1 package treecms.tree.cassandra.v1;
2
3 import org.apache.thrift.transport.TTransportException;
4
5 /**
6 * CassandraのClientを保持したスレッドオブジェクトです。
7 * @author shoshi
8 */
9 final class ClientThread extends Thread
10 {
11 private ClientWrapper m_wrapper;
12
13 /**
14 * コンストラクタです。
15 * @param _host Cassandraのホスト名
16 * @param _port Cassandraのポート番号
17 * @param _runnable このスレッドで動作するRunnable
18 * @throws TTransportException
19 */
20 private ClientThread(String _host,int _port,Runnable _runnable) throws TTransportException
21 {
22 super(_runnable);
23 m_wrapper = new ClientWrapper(_host,_port,2);
24 }
25
26 /**
27 * ファクトリメソッドです。
28 * @param _host Cassandraのホスト名
29 * @param _port Cassandraのポート番号
30 * @param _runnable このスレッドで動作するRunnable
31 * @return 新しいインスタンス
32 * @throws TTransportException Cassandraへの接続が失敗したとき
33 */
34 public static ClientThread newInstance(String _host,int _port,Runnable _runnable) throws TTransportException
35 {
36 ClientThread thread = new ClientThread(_host,_port,_runnable);
37 return thread;
38 }
39
40 /**
41 * ClientWrapperを取得します
42 * @return CassandraへのClientWrapper
43 */
44 public ClientWrapper getClientWrapper()
45 {
46 return m_wrapper;
47 }
48 }