/** * Wrap. * * @param entry the entry * @return the view entry */ public static ViewEntry wrap(final lotus.domino.ViewEntry entry) { try { Object parent = entry.getParent(); lotus.domino.View view; if (parent instanceof lotus.domino.ViewEntryCollection) { view = ((lotus.domino.ViewEntryCollection) parent).getParent(); } else if (parent instanceof lotus.domino.ViewNavigator) { view = ((lotus.domino.ViewNavigator) parent).getParentView(); } else { view = (lotus.domino.View) parent; } lotus.domino.Database db = view.getParent(); Session session = Factory.fromLotus(db.getParent(), Session.class, null); Database wrappedDB = Factory.fromLotus(db, Database.class, session); View wrappedView = Factory.fromLotus(view, View.class, wrappedDB); if (parent instanceof lotus.domino.ViewEntryCollection) { ViewEntryCollection vec = Factory.fromLotus((lotus.domino.Base) parent, ViewEntryCollection.class, wrappedView); return Factory.fromLotus(entry, ViewEntry.class, vec); } else if (parent instanceof lotus.domino.ViewNavigator) { ViewNavigator vnav = Factory.fromLotus((lotus.domino.Base) parent, ViewNavigator.class, wrappedView); return Factory.fromLotus(entry, ViewEntry.class, vnav); } else { return Factory.fromLotus(entry, ViewEntry.class, wrappedView); } } catch (lotus.domino.NotesException ne) { return null; } }