Mercurial > hg > Members > shoshi > TreeCMSv2
diff src/treecms/cassandra/util/CassandraClientThread.java @ 17:168deb591f21
commit
author | shoshi |
---|---|
date | Tue, 24 May 2011 00:33:12 +0900 |
parents | src/treecms/tree/cassandra/v1/util/CassandraClientThread.java@17ed97ca9960 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/treecms/cassandra/util/CassandraClientThread.java Tue May 24 00:33:12 2011 +0900 @@ -0,0 +1,48 @@ +package treecms.cassandra.util; + +import org.apache.thrift.transport.TTransportException; + +/** + * CassandraのClientを保持したスレッドオブジェクトです。 + * @author shoshi + */ +final class CassandraClientThread extends Thread +{ + private CassandraClientWrapper m_wrapper; + + /** + * コンストラクタです。 + * @param _host Cassandraのホスト名 + * @param _port Cassandraのポート番号 + * @param _runnable このスレッドで動作するRunnable + * @throws TTransportException + */ + private CassandraClientThread(String _host,int _port,Runnable _runnable) throws TTransportException + { + super(_runnable); + m_wrapper = new CassandraClientWrapper(_host,_port,2); + } + + /** + * ファクトリメソッドです。 + * @param _host Cassandraのホスト名 + * @param _port Cassandraのポート番号 + * @param _runnable このスレッドで動作するRunnable + * @return 新しいインスタンス + * @throws TTransportException Cassandraへの接続が失敗したとき + */ + public static CassandraClientThread newInstance(String _host,int _port,Runnable _runnable) throws TTransportException + { + CassandraClientThread thread = new CassandraClientThread(_host,_port,_runnable); + return thread; + } + + /** + * ClientWrapperを取得します + * @return CassandraへのClientWrapper + */ + public CassandraClientWrapper getClientWrapper() + { + return m_wrapper; + } +}