code: private TileResultSet retrieveSortedTileResults(
  			BoundingBox projectedRequestBoundingBox, TileMatrix tileMatrix) {
  
  		TileResultSet tileResults = null;
  
  		if (tileMatrix != null) {
  
  			// Get the tile grid
  			TileGrid tileGrid = TileBoundingBoxUtils.getTileGrid(
  					coverageBoundingBox, tileMatrix.getMatrixWidth(),
  					tileMatrix.getMatrixHeight(), projectedRequestBoundingBox);
  
  			// Query for matching tiles in the tile grid
  			tileResults = tileDao.queryByTileGrid(tileGrid,
  					tileMatrix.getZoomLevel(), TileTable.COLUMN_TILE_ROW + ","
  							+ TileTable.COLUMN_TILE_COLUMN);
  
  		}
  
  		return tileResults;
  	}
docs: Get the tile row results of coverage data tiles needed to create the
  requested bounding box coverage data, sorted by row and then column
  
  @param projectedRequestBoundingBox
  bounding box projected to the coverage data
  @param tileMatrix
  tile matrix
  @return tile results or null