From c770b2bd322c852a75401ad665ab52f59faba7b9 Mon Sep 17 00:00:00 2001 From: Ben Steffensmeier Date: Wed, 16 Jan 2013 10:34:31 -0600 Subject: [PATCH] Issue #1495 update Product Browser to load all ensemble members Former-commit-id: cea067868c4a6eee8ae3322c4b4cbdd20ed9b290 [formerly 3c62be59c86a3e779199a6265e1849f98f01b901] [formerly cea067868c4a6eee8ae3322c4b4cbdd20ed9b290 [formerly 3c62be59c86a3e779199a6265e1849f98f01b901] [formerly 1569f5af5d4a80d00f5bbc0af184882ba0c1ede2 [formerly 2c3ced7beb526f534083ff7b292b7523c76534a9]]] Former-commit-id: 1569f5af5d4a80d00f5bbc0af184882ba0c1ede2 Former-commit-id: ad1ca2feb5e822ffe8f101612a4ce9ce736bc152 [formerly 10575802013f4385810331c265e46fce6fb71e9c] Former-commit-id: 18296e08da84b0e7fc59911df68a3c8502a2ffe5 --- ...questableProductBrowserDataDefinition.java | 12 +++-- .../GridProductBrowserDataDefinition.java | 45 +++++++++++++++++++ 2 files changed, 54 insertions(+), 3 deletions(-) diff --git a/cave/com.raytheon.uf.viz.productbrowser/src/com/raytheon/uf/viz/productbrowser/AbstractRequestableProductBrowserDataDefinition.java b/cave/com.raytheon.uf.viz.productbrowser/src/com/raytheon/uf/viz/productbrowser/AbstractRequestableProductBrowserDataDefinition.java index 4e9b081c05..074c8de473 100644 --- a/cave/com.raytheon.uf.viz.productbrowser/src/com/raytheon/uf/viz/productbrowser/AbstractRequestableProductBrowserDataDefinition.java +++ b/cave/com.raytheon.uf.viz.productbrowser/src/com/raytheon/uf/viz/productbrowser/AbstractRequestableProductBrowserDataDefinition.java @@ -20,6 +20,7 @@ package com.raytheon.uf.viz.productbrowser; * further licensing information. **/ +import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -198,12 +199,15 @@ public abstract class AbstractRequestableProductBrowserDataDefinition pairs) { // retrieves the correct editor getEditor(); IDisplayPaneContainer container = getEditor(); @@ -213,7 +217,9 @@ public abstract class AbstractRequestableProductBrowserDataDefinition parameters = getProductParameters( + selection, order); + List ensembles = null; + try { + ensembles = inventory.getEnsembles(parameters); + } catch (VizException e) { + statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), e); + } + if (ensembles != null && ensembles.size() > 1) { + Collections.sort(ensembles); + List pairs = new ArrayList(); + for (String ensemble : ensembles) { + ResourcePair pair = new ResourcePair(); + resourceData = getResourceData(); + HashMap newParameters = new HashMap( + parameters); + newParameters.put(GridConstants.ENSEMBLE_ID, + new RequestConstraint(ensemble)); + resourceData.setMetadataMap(newParameters); + pair.setResourceData(resourceData); + pair.setLoadProperties(loadProperties); + pair.setProperties(new ResourceProperties()); + pairs.add(pair); + } + constructResource(pairs); + } else { + resourceData = getResourceData(); + resourceData.setMetadataMap(parameters); + constructResource(); + } + } + @Override protected String[] queryData(String param, HashMap queryList) {