annotate src/treecms/tree/cassandra/v1/util/CassandraClientThread.java @ 9:17ed97ca9960

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