diff --git a/cave/com.raytheon.viz.core/src/com/raytheon/viz/core/rsc/VizGroupResourceData.java b/cave/com.raytheon.viz.core/src/com/raytheon/viz/core/rsc/VizGroupResourceData.java index 91c3a17caa..8a0828a0d5 100644 --- a/cave/com.raytheon.viz.core/src/com/raytheon/viz/core/rsc/VizGroupResourceData.java +++ b/cave/com.raytheon.viz.core/src/com/raytheon/viz/core/rsc/VizGroupResourceData.java @@ -53,7 +53,8 @@ import com.raytheon.uf.viz.core.rsc.ResourceList; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jan 28, 2011 mpduff Initial creation + * Jan 28, 2011 mpduff Initial creation. + * Sep 11, 2012 1162 mpduff Made mergeMetaDataMap method public. * * * @@ -117,7 +118,7 @@ public class VizGroupResourceData extends AbstractRequestableResourceData return resource; } - private void mergeMetadataMap() { + public void mergeMetadataMap() { if ((this.metadataMap == null) || this.metadataMap.isEmpty()) { this.metadataMap = new HashMap(); diff --git a/cave/com.raytheon.viz.grid/src/com/raytheon/viz/grid/rsc/FfgVizGroupResourceData.java b/cave/com.raytheon.viz.grid/src/com/raytheon/viz/grid/rsc/FfgVizGroupResourceData.java index 0c5b2634dd..8ef549e06b 100644 --- a/cave/com.raytheon.viz.grid/src/com/raytheon/viz/grid/rsc/FfgVizGroupResourceData.java +++ b/cave/com.raytheon.viz.grid/src/com/raytheon/viz/grid/rsc/FfgVizGroupResourceData.java @@ -19,6 +19,19 @@ **/ package com.raytheon.viz.grid.rsc; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Set; + +import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.viz.core.drawables.ResourcePair; +import com.raytheon.uf.viz.core.exception.VizException; +import com.raytheon.uf.viz.core.rsc.AbstractRequestableResourceData; import com.raytheon.viz.core.rsc.VizGroupResourceData; @@ -31,7 +44,8 @@ import com.raytheon.viz.core.rsc.VizGroupResourceData; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jan 28, 2011 mpduff Initial creation + * Jan 28, 2011 mpduff Initial creation. + * Sep 11, 2012 1162 mpduff Override getAvailableTimes method. * * * @@ -44,4 +58,31 @@ public class FfgVizGroupResourceData extends VizGroupResourceData { // Make name generator here nameGenerator = new FfgGridNameGenerator(); } + + @Override + public DataTime[] getAvailableTimes() throws VizException { + Set baseTimes = new HashSet(); + Iterator rpIter = resourceList.iterator(); + super.mergeMetadataMap(); + + List availableTimes = new ArrayList(); + + while (rpIter.hasNext()) { + ResourcePair rp = rpIter.next(); + + if (rp.getResourceData() instanceof AbstractRequestableResourceData) { + AbstractRequestableResourceData arrd = (AbstractRequestableResourceData) rp + .getResourceData(); + Collection times = Arrays.asList(arrd + .getAvailableTimes()); + + baseTimes.addAll(times); + } + } + + availableTimes.addAll(baseTimes); + Collections.sort(availableTimes); + + return availableTimes.toArray(new DataTime[availableTimes.size()]); + } }