/** @return Return all the MonitorComposites passed into the constructor as one List */ public List<Monitor> toList() { List<Monitor> list = new ArrayList<Monitor>(); while (hasNext()) { Monitor mon = next(); if (!currentMonitorComposite.isLocalInstance()) { // done so monitors can be identified by instance when viewed in jamonadmin.jsp // Don't want to do this for the local instance as it is not needed as it is the default and // it is the only one that is not a copy/clone of the original. mon.getMonKey().setInstanceName(currentMonitorComposite.getInstanceName()); } list.add(mon); } return list; } }
/** * Combine MonitorComposites 1 MonitorComposite. * * @param monitorCompositeList * @return MonitorComposite */ public static MonitorComposite combine(Collection<MonitorComposite> monitorCompositeList) { Date previousDate = null; Date finalDate = null; // assign the date of all the results as the most recent of all monitorComposite dates Iterator<MonitorComposite> iter = monitorCompositeList.iterator(); // note 2 lists are used instead of a Map so if 2 instanceNames are the same (say 'local') each of them can be // retained. List<MonitorComposite> monitorCompositeResultsList = new ArrayList<MonitorComposite>(); List<String> instanceNameList = new ArrayList<String>(); while (iter.hasNext()) { MonitorComposite mc = iter.next(); instanceNameList.add(mc.getInstanceName()); monitorCompositeResultsList.add(mc); if (previousDate == null || mc.getDateCreated().after(previousDate)) { finalDate = mc.getDateCreated(); } previousDate = mc.getDateCreated(); } MonitorComposite mc = new MonitorCompositeIterator(monitorCompositeResultsList).toMonitorComposite().setDateCreated(finalDate); return mc.setInstanceName(Misc.getAsString(instanceNameList)); }
public MonitorComposite filterByUnits(String units) { return new MonitorComposite(getMonitorsWithUnits(units)).setInstanceName(getInstanceName()).setDateCreated(getDateCreated()); }