Issue #1821 Optimize FFG version query.

Former-commit-id: 3e9651bab3 [formerly 54b9d0d949] [formerly 640618cf830508cfe1f84fbd9c831e0a034aa074 [formerly 3049bc94c9]] [formerly 7bde9f6d32 [formerly 3049bc94c9 [formerly 6d75a1b79cfd46de69db2d3cb452711f3ea1254d]]]
Former-commit-id: 7bde9f6d32
Former-commit-id: 8f9afd15bfe68ce83ae16aab8d6d25efc8daf0f1 [formerly 39259b1b0b]
Former-commit-id: ae27d029a1
This commit is contained in:
Ben Steffensmeier 2013-03-26 10:37:14 -05:00
parent 1314976753
commit 13c24c63d0

View file

@ -41,6 +41,7 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 8/31/10 5875 bphillip Initial Creation * 8/31/10 5875 bphillip Initial Creation
* Mar 26, 2013 1821 bsteffen Optimize FFG version query.
* *
* </pre> * </pre>
* *
@ -61,6 +62,15 @@ public class FFGGribPostProcessor implements IDecoderPostProcessor {
DatabaseQuery query = new DatabaseQuery(GridRecord.class); DatabaseQuery query = new DatabaseQuery(GridRecord.class);
query.addReturnedField(GridConstants.SECONDARY_ID); query.addReturnedField(GridConstants.SECONDARY_ID);
// The dataURI constraint does the final selection but the other
// constraints help the db optimize efficiently.
query.addQueryParam(GridConstants.DATASET_ID, record.getDatasetId());
query.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, record
.getParameter().getAbbreviation());
query.addQueryParam(GridConstants.LEVEL_ID, record.getLevel()
.getId());
query.addQueryParam(GridConstants.LOCATION_ID, record.getLocation()
.getId());
query.addQueryParam("dataURI", record.getDataURI(), query.addQueryParam("dataURI", record.getDataURI(),
QueryOperand.LIKE); QueryOperand.LIKE);
List<?> result = gribDao.queryByCriteria(query); List<?> result = gribDao.queryByCriteria(query);