次の例は現在のデータベース内の文書から文書コレクションを作成します。[件名] フィールドに「one」という単語がある文書だけが含まれます。
import lotus.domino.*;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
// (Your code goes here)
Database db = agentContext.getCurrentDatabase();
// Open DXL file named after current database
Stream stream = session.createStream();
String filename = "c:¥¥dxl¥¥";
filename = filename + db.getFileName();
filename = filename.substring(0, filename.length() - 3) + "dxl";
if (stream.open(filename)) {
System.out.println("Opened " + filename);
stream.truncate();
// Create note collection
NoteCollection nc = db.createNoteCollection(false);
nc.buildCollection();
// Search for specific documents
DocumentCollection dc = db.getAllDocuments();
Document doc = dc.getFirstDocument();
while (doc != null) {
// Add document if Subject contains "one"
String subject = doc.getItemValueString("Subject");
if (subject.toLowerCase().indexOf("one") >= 0) {
nc.add(doc);
}
doc = dc.getNextDocument(doc);
}
// Export note collection as DXL
DxlExporter exporter = session.createDxlExporter();
String output = exporter.exportDxl(nc);
stream.writeText(output);
stream.close();
// Give count
System.out.println("Number of documents = " + nc.getCount());
}
else {
System.out.println("Cannot open " + filename);
}
} catch(Exception e) {
e.printStackTrace();
}
}
}