次のエージェントは、検索と置換の後に、現在の文書または最初に選択された文書の Body アイテムを圧縮します。
import lotus.domino.*;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
// (Your code goes here)
DocumentCollection dc = agentContext.getUnprocessedDocuments();
Document doc = dc.getFirstDocument();
RichTextItem rti = (RichTextItem)doc.getFirstItem("Body");
RichTextNavigator rtnav = rti.createNavigator();
if (rtnav.findFirstElement(RichTextItem.RTELEM_TYPE_TEXTPARAGRAPH)) {
RichTextRange rtrange = rti.createRange();
int n = 0;
while (rtrange.findandReplace("foo", "bar") > 0) {
n++;
rti.update(); // Must update before looping
}
if (n > 0)
rti.compact();
doc.save(true, true);
}
} catch(NotesException e) {
System.out.println(e.id + e.text);
e.printStackTrace();
}
}
}