Omaha #3873 Abstracted dialogTime and monitor event updates to dialogTime.

Change-Id: I961f92af7066bc3cd66871c1f496eb052070412a

Former-commit-id: 22235c6bed9cca54f5c4c4976fe480e9f2f8ffc0
This commit is contained in:
Dave Hladky 2015-12-17 10:12:36 -06:00
parent 908b93cac5
commit fb6fc372c4
8 changed files with 51 additions and 93 deletions

View file

@ -88,6 +88,7 @@ import com.vividsolutions.jts.geom.Geometry;
* Sep 23, 2014 3356 njensen Remove unnecessary import
* Mar 09, 2014 3888 dhladky Stopped processing when dialogs are null or disposed.
* Sep 18, 2015 3873 skorolev Removed common definitions. Replaced deprecated NotificationMessage.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
*
* </pre>
@ -118,8 +119,6 @@ public class FogMonitor extends ObsMonitor implements IFogResourceListener {
/** data holder for FOG ALG data **/
private SortedMap<Date, Map<String, FOG_THREAT>> algorithmData = null;
private Date dialogTime = null;
/** list of coordinates for each zone **/
private Map<String, Geometry> zoneGeometries = null;
@ -514,26 +513,6 @@ public class FogMonitor extends ObsMonitor implements IFogResourceListener {
fogResources.remove(ifru);
}
/**
* FogResource sets the Drawtime
*
* @param drawTime
*/
@Override
public void updateDialogTime(Date dialogTime) {
this.dialogTime = dialogTime;
fireMonitorEvent(zoneDialog.getClass().getName());
}
/**
* The date for the dialog to stay in step with
*
* @return
*/
public Date getDialogDate() {
return dialogTime;
}
/*
* (non-Javadoc)
*

View file

@ -61,6 +61,7 @@ import com.raytheon.uf.viz.monitor.ui.dialogs.ZoneTableDlg;
* Apr 28, 2014 3086 skorolev Updated getConfigMgr method.
* Sep 04, 2014 3220 skorolev Removed "site". Added check on dispose.
* Sep 18, 2015 3873 skorolev Adjusted to AppName and MonName.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -148,13 +149,10 @@ public class FogZoneTableDlg extends ZoneTableDlg {
if (me.getSource() instanceof FogMonitor) {
FogMonitor fog = (FogMonitor) me.getSource();
Date date = fog.getDialogDate();
Date date = fog.getDialogTime();
if (date != null) {
Date nominalTime = date;
ObMultiHrsReports obData = fog.getObData();
if (!isLinkedToFrame()) {
nominalTime = obData.getLatestNominalTime();
}
FogDataGenerator fdg = new FogDataGenerator();
Map<String, CellType> fogAlgCellType = fdg.getAlgCellTypes(fog
.getAlgorithmData(nominalTime));

View file

@ -85,6 +85,7 @@ import com.vividsolutions.jts.geom.Geometry;
* Sep 04, 2014 3220 skorolev Updated configUpdate method and added updateMonitoringArea.
* Sep 18, 2015 3873 skorolev Removed common definitions. Replaced deprecated NotificationMessage.
* Oct 21, 2015 3873 dhladky Get Obs load off UI thread.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -127,9 +128,6 @@ public class SafeSeasMonitor extends ObsMonitor implements ISSResourceListener {
/** List of SAFESEAS resource listeners **/
private final List<ISSResourceListener> safeSeasResources = new ArrayList<ISSResourceListener>();
/** Time which Zone/County dialog shows. **/
private Date dialogTime = null;
/** list of coordinates for each zone **/
private Map<String, Geometry> zoneGeometries = null;
@ -398,35 +396,6 @@ public class SafeSeasMonitor extends ObsMonitor implements ISSResourceListener {
fireMonitorEvent(this);
}
/**
* SSResource updates the dialogTime
*
* @param dialogTime
*/
@Override
public void updateDialogTime(Date dialogTime) {
this.dialogTime = dialogTime;
fireMonitorEvent(zoneDialog.getClass().getName());
}
/**
* Gets Dialog Time.
*
* @return dialogTime
*/
public Date getDialogTime() {
return dialogTime;
}
/**
* Sets the dialogTime
*
* @param dialogTime
*/
public void setDialogTime(Date dialogTime) {
this.dialogTime = dialogTime;
}
/**
* Adds recourse listener
*

View file

@ -59,6 +59,7 @@ import com.raytheon.uf.viz.monitor.util.MonitorConfigConstants;
* Apr 28, 2014 3086 skorolev Updated getConfigMgr method.
* Sep 04, 2014 3220 skorolev Removed "site". Added check on dispose.
* Sep 18, 2015 3873 skorolev Adjusted to AppName and MonName.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -155,9 +156,6 @@ public class SSZoneTableDlg extends ZoneTableDlg {
if (date != null) {
Date nominalTime = date;
ObMultiHrsReports obData = monitor.getObData();
if (!isLinkedToFrame()) {
nominalTime = obData.getLatestNominalTime();
}
Map<String, FOG_THREAT> fogAlgThreats = monitor
.getAlgorithmData(nominalTime);
obData.setFogAlgCellType(monitor.getAlgCellTypes(fogAlgThreats));

View file

@ -32,8 +32,6 @@ import com.raytheon.uf.common.jms.notification.NotificationMessage;
import com.raytheon.uf.common.monitor.config.FSSObsMonitorConfigurationManager;
import com.raytheon.uf.common.monitor.config.FSSObsMonitorConfigurationManager.MonName;
import com.raytheon.uf.common.monitor.data.CommonConfig;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.viz.core.alerts.AlertMessage;
import com.raytheon.uf.viz.monitor.IMonitor;
import com.raytheon.uf.viz.monitor.Monitor;
@ -73,6 +71,7 @@ import com.raytheon.viz.ui.dialogs.ICloseCallback;
* Apr 28, 2014 3086 skorolev Removed local getMonitorAreaConfig method.
* Sep 04, 2014 3220 skorolev Updated configUpdate method and added updateMonitoringArea.
* Sep 18, 2015 3873 skorolev Removed common definitions. Replaced deprecated NotificationMessage.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -83,9 +82,6 @@ import com.raytheon.viz.ui.dialogs.ICloseCallback;
public class SnowMonitor extends ObsMonitor implements ISnowResourceListener {
private final IUFStatusHandler statusHandler = UFStatus
.getHandler(SnowMonitor.class);
/** Singleton instance of this class */
private static SnowMonitor monitor = null;
@ -104,9 +100,6 @@ public class SnowMonitor extends ObsMonitor implements ISnowResourceListener {
*/
private ObMultiHrsReports obData;
/** Time which Zone/County dialog shows. **/
private Date dialogTime = null;
/** Array of snow listeners **/
private final List<ISnowResourceListener> snowResources = new ArrayList<ISnowResourceListener>();
@ -329,24 +322,6 @@ public class SnowMonitor extends ObsMonitor implements ISnowResourceListener {
fireMonitorEvent(this);
}
/**
* Gets Dialog Time.
*
* @return dialogTime
*/
public Date getDialogTime() {
return dialogTime;
}
/**
* Sets dialog time.
*
* @param dialogTime
*/
public void setDialogTime(Date dialogTime) {
this.dialogTime = dialogTime;
}
/**
* Adds a listener.
*
@ -368,13 +343,16 @@ public class SnowMonitor extends ObsMonitor implements ISnowResourceListener {
}
/**
* Event fire is different, Override.
* SnowResource sets the Drawtime.
*
* @param dialogTime
*/
public void updateDialogTime(Date dialogTime) {
this.dialogTime = dialogTime;
fireMonitorEvent(this);
if (zoneDialog.linkedToFrame) {
this.dialogTime = dialogTime;
fireMonitorEvent(this);
}
}
/**

View file

@ -56,6 +56,7 @@ import com.raytheon.uf.viz.monitor.ui.dialogs.ZoneTableDlg;
* Apr 28, 2014 3086 skorolev Updated getConfigMgr method.
* Sep 04, 2014 3220 skorolev Removed "site". Added check on dispose.
* Sep 18, 2015 3873 skorolev Adjusted to AppName and MonName.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -145,9 +146,6 @@ public class SnowZoneTableDlg extends ZoneTableDlg {
SnowMonitor monitor = (SnowMonitor) me.getSource();
Date date = monitor.getDialogTime();
if (date != null) {
if (!isLinkedToFrame()) {
date = monitor.getObData().getLatestNominalTime();
}
this.updateTableDlg(monitor.getObData().getObHourReports(date));
}
}

View file

@ -20,6 +20,7 @@
package com.raytheon.uf.viz.monitor;
import java.util.ArrayList;
import java.util.Date;
import java.util.Map;
import java.util.regex.Pattern;
@ -47,6 +48,7 @@ import com.raytheon.uf.viz.datacube.DataCubeContainer;
import com.raytheon.uf.viz.monitor.data.ObReport;
import com.raytheon.uf.viz.monitor.events.IMonitorConfigurationEvent;
import com.raytheon.uf.viz.monitor.events.IMonitorThresholdEvent;
import com.raytheon.uf.viz.monitor.ui.dialogs.ZoneTableDlg;
import com.vividsolutions.jts.geom.Geometry;
/**
@ -65,6 +67,7 @@ import com.vividsolutions.jts.geom.Geometry;
* Sep 04, 2014 3220 skorolev Removed cwa and monitorUsefrom vals.
* Sep 18, 2015 3873 skorolev Included common definitions.
* Oct 21, 2015 3873 dhladky Get Obs load off UI thread.
* Dec 17, 2015 3873 dhladky Abstracted handling of dialogTime and Zone dialog events.
*
* </pre>
*
@ -78,7 +81,11 @@ public abstract class ObsMonitor extends Monitor {
private static final IUFStatusHandler statusHandler = UFStatus
.getHandler(ObsMonitor.class);
/** Thread job to load obs with. **/
protected ProcessObsJob obsJob = null;
/** Time which Zone/County dialog shows. **/
protected Date dialogTime = null;
/*
* (non-Javadoc)
@ -167,6 +174,13 @@ public abstract class ObsMonitor extends Monitor {
*/
@Override
protected abstract void processNotifyMessage(NotificationMessage filtered);
/**
* Get the Zone table Dialog implementations
*
* @return
*/
protected abstract ZoneTableDlg getZoneDialog();
/*
* (non-Javadoc)
@ -320,4 +334,26 @@ public abstract class ObsMonitor extends Monitor {
public void setGeoAdjAreas(Geometry geoAdjAreas) {
this.geoAdjAreas = geoAdjAreas;
}
/**
* Sets the Resource Drawtime
*
* @param drawTime
*/
public void updateDialogTime(Date dialogTime) {
if (getZoneDialog().linkedToFrame) {
this.dialogTime = dialogTime;
fireMonitorEvent(getZoneDialog().getClass().getName());
}
}
/**
* The date for the dialog to stay in step with
*
* @return
*/
public Date getDialogTime() {
return dialogTime;
}
}

View file

@ -102,6 +102,7 @@ import com.vividsolutions.jts.io.ParseException;
* Sep 25, 2015 3873 skorolev Added center definition for moving platforms.
* Nov 09, 2015 3841 dhladky Update all tables when zones/stations are updated.
* Dec 02, 2015 3873 dhladky Pulled 3841 to 16.1.1.
* Dec 17, 2015 3873 dhladky Set link to Frame to true by default.
*
* </pre>
*
@ -176,7 +177,7 @@ public abstract class ZoneTableDlg extends CaveSWTDialog implements
protected Button linkToFrameChk;
/** Link-to-frame flag. **/
public boolean linkedToFrame = false;
public boolean linkedToFrame = true;
/** Vertical check box. **/
private Button vertChk;
@ -384,6 +385,7 @@ public abstract class ZoneTableDlg extends CaveSWTDialog implements
GridData gd = new GridData(SWT.DEFAULT, SWT.CENTER, false, true);
linkToFrameChk = new Button(controlComp, SWT.CHECK);
linkToFrameChk.setText("Link to Frame");
linkToFrameChk.setSelection(linkedToFrame);
linkToFrameChk.setLayoutData(gd);
linkToFrameChk.addSelectionListener(new SelectionAdapter() {
@Override