WordBean & WordBean2

星 大樹 hoshi@fuka.info.waseda.ac.jp

Nov 17, 2003: 登録

戻る(FukaBeans)

配布

環境

J2SDK1.3.1_06で確認済みです。

WordBean, WordBean2 とは?

WordBean は、Lesson: Using the BeanContext API にある Word Counting Service というファイル中のワード数を数えるプログラムを、(1) ワード数を数える処理を行う部分が一つの独立したクラス(WordBean)とする、(2) countWords() メソッドが File 型を引数に取る というように変更し、JavaBeans コンポーネントとしたものです。
WordBean2 は、countWords() メソッドの引数が File 型ではなく String 型を取るように、WordBean を変更したものです。
WordBean, WordBean2 ともに Services Protocol に対応しています。

利用例

Java プログラム中で用いる

以下は、WordBean を用いた例です。この例では、Services Protocol を用いています。
DocumentBean の利用方法や WordCount サービスの利用方法は、Word Counting Service を参照してください。

Tester.java (main メソッドを持つクラス):
import java.beans.beancontext.BeanContextServicesSupport;
import jp.ac.waseda.info.fuka.beans.DocumentBean;
import jp.ac.waseda.info.fuka.beans.WordCount;

public class Tester {
    public static void main(String[] args) {       
        BeanContextServicesSupport context = new BeanContextServicesSupport();
        DocumentBean doc1 = new DocumentBean("Test.txt"); 
        context.add(doc1);
        context.addBeanContextServicesListener(doc1);
        WordCountServiceProvider provider = new WordCountServiceProvider();
        context.addService(WordCount.class, provider);
    }
}

WordCountServiceProvider.java (サービスプロバイダ):
import java.beans.beancontext.BeanContextServiceProvider;
import java.beans.beancontext.BeanContextServices;
import java.util.Iterator;
import jp.ac.waseda.info.fuka.beans.WordBean;

public class WordCountServiceProvider implements BeanContextServiceProvider {

    public WordCountServiceProvider() {
        super();
    }

    public Object getService(BeanContextServices arg0, Object arg1, Class arg2, Object arg3) {
        return new WordBean();
    }

    public void releaseService(BeanContextServices arg0, Object arg1, Object arg2) {
        // do nothing
    }

    public Iterator getCurrentServiceSelectors(BeanContextServices arg0, Class arg1) {
        return null; // do nothing
    }
}

コンポーネント仕様

プロパティ: (無し)

メソッド:

<WordBean>
メソッド名 構造 概要
countWords void countWords( java.io.File file ) file のワード数をカウントし、標準出力に結果を表示します。

<WordBean2>
メソッド名 構造 概要
countWords void countWords( java.io.String fileName ) fileName で指定された名前のファイルのワード数をカウントし、標準出力に結果を表示します。

イベント: (無し)


戻る(FukaBeans)