package org.openntf.domino.tests.ntf; import java.util.HashMap; import java.util.Map; import java.util.Vector; import org.openntf.domino.Database; import org.openntf.domino.Document; import org.openntf.domino.Item; import org.openntf.domino.Session; import org.openntf.domino.ext.Session.Fixes; import org.openntf.domino.thread.DominoThread; import org.openntf.domino.utils.Factory; import org.openntf.domino.utils.Factory.SessionType; @SuppressWarnings("unused") public class DominoAutoboxTest implements Runnable { public static void main(final String[] args) { DominoThread thread = new DominoThread(new DominoAutoboxTest(), "Index Thread"); thread.start(); } public DominoAutoboxTest() { // whatever you might want to do in your constructor, but stay away from Domino objects } @SuppressWarnings("unchecked") @Override public void run() { Session session = Factory.getSession(SessionType.CURRENT); session.setConvertMIME(false); session.setFixEnable(Fixes.APPEND_ITEM_VALUE, true); session.setFixEnable(Fixes.FORCE_JAVA_DATES, true); session.setFixEnable(Fixes.CREATE_DB, true); Database db = session.getDatabase("", "log.nsf"); Document doc = db.createDocument(); doc.replaceItemValue("form", "Events"); doc.replaceItemValue("Server", "Test"); Map<String, String> map = new HashMap<String, String>(); map.put("me", "us"); map.put("myself", "ourselves"); map.put("I", "we"); doc.replaceItemValue("map", map); doc.save(); String unid = doc.getUniversalID(); doc = null; Document docJunk = db.createDocument(); doc = db.getDocumentByUNID(unid); System.out.println(doc.getNoteID()); Object o = doc.getItemValue("map", Map.class); System.out.println(o.getClass().getName()); Map<String, String> remap = (Map<String, String>) o; for (String key : remap.keySet()) { System.out.println(key + ":" + remap.get(key)); } session.setConvertMIME(true); doc = null; docJunk = db.createDocument(); doc = db.getDocumentByUNID(unid); Vector<Item> items = doc.getItems(); for (Item item : items) { if (item.getName().equalsIgnoreCase("map")) { System.out.println("map: " + item.getTypeEx()); System.out.println("map value: " + item.getText()); } } doc.replaceItemValue("foo", "bar"); doc.save(); session.setConvertMIME(false); o = null; doc = null; docJunk = db.createDocument(); doc = db.getDocumentByUNID(unid); o = doc.getItemValue("map", Map.class); System.out.println(o.getClass().getName()); remap = (Map<String, String>) o; for (String key : remap.keySet()) { System.out.println(key + ":" + remap.get(key)); } System.out.println("Complete"); } }