edu.wisc.ssec.mcidasv.chooser.adde
Class AddePointDataChooser

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by ucar.unidata.ui.ChooserPanel
                      extended by ucar.unidata.idv.chooser.IdvChooser
                          extended by ucar.unidata.idv.chooser.TimesChooser
                              extended by ucar.unidata.idv.chooser.adde.AddeChooser
                                  extended by edu.wisc.ssec.mcidasv.chooser.adde.AddeChooser
                                      extended by edu.wisc.ssec.mcidasv.chooser.adde.AddePointDataChooser
All Implemented Interfaces:
Constants, ActionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, IdvConstants
Direct Known Subclasses:
AddeLightningDataChooser, AddeProfilerDataChooser, AddeRaobChooser

public class AddePointDataChooser
extends AddeChooser

Selection widget for ADDE point data

Version:
$Revision$ $Date$
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class edu.wisc.ssec.mcidasv.chooser.adde.AddeChooser
AddeChooser.GroupComparator, AddeChooser.ServerComparator
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  String archiveDay
          archive date
protected  JButton archiveDayBtn
           
private  SimpleDateFormat archiveDayFormatter
          archive date formatter
protected  JLabel archiveDayLabel
          archive day button and label
static String DATA_TYPE
          Property for the data type.
static String DATASET_NAME_KEY
          Property for the dataset name key.
protected  String descriptorsAllowPrefix
          allowed descriptor prefix
protected  boolean firstTime
           
private  boolean gotObs
          Possibly ask for times a second time if the first sampling doesn't get any
private static org.slf4j.Logger logger
          Logging object.
private  Object MUTEX
          locking mutex
private  Object readTimesTask
          Are we currently reading times
private  float relativeTimeIncrement
          the relative time increment
protected  JComboBox relTimeIncBox
           
protected  JLabel relTimeIncLabel
          box and label for the relative time
protected  boolean retry
           
private  StationModelManager stationModelManager
          station model manager
protected  boolean tryWithoutSampling
           
 
Fields inherited from class edu.wisc.ssec.mcidasv.chooser.adde.AddeChooser
allServersFlag, cb, CMD_MANAGER, commentList, compsThatNeedDescriptor, connectButton, DESCRIPTOR_TABLE, descriptorComboBox, descriptorLabel, descriptorList, descriptorNames, descriptorTable, ignoreDescriptorChange, LABEL_SELECT, manageButton, nameSeparator, parameterButton, publicButton, restoreElement, separator, serverManager
 
Fields inherited from class ucar.unidata.idv.chooser.adde.AddeChooser
CMD_CONNECT, DATA_NAME_KEY, DEFAULT_COMPRESS, DEFAULT_DEBUG, DEFAULT_PORT, DEFAULT_PROJ, DEFAULT_USER, DEFAULT_VERSION, FILE_PUBLICSRV, groupSelector, ignoreStateChangedEvents, LABEL_DATAINTERVAL, LABEL_DATASET, LABEL_DATATYPE, LABEL_SERVER, LABEL_STATIONS, LABEL_TIMES, MSG_TIMES, NEW_SELECTION, passwords, PROP_ADDEPORT, PROP_COMPRESS, PROP_CYD, PROP_DATANAME, PROP_DAY, PROP_DEBUG, PROP_DESCR, PROP_FILE, PROP_GROUP, PROP_HMS, PROP_NUM, PROP_PARAM, PROP_PORT, PROP_POS, PROP_PROJ, PROP_SELECT, PROP_TIME, PROP_USER, PROP_VERSION, REQ_DATASETINFO, REQ_IMAGEDATA, REQ_IMAGEDIR, REQ_POINTDATA, REQ_TEXT, serverTimeStamp, STATE_CONNECTED, STATE_CONNECTING, STATE_UNCONNECTED, STATUS_ERROR, STATUS_NEEDSLOGIN, STATUS_OK, WIDGET_MUTEX
 
Fields inherited from class ucar.unidata.idv.chooser.TimesChooser
drivercbx, selectedDriver, timesComponents, timesContainer
 
Fields inherited from class ucar.unidata.idv.chooser.IdvChooser
ATTR_ID, ATTR_SHOWDETAILS, dirHistoryCbx, ignoreDirHistory, NULL_PROPERTIES, NULL_STRING, PREF_ADDESERVERS, PREF_CATALOGLIST, PREF_DEFAULTDIR, PREF_IMAGEDESCLIST, PREF_POLLINGINFO, PREF_RADARDESCLIST, PREF_TDSPOINTOBSERVER, PREF_TDSRADARSERVER, PROP_CHOOSER_MAPS, PROP_CHOOSER_PROJECTION_BOUNDS, PROP_CHOOSERCLASSNAME, PROP_STATUS_BACKGROUND, PROP_STATUS_FOREGROUND, PROP_STATUS_TEMPLATE, stationMap
 
Fields inherited from class ucar.unidata.ui.ChooserPanel
cancelButton, CMD_LOAD, contents, GRID_INSETS, GRID_SPACING, GRID_SPACING_H, GRID_SPACING_V, haveData, helpPath, loadButton, MAP_COLOR, simpleMode
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface edu.wisc.ssec.mcidasv.Constants
BLANK_COMP_GROUP, COMP_MONITORPANEL, DATASELECTOR_NAME, DEFAULT_DOCPATH, DEFAULT_SERVERSTATE, DISPLAY_NAME, DISPLAYCONTROLLER_NAME, ELEMENT_DOUBLE_WIDTH, ELEMENT_DOUBLEDOUBLE_WIDTH, ELEMENT_HALF_WIDTH, ELEMENT_ONEHALF_WIDTH, ELEMENT_WIDTH, FILTER_MCV, FILTER_MCVMCVZ, FILTER_MCVZ, GAP_RELATED, GAP_UNRELATED, HOMEPAGE_URL, ICON_ACCEPT_SMALL, ICON_ADD_SMALL, ICON_APPLY_SMALL, ICON_BACKGROUND_SMALL, ICON_CANCEL, ICON_CANCEL_SMALL, ICON_CHECKVERSION_SMALL, ICON_COLORTABLE_SMALL, ICON_CONNECT_SMALL, ICON_CONSOLE_SMALL, ICON_DATAEXPLORER_SMALL, ICON_DEFAULTLAYOUT_SMALL, ICON_DEFAULTLAYOUTADD_SMALL, ICON_DEFAULTLAYOUTDELETE_SMALL, ICON_DELETE_SMALL, ICON_DISCONNECT_SMALL, ICON_ERROR_SMALL, ICON_EXCLAMATION_SMALL, ICON_FAVORITE_SMALL, ICON_FAVORITEMANAGE_SMALL, ICON_FAVORITESAVE_SMALL, ICON_FORUMS_SMALL, ICON_GETTINGSTARTED_SMALL, ICON_HELP, ICON_HELP_SMALL, ICON_HELPTIPS_SMALL, ICON_INFORMATION_SMALL, ICON_LAYOUTEDIT_SMALL, ICON_LOCALDATA_SMALL, ICON_LOCATION_SMALL, ICON_MCIDASV_SMALL, ICON_NEWTAB_SMALL, ICON_NEWWINDOW_SMALL, ICON_NEXT_SMALL, ICON_NOTE_SMALL, ICON_OPEN, ICON_OPEN_SMALL, ICON_PREFERENCES_SMALL, ICON_PREVIOUS_SMALL, ICON_RANDOM_SMALL, ICON_RANGEANDBEARING_SMALL, ICON_REDO_SMALL, ICON_REFRESH, ICON_REFRESH_SMALL, ICON_REMOVE_SMALL, ICON_REMOVEDATA_SMALL, ICON_REMOVELAYERS_SMALL, ICON_REMOVELAYERSDATA_SMALL, ICON_SAVE, ICON_SAVE_SMALL, ICON_SAVEAS_SMALL, ICON_SUPPORT_SMALL, ICON_UNDO_SMALL, ICON_UPDATE, ICON_USERSGUIDE_SMALL, LOCAL_ADDE_PORT, MACRO_BUILDDATE, MACRO_COPYRIGHT_YEAR, MACRO_IDV_VERSION, MACRO_VERSION, MACRO_VISAD_VERSION, MAX_MEMORY_32BIT, MCV_BLUE, MCV_BLUE_DARK, NOTICE_URL, OS_OSX, PANEL_NAME, PREF_AUTO_SAVE_DEFAULT_LAYOUT, PREF_CONFIRM_REMOVE_BOTH, PREF_CONFIRM_REMOVE_DATA, PREF_CONFIRM_REMOVE_LAYERS, PREF_IMAGE_PREVIEW, PREF_LIST_ADDE_SERVERS, PREF_LIST_ADVANCED, PREF_LIST_AVAILABLE_DISPLAYS, PREF_LIST_DATA_CHOOSERS, PREF_LIST_FORMATS_DATA, PREF_LIST_GENERAL, PREF_LIST_LOCAL_ADDE, PREF_LIST_NAV_CONTROLS, PREF_LIST_TOOLBAR, PREF_LIST_VIEW, PREF_OPEN_LIMIT_WIN, PREF_PRERELEASE_CHECK, PREF_SAVE_DASHBOARD_VIZ, PREF_SERVERSTATE, PREF_SYSTEMSERVERSIMG, PREF_TBM_SIZE, PREF_VERSION_CHECK, PRERELEASE_URL, PROP_ABOUTTEXT, PROP_APP_ICON, PROP_BUILD_DATE, PROP_CHAN, PROP_COPYRIGHT_YEAR, PROP_DASHBOARD_BOUNDS, PROP_HOMEPAGE, PROP_SERVERS, PROP_SERVERS_ALL, PROP_SYSMEM, PROP_TABBED_UI, PROP_VERSION_MAJOR, PROP_VERSION_MINOR, PROP_VERSION_RELEASE, PROP_VERSIONFILE, PROP_VISAD_DATE, PROP_VISAD_ORIGINAL, PROP_VISAD_PARSE_FAIL, PROP_VISAD_REVISION, PROP_VP_CATOPEN, PROP_VP_SHOWCATS, PROP_VP_SHOWPOPUP, PROPERTIES_FILE, SCRUB_STRINGS_FILE, SUFFIX_MCV, SUFFIX_MCVZ, USER_DIRECTORY_NAME, VERSION_HANDLER_URL, VERSION_URL
 
Fields inherited from interface ucar.unidata.idv.IdvConstants
ARG_B64BUNDLE, ARG_B64ISL, ARG_BUNDLE, ARG_CATALOG, ARG_CHOOSER, ARG_CLEARDEFAULT, ARG_CODE, ARG_CONNECT, ARG_CURRENTTIME, ARG_DATA, ARG_DEBUG, ARG_DEFAULT, ARG_DISPLAY, ARG_DXML, ARG_FIXEDTIME, ARG_HELP, ARG_IMAGE, ARG_IMAGESERVER, ARG_INSTALLPLUGIN, ARG_ISLFILE, ARG_ISLINTERACTIVE, ARG_LISTRESOURCES, ARG_MAINCLASS, ARG_MOVIE, ARG_MSG_DEBUG, ARG_MSG_RECORD, ARG_NODEFAULT, ARG_NOERRORSINGUI, ARG_NOGUI, ARG_NOONEINSTANCE, ARG_NOPLUGINS, ARG_NOPREF, ARG_ONEINSTANCEPORT, ARG_PLUGIN, ARG_PORT, ARG_PRINTJNLP, ARG_PROPERTIES, ARG_SCRIPT, ARG_SERVER, ARG_SETFILES, ARG_SITEPATH, ARG_TEMPLATE, ARG_TEST, ARG_TESTEVAL, ARG_TRACE, ARG_TRACEONLY, ARG_USERPATH, DEFAULT_DATE_FORMAT, DEFAULT_MAX_PERMGENSIZE, DEFAULT_TIMEZONE, FILTER_CPT, FILTER_ISL, FILTER_JNLP, FILTER_XIDV, FILTER_XIDVZIDV, FILTER_XML, FILTER_ZIDV, ID_COMMANDSTORUN, ID_DATASOURCES, ID_DISPLAYCONTROLS, ID_IDV, ID_JYTHON, ID_MESSAGE, ID_MISCHASHTABLE, ID_NCIDV_VERSION, ID_VERSION, ID_VIEWMANAGERS, ID_WINDOWS, INITIAL_PROBE_EARTHLOCATION, NULL_DATA_SELECTION, NULL_STRING, PREF_ARCHIVEDIR, PREF_ARCHIVENAME, PREF_AUTODISPLAYS_ENABLE, PREF_AUTODISPLAYS_SHOWGUI, PREF_AUTOSELECTDATA, PREF_CACHESIZE, PREF_CONTROLSINTABS, PREF_DATAPREFIX, PREF_DATE_FORMAT, PREF_DISTANCEUNIT, PREF_DOCACHE, PREF_EMBEDDATACHOOSERINDASHBOARD, PREF_EMBEDFIELDSELECTORINDASHBOARD, PREF_EMBEDLEGENDINDASHBOARD, PREF_EMBEDQUICKLINKSINDASHBOARD, PREF_EVENT_KEYBOARDMAP, PREF_EVENT_MOUSEMAP, PREF_EVENT_WHEELMAP, PREF_FAST_RENDER, PREF_FIELD_CACHETHRESHOLD, PREF_FILEREADDIR, PREF_FILEWRITEDIR, PREF_GEOMETRY_BY_REF, PREF_HISTORY, PREF_IMAGE_BY_REF, PREF_LARGE_REMOTE_DATA_WARN, PREF_LASTVERSION, PREF_LATLON_FORMAT, PREF_LEGEND_SHOWICONS, PREF_LOCALE, PREF_LOOKANDFEEL, PREF_MAX_PERMGENSIZE, PREF_MAXIMAGESIZE, PREF_MEMORY, PREF_NPOT_IMAGE, PREF_OPEN_ASK, PREF_OPEN_MERGE, PREF_OPEN_REMOVE, PREF_PROJ_LIST, PREF_SAMPLINGMODE, PREF_SHOWCONTROLWINDOW, PREF_SHOWDASHBOARD, PREF_SHOWDECODEDIALOG, PREF_SHOWHIDDENFILES, PREF_SHOWQUITCONFIRM, PREF_SITEPATH, PREF_THREADS_DATA, PREF_THREADS_RENDER, PREF_TIMEZONE, PREF_VERTICALCS, PREF_VERTICALUNIT, PREF_WINDOW_SHOWTOOLBAR, PREF_ZIDV_ASK, PREF_ZIDV_DIRECTORY, PREF_ZIDV_SAVETOTMP, PROP_3DMODE, PROP_APPRESOURCEPATH, PROP_CHOOSERS, PROP_CHOOSERS_ALL, PROP_CONTROLDESCRIPTORS, PROP_CONTROLDESCRIPTORS_ALL, PROP_DATAHOLDERBOUNDS, PROP_DEFAULTLOCATIONS, PROP_DISPLAYLIST_GROUP, PROP_FIXFILELOCKUP, PROP_JNLPCODEBASE, PROP_JNLPTEMPLATE, PROP_JNLPTITLE, PROP_LOADINGXML, PROP_MAP_GLOBE_LEVEL, PROP_MAP_MAP_LEVEL, PROP_MINIMUMFRAMECYCLETIME, PROP_MONITORPORT, PROP_OLDCONTROLDESCRIPTORS, PROP_ONEINSTANCEPORT, PROP_PREFERENCES, PROP_PROJ_NAME, PROP_RESOURCEFILES, PROP_SHOWCLOCK, PROP_SHOWDASHBOARD, PROP_SHOWDATATREE, PROP_SHOWFORMULAS, PROP_SHOWSPLASH, PROP_SPLASHICON, PROP_UI_DESKTOP, PROP_USE_TIMEDRIVER, PROP_WINDOW_SCREENSIZEOFFSET, PROP_WINDOW_SIZEHEIGHT, PROP_WINDOW_SIZEWIDTH, PROP_WINDOW_USESCREENSIZE, SUFFIX_BAT, SUFFIX_CPT, SUFFIX_ISL, SUFFIX_JNLP, SUFFIX_RBI, SUFFIX_SH, SUFFIX_XIDV, SUFFIX_XML, SUFFIX_ZIDV
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AddePointDataChooser(IdvChooserManager mgr, Element root)
          Create a chooser for Adde POINT data
 
Method Summary
protected  void appendRequestSelectClause(StringBuffer buf)
          Get the select clause for the adde request specific to this type of data.
protected  boolean canReadTimes()
          Check if we are ready to read times
 void doCancel()
          _more_
 void doLoadInThread()
          Load in an ADDE point data set based on the PropertyChangeEvent.
 JComponent doMakeContents()
          Make the UI for this selector.
 JComponent doMakeContents(boolean doesOverride)
           
protected  void enableWidgets()
          Enable or disable the GUI widgets based on what has been selected.
 void getArchiveDay()
          Show the archive dialog.
 String getDataName()
          This allows derived classes to provide their own name for labeling, etc.
 String getDataType()
          Get the data type for this chooser
protected  String getDayTimeSelectString()
          Create the date time selection string for the "select" clause of the ADDE URL.
 String getDescriptorLabel()
          Get the descriptor widget label.
protected  JComponent getExtraTimeComponentAbsolute()
          Get the time popup widget
protected  JComponent getExtraTimeComponentRelative()
          Get the extra time widget, but built in a different way.
protected  String getGroupType()
          get the adde server grup type to use
private  String getJulianDay()
          Get the current Julian day as a String
 float getRelativeTimeIncrement()
          Get the increment between times for relative time requests
 String getRelBoxString()
          Get the string from the relative increment box
protected  float getRelBoxValue()
          Get the value from the relative increment box
 String getRequestUrl()
          Get the request URL
 StationModel getSelectedStationModel()
          Get the selected station model.
protected  String getTimesRequest()
          Get the request string for times particular to this chooser
protected  void handleConnectionError(Exception e)
          Show the given error to the user.
 void handleUpdate()
          Update the widget with the latest data.
protected  boolean haveTimeSelected()
          Are there any times selected.
protected  boolean isProfiler()
          Return true if selected descriptor is for profiler.
protected  boolean isSynoptic()
          Return true if selected descriptor is for SYNOPTIC data.
protected  boolean isUpperAir()
          Return true if selected descriptor is for upper air.
protected  JPanel makeTimesPanel()
          Add the interval selector to the component.
protected  void readDescriptors()
          Generate a list of image descriptors for the descriptor list.
protected  void readFromServer()
          Do server connection stuff... override this with type-specific methods
 void readTimes()
          Read the set of image times available for the current server/group/type This method is a wrapper, setting the wait cursor and wrapping the call to readTimesInner(); in a try/catch block
protected  void readTimesInner()
          Set the list of dates/times based on the image selection
 void setRelativeTimeIncrement(float increment)
          Set the increment between times for relative time requests
 boolean timesOk()
          Do we have times selected.
protected  void updateStatus()
          Update labels, enable widgets, etc.
 
Methods inherited from class edu.wisc.ssec.mcidasv.chooser.adde.AddeChooser
actionPerformed, addDescComp, appendMiscKeyValues, canAccessServer, checkIfServerIsOk, checkTimesLists, clearOnChange, clearParameterSet, connectToServer, containsGroupName, containsServerName, descriptorChanged, doClickLoad, doManager, doParameters, getAccounting, getAccounting, getAccountingInfo, getAddeServer, getDefaultRelativeTimeIndex, getDescriptor, getDescriptorFromSelection, getDescriptorTable, getGroup, getGroup, getLastAddedProj, getLastAddedUser, getNumTimesToSelect, getParameterSetType, getSelectedDescriptor, getSelectorIndex, getServer, getServerSelector, getStateString, handleConnect, handleUnknownDataSetError, haveDescriptorSelected, hideParameterButton, isGroupEditable, isLocalServer, isLocalServer, isSeparator, makeTimesPanel, onServerManagerDataEvent, onServerManagerWindowEvent, resetDescriptorBox, restoreAbsoluteTimes, restoreParameterSet, saveServerState, setAbsoluteTimes, setDescriptors, setHaveData, setInnerPanel, setSelectString, setStatus, showGroups, showParameterButton, showServers, updateGroups, updateServerList, updateServers
 
Methods inherited from class ucar.unidata.idv.chooser.adde.AddeChooser
addServerComp, addTopComponents, addTopComponents, appendKeyValue, canDoCancel, doConnect, doUpdate, getConnectButton, getDataSetName, getGoodToGo, getGroupUrl, getLoadToolTip, getMiscKeyProps, getMiscKeywords, getPort, getState, getUrl, handleConnectFromThread, handleUpdateFromThread, readGroups, readTextLines, removeGroup, removeServer, setGroups, setState
 
Methods inherited from class ucar.unidata.idv.chooser.TimesChooser
absoluteTimesSelectionChanged, addTimeSelectionListener, checkActiveViewWithDriver, clearTimesList, disableTimeWidgets, doLoad, enableAbsoluteTimesList, enableTimeWidgets, getAbsoluteTimes, getAbsoluteTimeSelectMode, getDefaultTimeDriverIndex, getDoAbsoluteTimes, getDoRelativeTimes, getDoTimeDrivers, getExtraAbsoluteTimeComponent, getExtraRelativeTimeComponent, getExtraTimeComponent, getHaveAbsoluteTimesSelected, getRelativeTimeIndices, getRelativeTimesChooser, getRelativeTimesList, getSelectedAbsoluteTimes, getTimeDriverPopupMenu, getTimeDrivers, getTimeLine, getTimesList, haveAnyTimes, makeDatedObjects, makeTimesPanel, makeTimesPanel, makeTimesPanel, popupTimeline, readDrivers, setDoAbsoluteTimes, setDoTimeDrivers, setSelectedAbsoluteTime, setSelectedAbsoluteTime, setSelectedAbsoluteTimes, setSelectedAbsoluteTimes, setSelectedTimes, setTimeDrivers, updateTimeDriver, updatetimeline
 
Methods inherited from class ucar.unidata.idv.chooser.IdvChooser
clearSelectedStations, clearStations, closeChooser, createStationMap, decorateButtons, doClose, errorMessage, getAttribute, getContents, getDataManager, getDataSource, getDataSourceId, getDataSourceId, getDataSourceProperties, getDataSourcesComponent, getDataSourcesComponent, getDataSourcesComponent, getDataSourcesComponent, getDefaultButtons, getDefaultDisplayType, getDefaultMap, getDefaultMaps, getDefaultProjection, getDefaultProjectionRect, getHaveStations, getId, getIdv, getMenuTitle, getPreferenceList, getPreferenceList, getPreferenceList, getPreferenceList, getProperty, getProperty, getPropList, getSelectedStation, getSelectedStations, getShowInMenu, getStationMap, getStatusLabel, getStatusLabelBackground, getStatusLabelForeground, getTitle, getXmlNode, haveStationSelected, init, initChooserPanel, initStationMap, isReloadable, logException, makeDataSource, makeDataSource, makeTimeMenus, newSelectedStations, resetDataSourceId, setDataSource, setDataSourceListener, shouldDoUpdateOnFirstDisplay, showNormalCursor, showWaitCursor, startTask, stopTask, stopTaskAndIsOk, taskOk, userMessage, usingStations
 
Methods inherited from class ucar.unidata.ui.ChooserPanel
addPropertyChangeListener, canDoUpdate, clearWaitCursor, doHelp, firePropertyChange, getButtonLabels, getDefaultButtons, getHaveData, getLoadCommandName, getMessageTemplate, getSimpleMode, getStatusComponent, getUpdateToolTip, padLabel, registerStatusComp, revalidate, setHelpPath, setMessageTemplate, setStatus, showNormalCursor, showWaitCursor
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

private static final org.slf4j.Logger logger
Logging object. Use it!


DATASET_NAME_KEY

public static String DATASET_NAME_KEY
Property for the dataset name key.

See Also:
AddeChooser.getDataSetName()

DATA_TYPE

public static String DATA_TYPE
Property for the data type.


readTimesTask

private Object readTimesTask
Are we currently reading times


relTimeIncLabel

protected JLabel relTimeIncLabel
box and label for the relative time


relTimeIncBox

protected JComboBox relTimeIncBox

relativeTimeIncrement

private float relativeTimeIncrement
the relative time increment


archiveDay

protected String archiveDay
archive date


archiveDayLabel

protected JLabel archiveDayLabel
archive day button and label


archiveDayBtn

protected JButton archiveDayBtn

archiveDayFormatter

private SimpleDateFormat archiveDayFormatter
archive date formatter


stationModelManager

private StationModelManager stationModelManager
station model manager


descriptorsAllowPrefix

protected String descriptorsAllowPrefix
allowed descriptor prefix


firstTime

protected boolean firstTime

retry

protected boolean retry

gotObs

private boolean gotObs
Possibly ask for times a second time if the first sampling doesn't get any


tryWithoutSampling

protected boolean tryWithoutSampling

MUTEX

private final Object MUTEX
locking mutex

Constructor Detail

AddePointDataChooser

public AddePointDataChooser(IdvChooserManager mgr,
                            Element root)
Create a chooser for Adde POINT data

Parameters:
mgr - The chooser manager
root - The chooser.xml node
Method Detail

readFromServer

protected void readFromServer()
Do server connection stuff... override this with type-specific methods

Overrides:
readFromServer in class AddeChooser

readDescriptors

protected void readDescriptors()
Generate a list of image descriptors for the descriptor list.

Overrides:
readDescriptors in class AddeChooser

doLoadInThread

public void doLoadInThread()
Load in an ADDE point data set based on the PropertyChangeEvent.

Overrides:
doLoadInThread in class ChooserPanel

getArchiveDay

public void getArchiveDay()
Show the archive dialog. This method is not meant to be called but is public by reason of implementation (or insanity).


getSelectedStationModel

public StationModel getSelectedStationModel()
Get the selected station model.

Returns:
StationModel to use: defined by defaultModels list in ctor

makeTimesPanel

protected JPanel makeTimesPanel()
Add the interval selector to the component.

Overrides:
makeTimesPanel in class TimesChooser
Returns:
superclass component with extra stuff

getExtraTimeComponentRelative

protected JComponent getExtraTimeComponentRelative()
Get the extra time widget, but built in a different way. Designed to be put into a GroupLayout

Returns:
Extra time widget

getExtraTimeComponentAbsolute

protected JComponent getExtraTimeComponentAbsolute()
Get the time popup widget

Returns:
a widget for selecing the day

getRelBoxValue

protected float getRelBoxValue()
Get the value from the relative increment box

Returns:
the selected value or a default

getRelBoxString

public String getRelBoxString()
Get the string from the relative increment box

Returns:
the selected string or a default

getRequestUrl

public String getRequestUrl()
Get the request URL

Returns:
the request URL

appendRequestSelectClause

protected void appendRequestSelectClause(StringBuffer buf)
Get the select clause for the adde request specific to this type of data.

Parameters:
buf - The buffer to append to

canReadTimes

protected boolean canReadTimes()
Check if we are ready to read times

Returns:
true if times can be read

enableWidgets

protected void enableWidgets()
Enable or disable the GUI widgets based on what has been selected.

Overrides:
enableWidgets in class AddeChooser

timesOk

public boolean timesOk()
Do we have times selected. Either we are doing absolute times and there are some selected in the list. Or we are doing relative times and we have done a connect to the server

Returns:
Do we have times

isSynoptic

protected boolean isSynoptic()
Return true if selected descriptor is for SYNOPTIC data.

Returns:
true iff AddeChooser.getDescriptor() is "SYNOP".

isUpperAir

protected boolean isUpperAir()
Return true if selected descriptor is for upper air.

Returns:
true iff AddeChooser.getDescriptor() is "UPPERMAND".

isProfiler

protected boolean isProfiler()
Return true if selected descriptor is for profiler.

Returns:
true iff AddeChooser.getDescriptor() is "PROF".

handleUpdate

public void handleUpdate()
                  throws Exception
Update the widget with the latest data.

Overrides:
handleUpdate in class AddeChooser
Throws:
Exception - On badness

getTimesRequest

protected String getTimesRequest()
Get the request string for times particular to this chooser

Returns:
request string

getJulianDay

private String getJulianDay()
Get the current Julian day as a String

Returns:
the current day as a string (yyyyDDD)

getDataName

public String getDataName()
This allows derived classes to provide their own name for labeling, etc.

Overrides:
getDataName in class AddeChooser
Returns:
the dataset name

doCancel

public void doCancel()
_more_

Overrides:
doCancel in class IdvChooser

readTimes

public void readTimes()
Read the set of image times available for the current server/group/type This method is a wrapper, setting the wait cursor and wrapping the call to readTimesInner(); in a try/catch block

Overrides:
readTimes in class AddeChooser

readTimesInner

protected void readTimesInner()
Set the list of dates/times based on the image selection


handleConnectionError

protected void handleConnectionError(Exception e)
Show the given error to the user. If it was an Adde exception that was a bad server error then print out a nice message.

Overrides:
handleConnectionError in class AddeChooser
Parameters:
e - The exception

haveTimeSelected

protected boolean haveTimeSelected()
Are there any times selected.

Overrides:
haveTimeSelected in class TimesChooser
Returns:
Any times selected.

getDayTimeSelectString

protected String getDayTimeSelectString()
Create the date time selection string for the "select" clause of the ADDE URL.

Returns:
the select day and time strings

getDataType

public String getDataType()
Get the data type for this chooser

Overrides:
getDataType in class AddeChooser
Returns:
the type

getRelativeTimeIncrement

public float getRelativeTimeIncrement()
Get the increment between times for relative time requests

Overrides:
getRelativeTimeIncrement in class TimesChooser
Returns:
time increment (hours)

setRelativeTimeIncrement

public void setRelativeTimeIncrement(float increment)
Set the increment between times for relative time requests

Parameters:
increment - time increment (hours)

updateStatus

protected void updateStatus()
Update labels, enable widgets, etc.

Overrides:
updateStatus in class AddeChooser

getDescriptorLabel

public String getDescriptorLabel()
Get the descriptor widget label.

Overrides:
getDescriptorLabel in class AddeChooser
Returns:
label for the descriptor widget

getGroupType

protected String getGroupType()
get the adde server grup type to use

Overrides:
getGroupType in class AddeChooser
Returns:
group type

doMakeContents

public JComponent doMakeContents()
Make the UI for this selector.

Overrides:
doMakeContents in class AddeChooser
Returns:
The gui

doMakeContents

public JComponent doMakeContents(boolean doesOverride)