AgentSpaceのエージェントはJava言語によって作成され、そのプログラムの 形態は、他のJavaベースのモーバイルエージェントシステムとほぼ同じもの となります。たたし、AgentSpaceシステムではエージェント転送の高速化の ためJava言語処理系でコンパイル後にクラスファイルの統合という処理( 一回のコマンドで可能)が必要となります。
コンパイル方法は通常のJavaプログラムのコンパイルと同じです。JDK1.1 を用いるのならば
javac Javaソースファイル
ただし、 環境変数CLASSPATHに上記の system ディレクトリが含まれている必要が あります。もし、環境変数CLASSPATHに「 . 」(カレントディレクトリ)が 含まれいるのならば、上記の system ディレクトリをカレントディレクトリ にしてください。
AgentSpaceシステムの特徴は、エージェントに必要なファイルをまとめて 一回のTCPトランザクションで転送することにあります。これにより、他の Javaベースのモーバイルエージェントシステムでは、エージェントの状態に加 えて、必要なクラスファイルを一個づつ転送するためにTCPトランザクション が非常に多くなるのに対して、AgentSpaceシステムは一回で済むこととなり高 速化されます。これは、ネットワークの物理的通信遅延が大きいほど、その差 が広がります。これはHTTPにおいて、一つのHTMLファイルの中にサイズは小さ いが数多くのイメージファイルが含まれている場合と、サイズは小さくないが 一個のイメージファイルしかない場合を想像していたいただければよいでしょ う。
ただし、Java言語処理系で生成したクラスファイルを一つに統合する という処理が必要となります。また、この処理ではデータ圧縮と暗号化を 行い、転送速度の向上と安全性を確保も同時に行います。
AgentSpaceシステムをインストールされてい る必要があります。また、以降では、環境変数CLASSPATHに「. 」があり、か つ、カレントディレクトリが 解凍ファイルの systemディレクトリであるとし ます。
java MakeAgent 主クラス名 エージェント名 必要クラスファイル名(s)
ここで主クラス名とは、Agentクラスを継承したクラスであり、 コールバックされるメソッドを含むJavaクラスの名前です。 エージェント名はエージェントの名前、必要クラスファイル名(s) は このエージェントに関わるクラスファイル名で、転送先に存在しない クラスはここに列挙しておく必要があります。
java MakeAgent Editor Editor.agent Editor.class
この例は上記の Editor.javaに基づくエージェントファイルの生成方法を 示したものです。すでにEditor.classは存在するとします。なお、環境変数 CLASSPATHに「 . 」があり、かつ、カレントディレクトリが解凍ファイルの system ディレクトリであるとします。
上記の Editor.java はAgentクラスのサブクラスであり、コールバックメ ソッドをもっていますので主クラスとなります。そして、エージェントの名前 を Editor.agent とします。エージェントファイルはその拡張子が「.agent」 となる必要があります。このエージェントに固有のクラスは Editor.class だ けなので Editor.class をクラスファイルを登録しておきます。もし、複数の クラスファイルから構成されているのならば例えば以下のようにします。
java MakeAgent Editor Editor.agent Editor.class Editor1.class Editor2.class
AgentSpaceシステムが起動してたら、AgentSpaceのウィンドウから「Load」 ボタンを押し、ファイルリストから「Editor.agent」となるファイルを選択・ロードしてください。
質問は Email: agentspace@is.ocha.ac.jp に御連絡ください。