データベーススペシャリスト

DBスペシャリストの試験を申し込んでいたのですが、寝坊しました。起きたら14時です。もうね・・・。

事の発端は、徹夜でGroovyの調査をしていて、気がついたら3時頃になっていたわけです。まぁ明日は何もないし徹夜しちゃうじぇー(・ε・)と、ふと気がつきました。明日(今日)試験じゃんっ! 今から寝ても遅刻するし、その時点で諦めましたよ・・・。お金もったいなかった・・・。
・゚・(つД`)・゚・ ウェ―ン

Groovyの開発MLにでも入ろうとしたけど、英語が無理なので諦めました。Groovyはしばらく放置して、Strutsを拡張する方向で行きます。StrutsにGroovyの便利なクラスを盛り込む事に。クロージャーそのものを組み込むことは無理でも、似たような事はできると思います。一部のクロージャーは、ある時点での処理を噛ますことができると考えられます。よって、メソッドの引数にインターフェースを渡してあげて、メソッド中から特定のタイミングでインターフェースに定義されたメソッドをコールしてあげれば良いだけ。呼び出すときは、匿名クラスで処理を書いて渡す。

こんな感じかな。。(直接書いてるので信憑性はゼロ)
<<呼び出し>>
ExFile.eachLine ( srcFile, new MethodCallback() {
    public void callback ( Object obj ) {
        System.out.println(obj);
    }
});

<<ExFile#eachLine(File srcFile, MethodCallback callback)>>
BufferedReader in = new BufferedReader(
        new InputStreamReader (new FileReader (srcFile), encoding)
    );
String line = null;
while ( ( line = in.readLine()) != null) {
    callback.callback(line);
}

新しいサイトもよろしくお願いします!