Java Discord Listener実装〜コマンドを好きなだけ追加しよう〜

イントロダクション

前回は「ping」と入力したら「pong」と返事するアプリケーションを作成しました。ので今回は「test」と入力したら「Hello World」という返事をするものにしました。

ポイント

前回は、リスナークラスをメインメソッド上で作成しましたが、これだとクラスを追加するたびにメインメソッドを修正する必要があるので良いコードとは言えません。※「保守性に欠ける」なんて言います。

保守性のアップ方法その1※今回はこれだけです。

クラスファイルを別に作成し別にする。
つまり、作成したクラスを単純に追加する。

/** 作成したクラス */
public class FirstCommand implements MessageCreateListener {
    public void onMessageCreate(DiscordAPI api, Message message) {
        // check the content of the message
        if (message.getContent().equalsIgnoreCase("test")) {
            // reply to the message
            message.reply("Hello World!");
        }
    }
}
// MessageListenerインターフェースを実装したクラスを追加
api.registerListener(new FirstCommand());

実行結果は下の様になりました。ソースはこちら

今回作成したリポジトリは以下です。

https://github.com/ZenryokuService/DiscordPrg.git

上記のリンクで Gitに飛ぶことができ、リポジトリからソースをチェックアウトできます。(Pullすると言います。)