Issue #189 fix for derived parameters when requested times are not available

Former-commit-id: e7f9b21dd2 [formerly 452e0d17ff] [formerly 1aac04a5c0] [formerly 2baae0a89f [formerly 1aac04a5c0 [formerly 09d7b089602ac73368202252eaf90f763c0650f4]]]
Former-commit-id: 2baae0a89f
Former-commit-id: 24789f5a6a6569d4ca8bb2a8ec60c2cd110fe5de [formerly e5282e3d10]
Former-commit-id: e50f7f2f26
This commit is contained in:
Ben Steffensmeier 2012-10-18 15:49:31 -05:00
parent 17d8918df8
commit 2171179d33
2 changed files with 8 additions and 0 deletions

View file

@ -20,6 +20,7 @@
package com.raytheon.uf.viz.derivparam.inv;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@ -115,6 +116,10 @@ public class MetadataContainer {
private Set<AbstractRequestableData> getData(AbstractRequestableNode node,
Set<TimeAndSpace> availability, boolean doRequests)
throws VizException {
if (availability == null || availability.isEmpty()) {
return Collections.emptySet();
}
if (dataCache.containsKey(node)) {
return dataCache.get(node);
}

View file

@ -308,6 +308,9 @@ public class DerivedLevelNode extends AbstractDerivedDataNode {
Map<DerivParamField, Set<TimeAndSpace>> availCache = this.availCache;
availability = matcher.match(availability, availCache.get(null))
.keySet();
if (availability.isEmpty()) {
return Collections.emptySet();
}
Map<TimeAndSpace, DerivedParameterRequest> mapOfRequests = new HashMap<TimeAndSpace, DerivedParameterRequest>(
availability.size());
List<DerivedRequestableData> initResponses = new ArrayList<DerivedRequestableData>(