例: logAction method

次のエージェントはメールメモにアクションを記録します。現在のデータベース上で全文検索を実行し、検索照会に一致する文書ごとにアクションを 1 つ記録します。

logAction メソッドが呼び出されるたびに、スクリプトはメールメモの Body アイテムに 1 行を新規追加します。例えば、FTSearch が 3 つの文書で構成されるコレクションを返した場合、メールメモの Body は次のようになります。

09/14/98 01:41:51 PM Botany Agent starting 09/14/98 01:41:52 PM Document [Petals] placed in folder. 09/14/98 01:41:52 PM Document [Stems] placed in folder.09/14/98 01:41:52 PM Document [Leaves] placed in folder.

import lotus.domino.*;
import java.util.Vector;
public class JavaAgent extends AgentBase {
  public void NotesMain() {
    try {
      Session session = getSession();
      AgentContext agentContext = session.getAgentContext();
      // (Your code goes here) 
      Log log = session.createLog("Botany Agent");
      Vector v = new Vector();
      v.addElement(session.getUserName());
      log.openMailLog(v, "Log for botany agent");
      Database db = agentContext.getCurrentDatabase();
      DocumentCollection dc = db.FTSearch("botany", 0);
      Document doc = dc.getFirstDocument();
      while (doc != null) {
        doc.putInFolder("Botanist's Delight");
        log.logAction("Document " +
        doc.getItemValue("Subject") +
        " placed in folder.");
        doc = dc.getNextDocument();
        }
      log.close();
    } catch(Exception e) {
      e.printStackTrace();
    }
  }
}