/** CAUTION: Decompiled by hand. */ protected boolean update() { try { String s = "SELECT * FROM Exchange_Mailbox"; Vector vector = executeQuery(s); if (vector == null) { return false; } for (int i = 0; i < vector.size(); i++) { Map map = (Map) vector.elementAt(i); Date date = WMIUtils.makeJavaDateFromWMIDate((String) map.get("LastLogonTime")); if (date != null) { map.put("JavaLastLogonTime", date); } date = WMIUtils.makeJavaDateFromWMIDate((String) map.get("LastLogoffTime")); if (date != null) { map.put("JavaLastLogoffTime", date); } } Document document = createNewDocument("Exchange Mailbox Statistics"); showNotAccessedInNDays(vector, document); showOverLimitMailboxes(vector, document); showTopNMailboxesInSize(vector, document); saveDocument(document); setProperty(pStateString, "OK"); setProperty(pStatus, "OK"); return true; } catch (Exception e) { setProperty(pNoData, "n/a"); setProperty(pStatus, "error"); setProperty(pStateString, e.getMessage()); return false; } }
private void showNotAccessedInNDays(Vector vector, Document document) { int i = getPropertyAsInteger(pNotAccessedN); if (i > 0) { Vector vector1 = new Vector(); GregorianCalendar gregoriancalendar = new GregorianCalendar(); gregoriancalendar.setTime(new Date()); gregoriancalendar.add(6, -i); Date date = gregoriancalendar.getTime(); for (int j = 0; j < vector.size(); j++) { Map map = (Map) vector.elementAt(j); Date date1 = (Date) map.get("JavaLastLogoffTime"); if (date1 == null || date1.getTime() >= date.getTime()) { continue; } Vector vector2 = new Vector(); vector1.addElement(vector2); vector2.addElement(new Pair("Mailbox", map.get("MailboxDisplayName"))); synchronized (mDisplayDateFormat) { vector2.addElement(new Pair("Last Logoff Time", mDisplayDateFormat.format(date1))); } } addListContent(vector1, "Mailboxes Not Accessed in " + i + " Days", document); } }
private void showOverLimitMailboxes(Vector vector, Document document) { Vector vector1 = new Vector(); for (int i = 0; i < vector.size(); i++) { Map map = (Map) vector.elementAt(i); String s = (String) map.get("StorageLimitInfo"); if (s.equals(EXCH_ISSUE_WARNING) || s.equals(EXCH_PROHIBIT_SEND)) { Vector vector2 = new Vector(); vector1.addElement(vector2); vector2.addElement(new Pair("Mailbox", map.get("MailboxDisplayName"))); } } addListContent(vector1, "Over Limit Mailboxes", document); }
private void showTopNMailboxesInSize(Vector vector, Document document) { int i = getPropertyAsInteger(pTopSizeN); if (i > 0) { Object aobj[] = vector.toArray(); Arrays.sort(aobj, new MBSizeCompare()); Vector vector1 = new Vector(); for (int j = 0; j < i && j < aobj.length; j++) { Vector vector2 = new Vector(); vector1.addElement(vector2); Map map = (Map) aobj[j]; vector2.addElement(new Pair("Mailbox", map.get("MailboxDisplayName"))); vector2.addElement(new Pair("Size", map.get("Size"))); } addListContent(vector1, "Top " + i + " Mailboxes in Size", document); } }
public int compare(Object obj, Object obj1) { Map map = (Map) obj; Map map1 = (Map) obj1; String s = (String) map.get("Size"); String s1 = (String) map1.get("Size"); int i = 0; int j = 0; try { i = Integer.parseInt(s); } catch (Exception exception) { } try { j = Integer.parseInt(s1); } catch (Exception exception1) { } if (i < j) { return 1; } return i <= j ? 0 : -1; }