例: getValueCustomData method

次のエージェントは、現在の文書のカスタムデータを取得します。カスタムデータは、IntIntStringItem という名前のアイテムにあり、書き込まれたときに IntIntStringType というデータ型名が設定されています。データは、クラス IntIntString によって定義されます。

import lotus.domino.*;
import java.io.*;

public class JavaAgent extends AgentBase {

  public void NotesMain() {

    try {
      Session session = getSession();
      AgentContext agentContext = session.getAgentContext();

      // (Your code goes here) 
      Document doc = agentContext.getDocumentContext();
      if (doc.hasItem("IntIntStringItem")) {
        Item item = doc.getFirstItem("IntIntStringItem");
        if (item.getType() == Item.USERDATA) {
          IntIntString iis = (IntIntString) item.getValueCustomData(
          "IntIntStringType");
          iis.show();
        }
        else
          System.out.println("Not user data");
      }
      else
        System.out.println("No item IntIntString in document");

    } catch(Exception e) {
      e.printStackTrace();
    }
  }
}

// Define custom data
class IntIntString implements Serializable {
  int int1;
  int int2;
  String string1;
  
  void setData(int i1, int i2, String s1) {
    int1 = i1;
    int2 = i2;
    string1 = s1;
  }
  
  void show() {
    System.out.println("Int1 = " + int1);
    System.out.println("Int2 = " + int2);
    System.out.println("String1 = " + string1);
  }
}