public final class RasterMapCatalog
extends javax.swing.table.AbstractTableModel
RasterMapEntry
,
Serialized FormModifier and Type | Field and Description |
---|---|
static java.lang.String |
HTTPS_RADAR_WEATHER_PREFIX
Prefix of URLs used to download radar mosaics from US National Weather Service.
|
java.util.ArrayList<RasterMapEntry> |
imageList
Collection of raster images to overlay in the containing RasterMapOverlay.
|
static java.lang.String |
RASTER_MAP_PREFS_NODE
Name of Java Preferences node containing RasterMapEntry persistence information.
|
ReschedulableTimerTask |
WXRASTER_TIMERTASK
TimerTask for reloading updated NWS weather raster.
|
Constructor and Description |
---|
RasterMapCatalog(GeographicalMap geoMap,
RasterMapOverlay rasterMapOverlay)
Create a RasterMapCatalog instance for a given GeographicalMap window's RasterMapOverlay.
|
Modifier and Type | Method and Description |
---|---|
int |
add(RasterMapEntry rme)
Add the specified RasterMapEntry to the persisted list of raster map overlays.
|
void |
deleteRow(int rowIndex)
Delete an entire RasterMapEntry from the catalog.
|
java.lang.Class<?> |
getColumnClass(int columnIndex)
Returns the data Class for the specified column.
|
int |
getColumnCount()
Returns the number of columns in the model.
|
java.lang.String |
getColumnName(int column)
Returns the localized name for the column.
|
int |
getRowCount()
Returns the number of rows in the model.
|
java.lang.Object |
getValueAt(int rowIndex,
int columnIndex)
Returns the value for the cell at
columnIndex and
rowIndex . |
boolean |
isCellEditable(int rowIndex,
int columnIndex)
Indicate which columns can be edited.
|
static java.util.Date |
loadReloadableWebMap(RasterMapEntry rme,
long now)
Load a fresh gzipped raster GeoTIFF image from a web source.
|
void |
remove(int index)
Remove the indexed record from the persisted RasterMapCatalog.
|
void |
setValueAt(java.lang.Object aValue,
int rowIndex,
int columnIndex)
Store a new value for an editable table cell.
|
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener
public static final java.lang.String HTTPS_RADAR_WEATHER_PREFIX
public static final java.lang.String RASTER_MAP_PREFS_NODE
public java.util.ArrayList<RasterMapEntry> imageList
public transient ReschedulableTimerTask WXRASTER_TIMERTASK
public RasterMapCatalog(GeographicalMap geoMap, RasterMapOverlay rasterMapOverlay)
geoMap
- GeographicalMap using this instance of RasterMapCatalograsterMapOverlay
- RasterMapOverlay using this instance of RasterMapCatalogpublic static java.util.Date loadReloadableWebMap(RasterMapEntry rme, long now) throws java.io.IOException
rme
- RasterMapEntry for the web-sourced overlay layernow
- current time in milliseconds since Jan 1970 UTCjava.io.IOException
- if image file cannot be downloadedpublic int add(RasterMapEntry rme)
rme
- RasterMapEntry to addpublic void remove(int index)
index
- zero-based int index of the record to removepublic java.lang.Class<?> getColumnClass(int columnIndex)
getColumnClass
in interface javax.swing.table.TableModel
getColumnClass
in class javax.swing.table.AbstractTableModel
columnIndex
- the column being queriedpublic java.lang.String getColumnName(int column)
getColumnName
in interface javax.swing.table.TableModel
getColumnName
in class javax.swing.table.AbstractTableModel
column
- the column being queriedcolumn
public boolean isCellEditable(int rowIndex, int columnIndex)
isCellEditable
in interface javax.swing.table.TableModel
isCellEditable
in class javax.swing.table.AbstractTableModel
rowIndex
- the row being queriedcolumnIndex
- the column being queriedpublic void setValueAt(java.lang.Object aValue, int rowIndex, int columnIndex)
setValueAt
in interface javax.swing.table.TableModel
setValueAt
in class javax.swing.table.AbstractTableModel
aValue
- value to assign to cellrowIndex
- row of cellcolumnIndex
- column of cellpublic int getColumnCount()
getRowCount()
public int getRowCount()
JTable
uses this method to determine how many rows it
should display. This method should be quick, as it
is called frequently during rendering.getColumnCount()
public java.lang.Object getValueAt(int rowIndex, int columnIndex)
columnIndex
and
rowIndex
.rowIndex
- the row whose value is to be queriedcolumnIndex
- the column whose value is to be queriedpublic void deleteRow(int rowIndex)
rowIndex
- zero-based row index into the catalog table model