2005年01月
« 前の月    |    次の月 »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
最新コメント
プロフィール
  • プロフィール画像
  • アイコン画像 ニックネーム:zsf
読者になる
Yapme!一覧
読者になる
IRCApplication-2 / 2005年01月05日(水)
続き、2000文字制限って厳しくないか?

receivedServerMessage
ちょっとJavaDocが長いので簡易訳。
このメソッドはサーバーより特殊なメッセージを受信した場合に、IRCConnectionから呼ばれるらしい。
IRCConnectionServerMessageParserを生成し、メッセージを含め、
このServerMessageParserからサーバーメッセージの種別を特定できる、と。
※ほとんどはnumeric commandであり、例えば、001はつまりWelcomeメッセージ。

このメソッドをオーバーライドすることで、サーバーコマンドに対するアクションを規定できる。
※例えば、接続完了時に特定のチャンネルにJOINするなど。

つまり、サーバーからなんらかのメッセージを受信したときに、処理を行いたいならばここに記述せよってこと。
もっぱら使用するのは接続完了時に特定のチャンネルにJOINしたり、ログを残したりとそんなところだろう。

sendToServer
逆にサーバーにPRIVMSG, KICK, MODEなどのIRCコマンドを送信する場合はこのメソッドを使う、と。


sendMessage
予想通りだが、メッセージを送信するメソッド。引数のターゲットにはチャンネルかユーザーを指定する。
processMessageで特定のキーワードなどに反応したい場合は、このメソッドを呼べば良い。
 
   
Posted at 11:38 / 2RC / この記事のURL
コメント(0)
IRCApplication-1 / 2005年01月05日(水)
チュートリアルを簡単に読んだが、完全版チュートリアルがオランダ語ということで断念。
サンプルアプリケーションとして幾つかダウンロードできるので、それを読んでいくことに。
Zornという簡単なボットアプリケーションで使用しているIRCApplicationのメソッド。
それぞれオーバーライドすることで簡単にIRCアプリケーションを作成できるようになっているが、
個人的には拡張とオーバーライドよりも、委譲でクラス分けした方が好みなんだよな…。

connectToServer
サーバーに接続するメソッド。throws Exceptionなのがちょっと気に食わないかも。
中を見てみるとIRCConnectionHandlerIRCServerをaddし、コネクション取得後接続しているだけ〜。
例外発生時はIRCConnectionHandlerをremove。それだけ(^^;
と、よく見てみると、IRCApplicationのメソッドのほとんどが数行で、実際の処理はインターフェイスを解して実装クラスで…という処理の模様。
確かにフレームワークとしてとっつき易いのはこれをオーバーライドして…なんだけど。
 
   
Posted at 11:12 / 2RC / この記事のURL
コメント(0)
Bag / 2005年01月04日(火)
BagはSetと似ているが、重複要素の扱いが便利。 重複要素有で追加してゆき、重複要素を繰り返し処理では扱わないというサンプル
        Bag bag = new HashBag();
        // 追加
        for (Iterator iter = bag.uniqueSet().iterator(); iter.hasNext();)
        {  // 重複無のIterator
            iter.next();
        }
 
   
Posted at 18:27 / JakartaCommons / この記事のURL
コメント(0)
2RCチュートリアル / 2005年01月04日(火)
2RCを触ってみる。
2RCはIRCクライアントを開発する為のフレームワークであり、グラフィカルなIRCクライアントやボットを作成することができる、らしい。
IRCの仕様は詳しくないのでその勉強もかねて…。

>パッケージ構成
be.trc.core
be.trc.core.hive
be.trc.gui
be.trc.gui.hive
と、シンプル。coreパッケージとguiパッケージはそのほとんどがインターフェイスであり、デフォルト実装としてhiveが用意されている。
よって気に食わない箇所があれば独自に実装すれば良い、GJ。
だが、ほとんどの実装はされているので必要な箇所だけを実装すればよいというフレームワークのようだ。感触はGood。


>インストール
jarをダウンロードしてclasspathを通すだけ(省略)

>Botを作ってみる
試しにサンプルを動かしてみる…なにやら例外が投げられている(TT
ソースを追ってみるとサーバーからのメッセージが空文字列の場合にOutOfIndexExceptionが投げられている模様。
仕様的には空文字列は駄目で試したサーバーがタコ?
解らないのでとりあえずは適当に回避して再実行。
高々数行のコードでボットが完成した、いい感じ。
 
 続きを読む…  
Posted at 18:14 / 2RC / この記事のURL
コメント(0)
P R
 
 
Powered by yaplog!