Merge tag 'OB_14.4.1-26' into omaha_14.4.1
14.4.1-26 Former-commit-id: b6156ab57179bb4af118912960cf402d459ba779
This commit is contained in:
commit
cc1f5eaada
8 changed files with 1258 additions and 1034 deletions
|
@ -28,6 +28,8 @@ import javax.xml.bind.annotation.XmlAccessorType;
|
|||
import javax.xml.bind.annotation.XmlAttribute;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||
import com.raytheon.uf.viz.core.AbstractTimeMatcher;
|
||||
import com.raytheon.uf.viz.core.IGraphicsTarget;
|
||||
import com.raytheon.uf.viz.core.VizConstants;
|
||||
import com.raytheon.uf.viz.core.drawables.AbstractDescriptor;
|
||||
|
@ -39,10 +41,13 @@ import com.raytheon.uf.viz.core.globals.VizGlobalsManager;
|
|||
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
||||
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
||||
import com.raytheon.uf.viz.core.maps.scales.MapScaleRenderableDisplay;
|
||||
import com.raytheon.uf.viz.core.maps.scales.MapScalesManager;
|
||||
import com.raytheon.uf.viz.core.maps.scales.MapScalesManager.ManagedMapScale;
|
||||
import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
||||
import com.raytheon.uf.viz.core.rsc.IResourceGroup;
|
||||
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
||||
import com.raytheon.uf.viz.core.rsc.ResourceList.AddListener;
|
||||
import com.raytheon.uf.viz.core.rsc.ResourceProperties;
|
||||
import com.raytheon.uf.viz.core.rsc.capabilities.DensityCapability;
|
||||
import com.raytheon.uf.viz.core.rsc.capabilities.MagnificationCapability;
|
||||
import com.raytheon.uf.viz.d2d.core.D2DProperties;
|
||||
|
@ -61,6 +66,7 @@ import com.raytheon.viz.core.imagery.ImageCombiner;
|
|||
* Feb 9, 2009 njensen Initial creation
|
||||
* Mar 21, 2013 1638 mschenke Made map scales not tied to d2d
|
||||
* Mar 22, 2013 1638 mschenke Moved map scale code to MapScaleRenderableDisplay
|
||||
* Apr 06, 2015 ASM #17215 D. Friedman Implement clear to avoid removing time match basis
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -321,4 +327,64 @@ public class D2DMapRenderableDisplay extends MapScaleRenderableDisplay
|
|||
return combinerListener;
|
||||
}
|
||||
|
||||
/** Like MapScaleRenderableDisplayer.clear, but avoids removing the time match
|
||||
* basis until other resources are removed. This reduces time matching churn
|
||||
* and reduces the chances of lockups.
|
||||
* @see com.raytheon.uf.viz.core.maps.scales.MapScaleRenderableDisplay#clear()
|
||||
*/
|
||||
@Override
|
||||
public void clear() {
|
||||
AbstractVizResource<?, ?> timeMatchBasis = null;
|
||||
AbstractTimeMatcher timeMatcher = descriptor.getTimeMatcher();
|
||||
if (timeMatcher instanceof D2DTimeMatcher) {
|
||||
timeMatchBasis = ((D2DTimeMatcher) timeMatcher).getTimeMatchBasis();
|
||||
}
|
||||
ManagedMapScale scale = MapScalesManager.getInstance().getScaleByName(
|
||||
getScaleName());
|
||||
if (scale != null) {
|
||||
ResourceList list = descriptor.getResourceList();
|
||||
for (ResourcePair rp : list) {
|
||||
if (rp.getProperties().isSystemResource() == false) {
|
||||
// Keep system resources
|
||||
if (rp.getResource() != timeMatchBasis) {
|
||||
list.remove(rp);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (timeMatchBasis != null) {
|
||||
list.removeRsc(timeMatchBasis);
|
||||
}
|
||||
loadScale(scale);
|
||||
} else {
|
||||
// Map scale could not be found, default to remove all
|
||||
// non-map/system layers and reset display
|
||||
ResourceList list = descriptor.getResourceList();
|
||||
for (ResourcePair rp : list) {
|
||||
ResourceProperties props = rp.getProperties();
|
||||
if (props.isMapLayer() == false
|
||||
&& props.isSystemResource() == false) {
|
||||
if (rp.getResource() != timeMatchBasis) {
|
||||
list.remove(rp);
|
||||
}
|
||||
} else {
|
||||
try {
|
||||
props.setVisible(true);
|
||||
rp.getResource().recycle();
|
||||
} catch (Throwable e) {
|
||||
props.setVisible(false);
|
||||
statusHandler.handle(Priority.PROBLEM, "Clear error: "
|
||||
+ e.getMessage() + ":: The resource ["
|
||||
+ rp.getResource().getSafeName()
|
||||
+ "] has been disabled.", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (timeMatchBasis != null) {
|
||||
list.removeRsc(timeMatchBasis);
|
||||
}
|
||||
|
||||
scaleToClientArea(getBounds());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -56,7 +56,8 @@
|
|||
# ------------ ---------- ----------- --------------------------
|
||||
# 12/02/2014 RM #625 ryu Changed checkGroup() as suggested to display models
|
||||
# in multi-columns when a single column is insufficient.
|
||||
#
|
||||
# 04/16/2015 17390 ryu Replacing string.atoi with int for string/integer to integer conversion
|
||||
# (ListBox.curselection() now returns ints instead of strings.)
|
||||
# ----------------------------------------------------------------------------
|
||||
#
|
||||
MenuItems = ["Verify"]
|
||||
|
@ -6629,7 +6630,7 @@ class Verif(BVDialog):
|
|||
outlist=[]
|
||||
itemnums=self.ForecasterListbox.curselection()
|
||||
try:
|
||||
itemnums=map(string.atoi,itemnums)
|
||||
itemnums=map(int,itemnums)
|
||||
except ValueError: pass
|
||||
for itemnum in itemnums:
|
||||
outlist.append(self.forecasterNumbers[itemnum])
|
||||
|
@ -6805,7 +6806,7 @@ class Verif(BVDialog):
|
|||
def getFromdayListbox(self):
|
||||
itemnums=self.FromdayListbox.curselection()
|
||||
try:
|
||||
itemnums=map(string.atoi,itemnums)
|
||||
itemnums=map(int,itemnums)
|
||||
except ValueError: pass
|
||||
itemnum=itemnums[0]
|
||||
outdate=self.gridDays[itemnum]
|
||||
|
@ -6818,7 +6819,7 @@ class Verif(BVDialog):
|
|||
outlist=[]
|
||||
itemnums=self.DaylistListbox.curselection()
|
||||
try:
|
||||
itemnums=map(string.atoi,itemnums)
|
||||
itemnums=map(int,itemnums)
|
||||
except ValueError: pass
|
||||
for itemnum in itemnums:
|
||||
outlist.append(self.gridDays[itemnum])
|
||||
|
@ -7792,7 +7793,7 @@ class Verif(BVDialog):
|
|||
outlist=[]
|
||||
itemnums=listbox.curselection()
|
||||
try:
|
||||
itemnums=map(string.atoi,itemnums)
|
||||
itemnums=map(int,itemnums)
|
||||
except ValueError: pass
|
||||
for itemnum in itemnums:
|
||||
outlist.append(listbox.get(itemnum))
|
||||
|
|
|
@ -38,7 +38,8 @@ from java.io import File
|
|||
# ------------ ---------- ----------- --------------------------
|
||||
# 05/29/08 njensen Initial Creation.
|
||||
# 12/10/14 #14946 ryu Add getTimeZones() function.
|
||||
#
|
||||
# 04/16/15 #14946 ryu Fix getTimeZones to return the office TZ if timezone
|
||||
# is not set for any zone in a segment.
|
||||
#
|
||||
#
|
||||
|
||||
|
@ -440,19 +441,18 @@ def getTimeZones(zones, officeTZ):
|
|||
timezones = []
|
||||
if zones is not None:
|
||||
for zone in JUtil.javaStringListToPylist(zones):
|
||||
area_dict = AreaDictionary.AreaDictionary.get(zone)
|
||||
if area_dict is None:
|
||||
continue
|
||||
tzs = area_dict.get("ugcTimeZone")
|
||||
if tzs is not None:
|
||||
if type(tzs) is str:
|
||||
tzs = [tzs]
|
||||
for tz in tzs:
|
||||
if tz not in timezones:
|
||||
timezones.append(tz)
|
||||
zdict = AreaDictionary.AreaDictionary.get(zone, {})
|
||||
tzs = zdict.get("ugcTimeZone", [])
|
||||
if type(tzs) is str:
|
||||
tzs = [tzs]
|
||||
for tz in tzs:
|
||||
if tz not in timezones:
|
||||
timezones.append(tz)
|
||||
if officeTZ in timezones and officeTZ != timezones[0]:
|
||||
timezones.remove(officeTZ)
|
||||
timezones.insert(0, officeTZ)
|
||||
if len(timezones) == 0:
|
||||
timezones.append(officeTZ)
|
||||
return JUtil.pylistToJavaStringList(timezones)
|
||||
|
||||
def reloadModule(moduleName):
|
||||
|
|
|
@ -899,5 +899,25 @@
|
|||
<key>PEIE41, PEII42, PEIK98</key>
|
||||
<value><name>Precip Fcst - 24hr accum</name></value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>PGNW49</key>
|
||||
<value><name>Day 4 Severe Outlook</name></value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>PGNW50</key>
|
||||
<value><name>Day 5 Severe Outlook</name></value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>PGNW51</key>
|
||||
<value><name>Day 6 Severe Outlook</name></value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>PGNW52</key>
|
||||
<value><name>Day 7 Severe Outlook</name></value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>PGNW53</key>
|
||||
<value><name>Day 8 Severe Outlook</name></value>
|
||||
</entry>
|
||||
</mapping>
|
||||
</redbookWMOMap>
|
||||
|
|
|
@ -69,6 +69,7 @@ import com.raytheon.viz.alerts.observers.ProductAlertObserver;
|
|||
* Apr 09, 2014 2947 bsteffen Initial creation
|
||||
* May 06, 2014 3117 bsteffen Update for new data.
|
||||
* Sep 09, 2014 3356 njensen Remove CommunicationException
|
||||
* Apr 06, 2014 #17215 D. Friedman Use ReentrantLock
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -104,11 +105,16 @@ public class SatelliteInventory extends AbstractInventory implements
|
|||
}
|
||||
|
||||
@Override
|
||||
public synchronized void initTree(Map<String, DerivParamDesc> derParLibrary)
|
||||
public void initTree(Map<String, DerivParamDesc> derParLibrary)
|
||||
throws DataCubeException {
|
||||
level = LevelFactory.getInstance().getLevel("EA", 0.0);
|
||||
coverages = new SatelliteCoverageCache();
|
||||
super.initTree(derParLibrary);
|
||||
lock.lock();
|
||||
try {
|
||||
level = LevelFactory.getInstance().getLevel("EA", 0.0);
|
||||
coverages = new SatelliteCoverageCache();
|
||||
super.initTree(derParLibrary);
|
||||
} finally {
|
||||
lock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -50,7 +50,8 @@
|
|||
# 03/30/2015 #17206 yteng Changed some parameters that are not rate parameters
|
||||
# 04/03/2015 #4367 dgilling Change WindGust's time constraints back to TC1
|
||||
# for Fcst/Official.
|
||||
#
|
||||
# 04/15/2015 #17383 yteng Change localTC to fix error that time constraints
|
||||
# being off
|
||||
########################################################################
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
@ -981,8 +982,8 @@ def localTC(start,repeat,duration,dst):
|
|||
timezone = SITES[GFESUITE_SITEID][3]
|
||||
import dateutil.tz, datetime
|
||||
tz = dateutil.tz.gettz(timezone)
|
||||
dt = datetime.datetime.utcnow()
|
||||
delta = tz.utcoffset(dt) + tz.dst(dt)
|
||||
local = datetime.datetime.now(tz)
|
||||
delta = tz.utcoffset(local) - tz.dst(local)
|
||||
offset = delta.days*86400 + delta.seconds
|
||||
start = start - offset
|
||||
if dst == 1:
|
||||
|
|
2150
edexOsgi/com.raytheon.uf.edex.plugin.redbook/utility/edex_static/base/redbook/redbookFcstMap.xml
Normal file → Executable file
2150
edexOsgi/com.raytheon.uf.edex.plugin.redbook/utility/edex_static/base/redbook/redbookFcstMap.xml
Normal file → Executable file
File diff suppressed because it is too large
Load diff
|
@ -435,7 +435,7 @@ HDS ^(SF(US|PA)41) ([A-Z]{4}) (..)(..)(..)
|
|||
# WMO Heading for Earth Networks Total Lightning
|
||||
|
||||
NGRID ^(SFPA42) ([A-Z]{4}) (..)(..)(..)
|
||||
FILE -overwrite -log -edex -close /data_store/entlightning/(\4:yyyy)(\4:mm)\4/\5/\1_\3_\4\5\6_(seq).%Y%m%d%H
|
||||
FILE -overwrite -log -edex -close /data_store/entlightning/(\3:yyyy)(\3:mm)\3/\4/\1_\2_\3\4\5_(seq).%Y%m%d%H
|
||||
|
||||
# AWIPS1: TEXT ^[ABCFMNRSUVW]......[KPTMC] /text/NO_STORE
|
||||
# TEXT ^[ABCFMNRSUVW].....[KPTMC] /text/NO_STORE
|
||||
|
|
Loading…
Add table
Reference in a new issue