Omaha #4756 Fixed bugs found during multiple guidance config/development

Change-Id: Iabcf8bb0dc6f40441e0f9bc12d23d8f75d6d5e57

Former-commit-id: 75672dff530a3db8c50809e8c53c6026bc010fd6
This commit is contained in:
Dave Hladky 2015-09-18 15:36:55 -05:00
parent a32946bb28
commit 6d613042c1
2 changed files with 40 additions and 25 deletions

View file

@ -98,6 +98,7 @@ import com.vividsolutions.jts.io.WKTWriter;
* Nov 18, 2014 3831 dhladky StatusHandler logging. Proper list sizing.
* Jul 13, 2015 4500 rjpeter Fix SQL Injection concerns.
* Aug 08, 2015 4722 dhladky Added Grid coverage and parsing methods.
* Sep 17, 2015 4756 dhladky Multiple guidance source bugs.
* </pre>
*
* @author dhladky
@ -988,7 +989,13 @@ public class FFMPUtils {
try {
DbQueryResponse response = (DbQueryResponse) RequestRouter
.route(request);
return response.getEntityObjects(GridRecord.class)[0].getDataURI();
GridRecord[] grids = response.getEntityObjects(GridRecord.class);
if (grids != null && grids.length > 0) {
return grids[0].getDataURI();
} else {
statusHandler.warn(
"No data available for this FFG Request: " + request.toString());
}
} catch (Exception e) {
statusHandler.error(
"Error querying FFG Data URIS: " + request.toString(), e);

View file

@ -56,6 +56,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
* Aug 18, 2013 1742 dhladky Concurrent mod exception on update fixed
* Oct 02, 2013 2361 njensen Use JAXBManager for XML
* Aug 15, 2015 4722 dhladky Added new types to be used for new Guidance sources, etc
* Sep 17, 2015 4756 dhladky Fixed bugs for multiple guidance sources.
*
* </pre>
*
@ -230,10 +231,11 @@ public class FFMPSourceConfigurationManager implements
public List<String> getVirtuals() {
if (virtuals == null) {
virtuals = new ArrayList<String>();
}
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.GAGE.getSourceType())) {
virtuals.add(xml.getSourceName());
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.GAGE.getSourceType())) {
virtuals.add(xml.getSourceName());
}
}
}
return virtuals;
@ -247,11 +249,12 @@ public class FFMPSourceConfigurationManager implements
public ArrayList<String> getGuidances() {
if (guidances == null) {
guidances = new ArrayList<String>();
}
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType()
.equals(SOURCE_TYPE.GUIDANCE.getSourceType())) {
guidances.add(xml.getSourceName());
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(
SOURCE_TYPE.GUIDANCE.getSourceType())) {
guidances.add(xml.getSourceName());
}
}
}
return guidances;
@ -285,30 +288,33 @@ public class FFMPSourceConfigurationManager implements
public List<String> getQPESources() {
if (accumulators == null) {
accumulators = new ArrayList<String>();
}
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.QPE.getSourceType())) {
accumulators.add(xml.getSourceName());
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.QPE.getSourceType())) {
accumulators.add(xml.getSourceName());
}
}
}
return accumulators;
}
/**
* Get the QPE sources
* Get the Rate sources
*
* @return
*/
public List<String> getRates() {
if (rates == null) {
rates = new ArrayList<String>();
}
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.RATE.getSourceType())) {
rates.add(xml.getSourceName());
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType()
.equals(SOURCE_TYPE.RATE.getSourceType())) {
rates.add(xml.getSourceName());
}
}
}
return accumulators;
return rates;
}
/**
@ -319,10 +325,11 @@ public class FFMPSourceConfigurationManager implements
public ArrayList<String> getQPFSources() {
if (forecasts == null) {
forecasts = new ArrayList<String>();
}
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.QPF.getSourceType())) {
forecasts.add(xml.getSourceName());
for (SourceXML xml : configXml.getSource()) {
if (xml.getSourceType().equals(SOURCE_TYPE.QPF.getSourceType())) {
forecasts.add(xml.getSourceName());
}
}
}
return forecasts;
@ -337,7 +344,8 @@ public class FFMPSourceConfigurationManager implements
*/
public enum DATA_TYPE {
RADAR("RADAR"), XMRG("XMRG"), GRID("GRID"), PDO("PDO"), DB("DB"), NETCDF("NETCDF");
RADAR("RADAR"), XMRG("XMRG"), GRID("GRID"), PDO("PDO"), DB("DB"), NETCDF(
"NETCDF");
private final String dataType;