Issue #1638 Refactored viz/edex/common core projects to removed common and viz dependencies on edex projects

Amend: Accepted ticket for work, again!  Ensured uframe product project was not deleted

Change-Id: Iaa7754f25d74d893f84a7f82df605fb906e1e719

Former-commit-id: 615fa06253cc5226ddbedbb7835f3f03cf4cbb5b
This commit is contained in:
Max Schenkelberg 2013-02-19 13:50:55 -06:00
parent 6c766ddd85
commit 4ed4ef8d71
157 changed files with 1116 additions and 2986 deletions

View file

@ -7,7 +7,7 @@ Bundle-Activator: com.raytheon.uf.viz.alertviz.Activator
Bundle-Vendor: Raytheon Bundle-Vendor: Raytheon
Require-Bundle: org.eclipse.ui, Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime, org.eclipse.core.runtime,
org.apache.activemq;visibility:=reexport, org.apache.activemq,
com.raytheon.uf.common.localization;visibility:=reexport, com.raytheon.uf.common.localization;visibility:=reexport,
com.raytheon.uf.common.serialization;visibility:=reexport, com.raytheon.uf.common.serialization;visibility:=reexport,
com.raytheon.uf.viz.core;visibility:=reexport, com.raytheon.uf.viz.core;visibility:=reexport,

View file

@ -7,8 +7,7 @@ Bundle-Activator: com.raytheon.uf.viz.aviation.advisory.Activator
Bundle-Vendor: RAYTHEON Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Require-Bundle: com.raytheon.uf.viz.core Require-Bundle: com.raytheon.uf.viz.core
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,
com.raytheon.uf.common.time, com.raytheon.uf.common.time,
com.raytheon.uf.viz.core, com.raytheon.uf.viz.core,

View file

@ -8,8 +8,7 @@ Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.bufrsigwx, com.raytheon.uf.common.dataplugin.bufrsigwx,
com.raytheon.uf.common.dataplugin.bufrsigwx.common, com.raytheon.uf.common.dataplugin.bufrsigwx.common,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,

View file

@ -8,7 +8,6 @@ Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.raytheon.edex.plugin.ccfp, Import-Package: com.raytheon.edex.plugin.ccfp,
com.raytheon.edex.scriptfactory,
com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,
com.raytheon.uf.common.status, com.raytheon.uf.common.status,

View file

@ -228,13 +228,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.raytheon.uf.edex.topo"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="com.raytheon.edex.meteolib" id="com.raytheon.edex.meteolib"
download-size="0" download-size="0"

View file

@ -24,7 +24,7 @@ Require-Bundle: org.eclipse.ui,
org.apache.velocity;bundle-version="1.5.0", org.apache.velocity;bundle-version="1.5.0",
org.apache.qpid;bundle-version="1.0.0", org.apache.qpid;bundle-version="1.0.0",
javax.jms;bundle-version="1.0.0", javax.jms;bundle-version="1.0.0",
org.apache.activemq;visibility:=reexport, org.apache.activemq,
com.raytheon.uf.common.util;bundle-version="1.0.0", com.raytheon.uf.common.util;bundle-version="1.0.0",
com.raytheon.uf.common.auth;bundle-version="1.0.0", com.raytheon.uf.common.auth;bundle-version="1.0.0",
com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin,
@ -75,16 +75,10 @@ Export-Package: com.raytheon.uf.viz.core,
com.raytheon.uf.viz.core.style.level, com.raytheon.uf.viz.core.style.level,
com.raytheon.uf.viz.core.tile, com.raytheon.uf.viz.core.tile,
com.raytheon.uf.viz.core.time, com.raytheon.uf.viz.core.time,
com.raytheon.uf.viz.core.topo,
com.raytheon.uf.viz.core.velocity,
com.raytheon.viz.core.slice, com.raytheon.viz.core.slice,
com.raytheon.viz.core.slice.request, com.raytheon.viz.core.slice.request,
com.raytheon.viz.core.units com.raytheon.viz.core.units
Import-Package: com.raytheon.edex.colormap, Import-Package: com.raytheon.uf.common.alertmonitor,
com.raytheon.edex.db.dao,
com.raytheon.edex.exception,
com.raytheon.edex.scriptfactory,
com.raytheon.uf.common.alertmonitor,
com.raytheon.uf.common.colormap, com.raytheon.uf.common.colormap,
com.raytheon.uf.common.comm, com.raytheon.uf.common.comm,
com.raytheon.uf.common.datastorage, com.raytheon.uf.common.datastorage,
@ -97,7 +91,6 @@ Import-Package: com.raytheon.edex.colormap,
com.raytheon.uf.common.time.adapter, com.raytheon.uf.common.time.adapter,
com.raytheon.uf.common.time.util, com.raytheon.uf.common.time.util,
com.raytheon.uf.common.topo, com.raytheon.uf.common.topo,
com.raytheon.uf.edex.topo,
org.apache.log4j, org.apache.log4j,
org.apache.log4j.spi org.apache.log4j.spi
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6

View file

@ -26,16 +26,6 @@
<property name="monitorEndpoint" value="edex.alerts.msg"/> <property name="monitorEndpoint" value="edex.alerts.msg"/>
</bean> </bean>
<!-- FIXME: Uncomment to re-enable cache at CAVE startup
<bean id="gfeDiskCache" class="com.raytheon.uf.common.cache.disk.DiskCache" init-method="activateCache">
<property name="name" value="GFE"/> -->
<!-- TODO: Make this an environment variable that's passed in -->
<!-- Cache directory relative to caveData/etc/workstation/${host} default is diskCache, will be followed by ${NAME}/${PID} -->
<!-- <property name="baseCacheDir" value="diskCache"/> -->
<!-- Number of grids, to always allow in memory -->
<!-- <property name="sizeMemCacheMap" value="150"/>
</bean> -->
<bean class="com.raytheon.uf.common.geospatial.LogRedirector" factory-method="getInstance"/> <bean class="com.raytheon.uf.common.geospatial.LogRedirector" factory-method="getInstance"/>
<!-- These util:constant beans should not be required, they overwrite the ones in *-common.xml files for CAVE since <!-- These util:constant beans should not be required, they overwrite the ones in *-common.xml files for CAVE since

View file

@ -39,12 +39,12 @@ import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform; import org.eclipse.core.runtime.Platform;
import org.osgi.framework.Bundle; import org.osgi.framework.Bundle;
import com.raytheon.edex.scriptfactory.ScriptFactory;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.common.util.velocity.VelocityManager;
import com.raytheon.uf.viz.core.Activator; import com.raytheon.uf.viz.core.Activator;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.localization.LocalizationManager; import com.raytheon.uf.viz.core.localization.LocalizationManager;
@ -70,6 +70,7 @@ import com.raytheon.uf.viz.core.localization.LocalizationManager;
* 12/17/2007 639 grichard Added &quot;fxa&quot; parm to scripts. * 12/17/2007 639 grichard Added &quot;fxa&quot; parm to scripts.
* 3/17/2008 933 grichard Added support for taf plugin. * 3/17/2008 933 grichard Added support for taf plugin.
* 04/14/2008 chammack Complete refactor to Velocity * 04/14/2008 chammack Complete refactor to Velocity
* Feb 15, 2013 1638 mschenke Created common VelocityManager for executing scripts
* *
* </pre> * </pre>
* *
@ -336,11 +337,18 @@ public class ScriptCreator {
stringTemplate = DEFAULT_TEMPLATE; stringTemplate = DEFAULT_TEMPLATE;
} }
Map<String, Object> templateObjects = new HashMap<String, Object>();
templateObjects.put("scriptMetadata", queryTerms);
templateObjects.put("maxRecords", maxRecords);
templateObjects.put("scriptLibrary", props.scriptLibrary);
templateObjects.put("mode", mode);
try { try {
String script = ScriptFactory.getInstance().createScript( String script = VelocityManager.executeTemplate(
stringTemplate, DEFAULT_TEMPLATE.getParentFile(), stringTemplate,
maxRecords, mode, props.scriptLibrary, queryTerms, DEFAULT_TEMPLATE.getParentFile(),
FileUtil.join(LocalizationManager.getUserDir(), "logs")); new File(FileUtil.join(LocalizationManager.getUserDir(),
"logs")), templateObjects);
// System.out.println("Script gen: " // System.out.println("Script gen: "
// + (System.currentTimeMillis() - t0)); // + (System.currentTimeMillis() - t0));
return script; return script;

View file

@ -34,7 +34,7 @@ import java.nio.FloatBuffer;
import java.nio.IntBuffer; import java.nio.IntBuffer;
import java.nio.ShortBuffer; import java.nio.ShortBuffer;
import com.raytheon.edex.colormap.ColorMapManager; import com.raytheon.uf.common.colormap.ColorMapUtils;
import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback.ColorMapData; import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback.ColorMapData;
import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback.ColorMapDataType; import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback.ColorMapDataType;
import com.raytheon.uf.viz.core.drawables.ColorMapParameters; import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
@ -48,6 +48,7 @@ import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Aug 13, 2010 mschenke Initial creation * Aug 13, 2010 mschenke Initial creation
* Feb 15, 2013 1638 mschenke Moved IndexColorModel creation to common.colormap utility
* *
* </pre> * </pre>
* *
@ -101,7 +102,7 @@ public class Colormapper {
cmapedData[i] = findColorIndex(index, logFactor, colorMapSz); cmapedData[i] = findColorIndex(index, logFactor, colorMapSz);
} }
IndexColorModel cm = ColorMapManager.buildColorModel(parameters IndexColorModel cm = ColorMapUtils.buildColorModel(parameters
.getColorMap()); .getColorMap());
DataBufferByte byteArray = new DataBufferByte(cmapedData, width DataBufferByte byteArray = new DataBufferByte(cmapedData, width
@ -109,7 +110,7 @@ public class Colormapper {
MultiPixelPackedSampleModel sample = new MultiPixelPackedSampleModel( MultiPixelPackedSampleModel sample = new MultiPixelPackedSampleModel(
DataBuffer.TYPE_BYTE, width, height, DataBuffer.TYPE_BYTE, width, height,
ColorMapManager.NUMBER_BITS); ColorMapUtils.COLOR_MODEL_NUMBER_BITS);
WritableRaster writeRaster = Raster.createWritableRaster(sample, WritableRaster writeRaster = Raster.createWritableRaster(sample,
byteArray, new Point(0, 0)); byteArray, new Point(0, 0));

View file

@ -1,139 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.viz.core.topo;
import org.geotools.coverage.grid.GridGeometry2D;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.topo.ITopoQuery;
import com.raytheon.uf.common.topo.TopoQueryRequest;
import com.raytheon.uf.viz.core.VizApp;
import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.requests.ThriftClient;
import com.vividsolutions.jts.geom.Coordinate;
/**
* Viz client class to mimic functionality of edex TopoQuery, uses ThriftClient
* instead of direct hdf5 access if DataMode == THRIFT otherwise uses the
* com.raytheon.edex.topo.TopoQuery
*
* <pre>
*
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Oct 12, 2009 mschenke Initial creation
* Jan 14, 2013 1469 bkowal The hdf5 root directory is no longer passed
* as an argument to the common TopoQuery constructor.
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public class TopoQuery implements ITopoQuery {
private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(TopoQuery.class);
private TopoQueryRequest request;
/**
* @return Initialized TopoQuery instance
*/
public static synchronized ITopoQuery getInstance() {
return com.raytheon.uf.edex.topo.TopoQuery.getInstance(0);
}
/**
* @return Initialized TopoQuery instance
*/
public static synchronized ITopoQuery getInstance(int topoLevel,
boolean useCaching) {
return com.raytheon.uf.edex.topo.TopoQuery.getInstance(0);
}
private TopoQuery(int level, boolean useCaching) {
request = new TopoQueryRequest();
request.setLevel(level);
request.setUseCaching(useCaching);
}
/**
* Retrieves topo height in meters above mean sea level for the specified
* coordinate.
*
* @param coord
* should contain lon/lat in degrees
* @return
*/
public double getHeight(Coordinate coord) {
request.setCoordinates(new Coordinate[] { coord });
request.setGridGeometry(null);
try {
return (Double) ThriftClient.sendRequest(request);
} catch (VizException e) {
statusHandler.handle(Priority.CRITICAL,
"Unable to perform topo query", e);
return Double.NaN;
}
}
/**
* Retrieves topo height in meters above mean sea level for the specified
* coordinates.
*
* @param coords
* should contain lon/lat in degrees
* @return
*/
public double[] getHeight(Coordinate[] coords) {
request.setCoordinates(coords);
request.setGridGeometry(null);
try {
return (double[]) ThriftClient.sendRequest(request);
} catch (VizException e) {
statusHandler.handle(Priority.CRITICAL,
"Unable to perform topo query", e);
return null;
}
}
/**
* Retrieves topo height in meters above mean sea level reprojected and
* interpolated to the specified grid geometry.
*
* @param targetGeom
* @return the topo data array in row major order
*/
public float[] getHeight(GridGeometry2D targetGeom) {
request.setCoordinates(null);
request.setGridGeometry(targetGeom);
try {
return (float[]) ThriftClient.sendRequest(request);
} catch (VizException e) {
statusHandler.handle(Priority.CRITICAL,
"Unable to perform topo query", e);
return null;
}
}
}

View file

@ -1,152 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.viz.core.velocity;
import java.io.File;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import com.raytheon.edex.scriptfactory.ScriptTemplateLoader;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.core.Activator;
import com.raytheon.uf.viz.core.status.StatusConstants;
/**
* Manages the execution of velocity templates
*
* <pre>
*
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jul 31, 2009 mschenke Initial creation
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public class VelocityManager {
private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(VelocityManager.class);
private static VelocityManager instance;
private Map<String, VelocityEngine> engineMap;
/** Cached templates */
private final Map<String, Template> templateMap;
private VelocityManager() {
engineMap = new HashMap<String, VelocityEngine>();
templateMap = new HashMap<String, Template>();
}
public static VelocityManager getInstance() {
synchronized (VelocityManager.class) {
if (instance == null) {
instance = new VelocityManager();
}
}
return instance;
}
/**
* Create a script given the vm file and object map, uses default props
* mimicked from ScriptFactory
*
* @param vmFile
* the .vm file to use
* @param objectMap
* the string to object map velocity should use
* @return the formatted text
*/
public String createScript(File vmFile, Map<String, Object> objectMap) {
VelocityEngine engine = engineMap.get(vmFile.getAbsolutePath());
if (engine == null) {
java.util.Properties p = new java.util.Properties();
String scriptDir = vmFile.getParentFile().getAbsolutePath();
p.setProperty("file.resource.loader.class",
ScriptTemplateLoader.class.getName());
p.setProperty("file.resource.loader.path", scriptDir);
p.setProperty("velocimacro.permissions.allowInline", "true");
p.setProperty(
"velocimacro.permissions.allow.inline.to.replace.global",
"true");
return createScript(vmFile, objectMap, p);
} else {
return createScript(vmFile, objectMap, engine);
}
}
/**
* Create a script given the vm file and object map, and custom velocity
* properties
*
* @param vmFile
* @param objectMap
* @param customProps
* @return the formatted text
*/
public String createScript(File vmFile, Map<String, Object> objectMap,
Properties customProps) {
VelocityEngine engine = new VelocityEngine();
try {
engine.init(customProps);
} catch (Exception e) {
statusHandler.handle(Priority.SIGNIFICANT,
"Error while initializing velocity engine", e);
}
return createScript(vmFile, objectMap, engine);
}
private String createScript(File vmFile, Map<String, Object> objectMap,
VelocityEngine engine) {
StringWriter sw = null;
try {
VelocityContext context = new VelocityContext(objectMap);
sw = new StringWriter();
String path = vmFile.getAbsolutePath();
String key = path + File.pathSeparator + vmFile.getParentFile().getAbsolutePath(); //Win32
Template template = templateMap.get(key);
if (template == null) {
template = engine.getTemplate(path, Velocity.ENCODING_DEFAULT);
templateMap.put(key, template);
}
template.merge(context, sw);
} catch (Exception e) {
statusHandler.handle(Priority.SIGNIFICANT,
"Error while generating velocity text", e);
}
engineMap.put(vmFile.getAbsolutePath(), engine);
return sw.toString();
}
}

View file

@ -8,8 +8,7 @@ Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.cwa, com.raytheon.uf.common.dataplugin.cwa,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,
com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata,

View file

@ -18,8 +18,7 @@ Require-Bundle: org.eclipse.core.runtime,
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.colormap,
com.raytheon.uf.common.colormap,
com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,
com.raytheon.uf.common.localization, com.raytheon.uf.common.localization,

View file

@ -30,9 +30,8 @@ import java.util.List;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
import com.raytheon.uf.common.topo.ITopoQuery; import com.raytheon.uf.common.topo.TopoQuery;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.topo.TopoQuery;
/** /**
* *
@ -45,6 +44,8 @@ import com.raytheon.uf.viz.core.topo.TopoQuery;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jul 26, 2011 bsteffen Initial creation * Jul 26, 2011 bsteffen Initial creation
* Feb 15, 2013 1638 mschenke Got rid of viz/edex topo classes
* and moved into common
* *
* </pre> * </pre>
* *
@ -84,7 +85,7 @@ public class GribNSharpResourceData extends D2DNSharpResourceData {
// If stationElevation is not set, set it to the topo value. // If stationElevation is not set, set it to the topo value.
if (profileList.getStationElevation() == NcSoundingProfile.MISSING) { if (profileList.getStationElevation() == NcSoundingProfile.MISSING) {
if (surfaceElevation == NcSoundingProfile.MISSING) { if (surfaceElevation == NcSoundingProfile.MISSING) {
ITopoQuery topoQuery = TopoQuery.getInstance(); TopoQuery topoQuery = TopoQuery.getInstance();
if (topoQuery != null) { if (topoQuery != null) {
surfaceElevation = (float) topoQuery surfaceElevation = (float) topoQuery
.getHeight(coordinate); .getHeight(coordinate);

View file

@ -39,7 +39,6 @@ import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.TableColumn; import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.TableItem; import org.eclipse.swt.widgets.TableItem;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.datadelivery.registry.DataSet; import com.raytheon.uf.common.datadelivery.registry.DataSet;
import com.raytheon.uf.common.datadelivery.registry.GriddedDataSet; import com.raytheon.uf.common.datadelivery.registry.GriddedDataSet;
import com.raytheon.uf.common.datadelivery.registry.Parameter; import com.raytheon.uf.common.datadelivery.registry.Parameter;
@ -48,6 +47,7 @@ import com.raytheon.uf.common.registry.handler.RegistryHandlerException;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.viz.core.notification.NotificationMessage; import com.raytheon.uf.viz.core.notification.NotificationMessage;
import com.raytheon.uf.viz.datadelivery.common.ui.IDialogClosed; import com.raytheon.uf.viz.datadelivery.common.ui.IDialogClosed;
import com.raytheon.uf.viz.datadelivery.common.ui.SortImages.SortDirection; import com.raytheon.uf.viz.datadelivery.common.ui.SortImages.SortDirection;
@ -81,6 +81,7 @@ import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils.TABLE_TYPE;
* Aug 30, 2012 1120 jpiatt Added clickSort flag. * Aug 30, 2012 1120 jpiatt Added clickSort flag.
* Oct 05, 2012 1241 djohnson Replace RegistryManager calls with registry handler calls. * Oct 05, 2012 1241 djohnson Replace RegistryManager calls with registry handler calls.
* Jan 10, 2013 1346 mpduff Add additional information to the dataset details output. * Jan 10, 2013 1346 mpduff Add additional information to the dataset details output.
* Feb 15, 2013 1638 mschenke Moved Util.EOL into FileUtil
* *
* </pre> * </pre>
* *
@ -293,27 +294,27 @@ public class BrowserTableComp extends TableComp implements IDialogClosed {
StringBuilder sb = new StringBuilder(150); StringBuilder sb = new StringBuilder(150);
sb.append("Dataset Name: ") sb.append("Dataset Name: ")
.append(validateString(dataSet.getDataSetName())) .append(validateString(dataSet.getDataSetName()))
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("Dataset Type: ").append(dataSet.getDataSetType().toString()) sb.append("Dataset Type: ").append(dataSet.getDataSetType().toString())
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("Coverage: ").append(Util.EOL); sb.append("Coverage: ").append(FileUtil.EOL);
sb.append("--- Projection : ") sb.append("--- Projection : ")
.append(validateString(dataSet.getCoverage().getProjection())) .append(validateString(dataSet.getCoverage().getProjection()))
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("--- UpperLeft (Lon) : ") sb.append("--- UpperLeft (Lon) : ")
.append(dataSet.getCoverage().getUpperLeft().x) .append(dataSet.getCoverage().getUpperLeft().x)
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("--- UpperLeft (Lat) : ") sb.append("--- UpperLeft (Lat) : ")
.append(dataSet.getCoverage().getUpperLeft().y) .append(dataSet.getCoverage().getUpperLeft().y)
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("--- LowerRight (Lon): ") sb.append("--- LowerRight (Lon): ")
.append(dataSet.getCoverage().getLowerRight().x) .append(dataSet.getCoverage().getLowerRight().x)
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("--- LowerRight (Lat): ") sb.append("--- LowerRight (Lat): ")
.append(dataSet.getCoverage().getLowerRight().y) .append(dataSet.getCoverage().getLowerRight().y)
.append(Util.EOL); .append(FileUtil.EOL);
sb.append("\n"); sb.append("\n");
if (dataSet instanceof GriddedDataSet) { if (dataSet instanceof GriddedDataSet) {
@ -325,7 +326,7 @@ public class BrowserTableComp extends TableComp implements IDialogClosed {
for (int i : cycleList) { for (int i : cycleList) {
sb.append(i).append(" "); sb.append(i).append(" ");
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
} }
List<Integer> fcstHrs = new ArrayList<Integer>( List<Integer> fcstHrs = new ArrayList<Integer>(
@ -340,19 +341,19 @@ public class BrowserTableComp extends TableComp implements IDialogClosed {
hrBuffer.append(i).append(" "); hrBuffer.append(i).append(" ");
// wrap at 50 characters // wrap at 50 characters
if (hrBuffer.length() > 50) { if (hrBuffer.length() > 50) {
sb.append(hrBuffer).append(Util.EOL); sb.append(hrBuffer).append(FileUtil.EOL);
sb.append(" "); sb.append(" ");
hrBuffer.setLength(0); hrBuffer.setLength(0);
} }
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
} }
} }
Map<String, Parameter> paramMap = dataSet.getParameters(); Map<String, Parameter> paramMap = dataSet.getParameters();
if (!paramMap.isEmpty()) { if (!paramMap.isEmpty()) {
sb.append("Parameters:").append(Util.EOL); sb.append("Parameters:").append(FileUtil.EOL);
List<String> paramList = new ArrayList<String>(paramMap.keySet()); List<String> paramList = new ArrayList<String>(paramMap.keySet());
Collections.sort(paramList, String.CASE_INSENSITIVE_ORDER); Collections.sort(paramList, String.CASE_INSENSITIVE_ORDER);
@ -367,7 +368,7 @@ public class BrowserTableComp extends TableComp implements IDialogClosed {
for (String param : paramList) { for (String param : paramList) {
sb.append("--- ").append(param); sb.append("--- ").append(param);
sb.append(getSpacing(max + 1, param)); sb.append(getSpacing(max + 1, param));
sb.append(paramMap.get(param).getDefinition()).append(Util.EOL); sb.append(paramMap.get(param).getDefinition()).append(FileUtil.EOL);
} }
} }

View file

@ -28,8 +28,8 @@ import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElements; import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlRootElement;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.datadelivery.registry.Ensemble; import com.raytheon.uf.common.datadelivery.registry.Ensemble;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.viz.datadelivery.common.xml.AreaXML; import com.raytheon.uf.viz.datadelivery.common.xml.AreaXML;
import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml; import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml;
@ -44,6 +44,7 @@ import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Mar 29, 2012 mpduff Initial creation * Mar 29, 2012 mpduff Initial creation
* Aug 10, 2012 1022 djohnson {@link SubsetXML} requires provider name. * Aug 10, 2012 1022 djohnson {@link SubsetXML} requires provider name.
* Feb 15, 2013 1638 mschenke Moved Util.EOL into FileUtil
* *
* </pre> * </pre>
* *
@ -191,15 +192,15 @@ public class SubsetXML<TIMEXML extends TimeXML> implements IDisplayXml {
@Override @Override
public String getDisplayXmlString() { public String getDisplayXmlString() {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("Subset Name : ").append(subsetName).append(Util.EOL); sb.append("Subset Name : ").append(subsetName).append(FileUtil.EOL);
sb.append("Dataset Name: ").append(datasetName).append(Util.EOL); sb.append("Dataset Name: ").append(datasetName).append(FileUtil.EOL);
sb.append("Provider: " + providerName); sb.append("Provider: " + providerName);
for (VerticalXML v: verticalList) { for (VerticalXML v: verticalList) {
sb.append(v.getDisplayXmlString()); sb.append(v.getDisplayXmlString());
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
sb.append(area.getDisplayXmlString()); sb.append(area.getDisplayXmlString());

View file

@ -29,8 +29,8 @@ import javax.xml.bind.annotation.XmlElements;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.common.util.CollectionUtil;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml; import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml;
/** /**
@ -44,6 +44,7 @@ import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Mar 29, 2012 mpduff Initial creation * Mar 29, 2012 mpduff Initial creation
* Aug 21, 2012 0743 djohnson Add specificDate, use append rather than concatenate strings. * Aug 21, 2012 0743 djohnson Add specificDate, use append rather than concatenate strings.
* Feb 15, 2013 1638 mschenke Moved Util.EOL into FileUtil
* *
* </pre> * </pre>
* *
@ -126,29 +127,29 @@ public abstract class TimeXML implements IDisplayXml {
public String getDisplayXmlString() { public String getDisplayXmlString() {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append(Util.EOL); sb.append(FileUtil.EOL);
if (latestData) { if (latestData) {
sb.append("Requesting Latest Data"); sb.append("Requesting Latest Data");
} else { } else {
sb.append(getNonLatestData()); sb.append(getNonLatestData());
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
if (!CollectionUtil.isNullOrEmpty(cycleList)) { if (!CollectionUtil.isNullOrEmpty(cycleList)) {
sb.append("Cycles:").append(Util.EOL); sb.append("Cycles:").append(FileUtil.EOL);
for (Integer cycle : cycleList) { for (Integer cycle : cycleList) {
sb.append(" ").append( sb.append(" ").append(
StringUtils.leftPad(cycle.toString(), 2, '0')); StringUtils.leftPad(cycle.toString(), 2, '0'));
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
} }
if (!CollectionUtil.isNullOrEmpty(fcstHourList)) { if (!CollectionUtil.isNullOrEmpty(fcstHourList)) {
sb.append("Forecast Hours:").append(Util.EOL); sb.append("Forecast Hours:").append(FileUtil.EOL);
for (String fcst: fcstHourList) { for (String fcst: fcstHourList) {
sb.append(" ").append(fcst); sb.append(" ").append(fcst);
} }
sb.append(Util.EOL); sb.append(FileUtil.EOL);
} }
return sb.toString(); return sb.toString();
} }

View file

@ -42,13 +42,6 @@
<import plugin="javax.measure" version="1.0.0" match="greaterOrEqual"/> <import plugin="javax.measure" version="1.0.0" match="greaterOrEqual"/>
</requires> </requires>
<plugin
id="com.raytheon.uf.edex.site"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.apache.activemq" id="org.apache.activemq"
download-size="0" download-size="0"
@ -194,13 +187,6 @@
install-size="0" install-size="0"
version="0.0.0"/> version="0.0.0"/>
<plugin
id="com.raytheon.edex.common"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="com.raytheon.uf.common.dataplugin" id="com.raytheon.uf.common.dataplugin"
download-size="0" download-size="0"
@ -337,13 +323,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.raytheon.uf.edex.topo"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="com.raytheon.uf.common.auth" id="com.raytheon.uf.common.auth"
download-size="0" download-size="0"
@ -406,20 +385,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.raytheon.uf.edex.core"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="com.raytheon.uf.edex.database"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="com.raytheon.uf.common.spatial" id="com.raytheon.uf.common.spatial"
download-size="0" download-size="0"
@ -507,4 +472,11 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.raytheon.uf.common.units"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature> </feature>

View file

@ -35,7 +35,7 @@ import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.uf.common.dataplugin.annotations.DataURI;
import com.raytheon.uf.common.dataplugin.fog.FogRecord.FOG_THREAT; import com.raytheon.uf.common.dataplugin.fog.FogRecord.FOG_THREAT;
import com.raytheon.uf.common.monitor.MonitorAreaUtils; import com.raytheon.uf.common.monitor.MonitorAreaUtils;
import com.raytheon.uf.common.monitor.config.FogMonitorConfigurationManager; import com.raytheon.uf.common.monitor.config.FogMonitorConfigurationManager;
@ -84,6 +84,7 @@ import com.vividsolutions.jts.geom.Geometry;
* Jun 16, 2012 14386 zhao Auto update County/Zone Table when new fog threat data arrives * Jun 16, 2012 14386 zhao Auto update County/Zone Table when new fog threat data arrives
* Oct 26, 2012 1280 skorolev Made changes for non-blocking dialog and changed HashMap to Map * Oct 26, 2012 1280 skorolev Made changes for non-blocking dialog and changed HashMap to Map
* Oct.31 2012 1297 skorolev Clean code * Oct.31 2012 1297 skorolev Clean code
* Feb 15, 2013 1638 mschenke Changed code to reference DataURI.SEPARATOR instead of URIFilter
* *
* </pre> * </pre>
* *
@ -144,11 +145,11 @@ public class FogMonitor extends ObsMonitor implements IFogResourceListener {
private Geometry geoAdjAreas = null; private Geometry geoAdjAreas = null;
/** Data URI pattern for fog **/ /** Data URI pattern for fog **/
private final Pattern fogPattern = Pattern.compile(URIFilter.uriSeperator private final Pattern fogPattern = Pattern.compile(DataURI.SEPARATOR
+ OBS + URIFilter.uriSeperator + wildCard + URIFilter.uriSeperator + OBS + DataURI.SEPARATOR + wildCard + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + cwa + URIFilter.uriSeperator + wildCard + DataURI.SEPARATOR + cwa + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + wildCard + wildCard + DataURI.SEPARATOR + wildCard
+ URIFilter.uriSeperator + wildCard + URIFilter.uriSeperator + DataURI.SEPARATOR + wildCard + DataURI.SEPARATOR
+ "fog"); + "fog");
/** /**

View file

@ -31,7 +31,7 @@ import org.eclipse.swt.graphics.RGB;
import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.uf.common.dataplugin.annotations.DataURI;
import com.raytheon.uf.common.dataplugin.fog.FogRecord; import com.raytheon.uf.common.dataplugin.fog.FogRecord;
import com.raytheon.uf.common.dataplugin.fog.FogRecord.FOG_THREAT; import com.raytheon.uf.common.dataplugin.fog.FogRecord.FOG_THREAT;
import com.raytheon.uf.common.monitor.MonitorAreaUtils; import com.raytheon.uf.common.monitor.MonitorAreaUtils;
@ -82,6 +82,7 @@ import com.vividsolutions.jts.geom.Geometry;
* May 15, 2012 14510 zhao Modified processing at startup * May 15, 2012 14510 zhao Modified processing at startup
* Oct 26, 2012 1280 skorolev Clean code and made changes for non-blocking dialog * Oct 26, 2012 1280 skorolev Clean code and made changes for non-blocking dialog
* Oct 30, 2012 1297 skorolev Changed HashMap to Map * Oct 30, 2012 1297 skorolev Changed HashMap to Map
* Feb 15, 2013 1638 mschenke Changed code to reference DataURI.SEPARATOR instead of URIFilter
* *
* </pre> * </pre>
* *
@ -147,12 +148,12 @@ public class SafeSeasMonitor extends ObsMonitor implements ISSResourceListener {
/** Pattern for SAFESEAS **/ /** Pattern for SAFESEAS **/
private final Pattern ssPattern = Pattern private final Pattern ssPattern = Pattern
.compile(URIFilter.uriSeperator + OBS + URIFilter.uriSeperator .compile(DataURI.SEPARATOR + OBS + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + wildCard + wildCard + DataURI.SEPARATOR + wildCard
+ URIFilter.uriSeperator + cwa + URIFilter.uriSeperator + DataURI.SEPARATOR + cwa + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + wildCard + wildCard + DataURI.SEPARATOR + wildCard
+ URIFilter.uriSeperator + wildCard + DataURI.SEPARATOR + wildCard
+ URIFilter.uriSeperator + "ss"); + DataURI.SEPARATOR + "ss");
/** /**
* Private constructor, singleton * Private constructor, singleton

View file

@ -29,7 +29,7 @@ import java.util.regex.Pattern;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.uf.common.dataplugin.annotations.DataURI;
import com.raytheon.uf.common.monitor.config.SnowMonitorConfigurationManager; import com.raytheon.uf.common.monitor.config.SnowMonitorConfigurationManager;
import com.raytheon.uf.common.monitor.data.CommonConfig; import com.raytheon.uf.common.monitor.data.CommonConfig;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
@ -72,6 +72,7 @@ import com.raytheon.viz.alerts.observers.ProductAlertObserver;
* May 15, 2012 14510 zhao Modified processing at startup * May 15, 2012 14510 zhao Modified processing at startup
* Oct 26, 2012 1280 skorolev Clean code and made changes for non-blocking ZoneTableDlg * Oct 26, 2012 1280 skorolev Clean code and made changes for non-blocking ZoneTableDlg
* Nov. 1, 2012 1297 skorolev Changed HashMap to Map and clean code * Nov. 1, 2012 1297 skorolev Changed HashMap to Map and clean code
* Feb 15, 2013 1638 mschenke Changed code to reference DataURI.SEPARATOR instead of URIFilter
* *
* </pre> * </pre>
* *
@ -116,11 +117,11 @@ public class SnowMonitor extends ObsMonitor {
private final List<ISnowResourceListener> snowResources = new ArrayList<ISnowResourceListener>(); private final List<ISnowResourceListener> snowResources = new ArrayList<ISnowResourceListener>();
/** Pattern for SNOW **/ /** Pattern for SNOW **/
private final Pattern snowPattern = Pattern.compile(URIFilter.uriSeperator private final Pattern snowPattern = Pattern.compile(DataURI.SEPARATOR
+ OBS + URIFilter.uriSeperator + wildCard + URIFilter.uriSeperator + OBS + DataURI.SEPARATOR + wildCard + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + cwa + URIFilter.uriSeperator + wildCard + DataURI.SEPARATOR + cwa + DataURI.SEPARATOR
+ wildCard + URIFilter.uriSeperator + wildCard + wildCard + DataURI.SEPARATOR + wildCard
+ URIFilter.uriSeperator + wildCard + URIFilter.uriSeperator + DataURI.SEPARATOR + wildCard + DataURI.SEPARATOR
+ "snow"); + "snow");
/** /**

View file

@ -8,7 +8,6 @@ Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.raytheon.edex.db.dao, Import-Package: com.raytheon.edex.db.dao,
com.raytheon.edex.scriptfactory,
com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.ncwf, com.raytheon.uf.common.dataplugin.ncwf,
com.raytheon.uf.common.dataplugin.persist, com.raytheon.uf.common.dataplugin.persist,

View file

@ -25,7 +25,6 @@ Export-Package: com.raytheon.uf.viz.productbrowser;
com.raytheon.uf.viz.productbrowser.actions;uses:="org.eclipse.core.commands", com.raytheon.uf.viz.productbrowser.actions;uses:="org.eclipse.core.commands",
com.raytheon.uf.viz.productbrowser.bookmarks, com.raytheon.uf.viz.productbrowser.bookmarks,
com.raytheon.uf.viz.productbrowser.xml com.raytheon.uf.viz.productbrowser.xml
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.message.response,
com.raytheon.uf.common.message.response,
com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization,
com.raytheon.uf.viz.core.catalog com.raytheon.uf.viz.core.catalog

View file

@ -32,6 +32,5 @@ Import-Package: com.raytheon.edex.meteoLib,
com.raytheon.uf.viz.core.datastructure, com.raytheon.uf.viz.core.datastructure,
com.raytheon.uf.viz.core.exception, com.raytheon.uf.viz.core.exception,
com.raytheon.uf.viz.core.status, com.raytheon.uf.viz.core.status,
com.raytheon.uf.viz.core.topo,
com.raytheon.viz.core.map, com.raytheon.viz.core.map,
com.raytheon.viz.pointdata com.raytheon.viz.pointdata

View file

@ -41,9 +41,9 @@ import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.DataTime;
import com.raytheon.uf.common.topo.TopoQuery;
import com.raytheon.uf.viz.core.datastructure.DataCubeContainer; import com.raytheon.uf.viz.core.datastructure.DataCubeContainer;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.topo.TopoQuery;
import com.raytheon.uf.viz.sounding.SoundingParams; import com.raytheon.uf.viz.sounding.SoundingParams;
import com.raytheon.viz.core.map.GeoUtil; import com.raytheon.viz.core.map.GeoUtil;
import com.vividsolutions.jts.geom.GeometryFactory; import com.vividsolutions.jts.geom.GeometryFactory;
@ -57,6 +57,8 @@ import com.vividsolutions.jts.geom.GeometryFactory;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Dec 15, 2009 mschenke Initial creation * Dec 15, 2009 mschenke Initial creation
* Feb 15, 2013 1638 mschenke Got rid of viz/edex topo classes
* and moved into common
* *
* </pre> * </pre>
* *

View file

@ -12,8 +12,7 @@ Require-Bundle: org.eclipse.ui,
org.geotools;bundle-version="2.6.4" org.geotools;bundle-version="2.6.4"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.tcs, com.raytheon.uf.common.dataplugin.tcs,
com.raytheon.uf.common.dataplugin.tcs.util, com.raytheon.uf.common.dataplugin.tcs.util,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,

View file

@ -17,8 +17,7 @@ Require-Bundle: org.eclipse.ui,
com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174" com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.localization,
com.raytheon.uf.common.localization,
com.raytheon.uf.common.localization.exception, com.raytheon.uf.common.localization.exception,
com.raytheon.uf.common.localization.msgs, com.raytheon.uf.common.localization.msgs,
com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization,

View file

@ -8,8 +8,7 @@ Bundle-Vendor: RAYTHEON
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.vaa, com.raytheon.uf.common.dataplugin.vaa,
com.raytheon.uf.common.geospatial, com.raytheon.uf.common.geospatial,
com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata,

View file

@ -38,7 +38,6 @@ Import-Package: com.raytheon.edex.meteoLib,
com.raytheon.uf.viz.core.status, com.raytheon.uf.viz.core.status,
com.raytheon.uf.viz.core.style, com.raytheon.uf.viz.core.style,
com.raytheon.uf.viz.core.style.level, com.raytheon.uf.viz.core.style.level,
com.raytheon.uf.viz.core.topo,
com.raytheon.uf.viz.d2d.core.map, com.raytheon.uf.viz.d2d.core.map,
com.raytheon.uf.viz.d2d.ui, com.raytheon.uf.viz.d2d.ui,
com.raytheon.uf.viz.xy, com.raytheon.uf.viz.xy,

View file

@ -36,6 +36,7 @@ import com.raytheon.uf.common.geospatial.SpatialQueryResult;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.topo.TopoQuery;
import com.raytheon.uf.viz.core.DrawableString; import com.raytheon.uf.viz.core.DrawableString;
import com.raytheon.uf.viz.core.IGraphicsTarget; import com.raytheon.uf.viz.core.IGraphicsTarget;
import com.raytheon.uf.viz.core.IGraphicsTarget.HorizontalAlignment; import com.raytheon.uf.viz.core.IGraphicsTarget.HorizontalAlignment;
@ -47,7 +48,6 @@ import com.raytheon.uf.viz.core.drawables.PaintProperties;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.rsc.capabilities.ColorableCapability; import com.raytheon.uf.viz.core.rsc.capabilities.ColorableCapability;
import com.raytheon.uf.viz.core.style.level.Level.LevelType; import com.raytheon.uf.viz.core.style.level.Level.LevelType;
import com.raytheon.uf.viz.core.topo.TopoQuery;
import com.raytheon.uf.viz.xy.crosssection.display.CrossSectionDescriptor; import com.raytheon.uf.viz.xy.crosssection.display.CrossSectionDescriptor;
import com.raytheon.uf.viz.xy.crosssection.rsc.AbstractCrossSectionResource; import com.raytheon.uf.viz.xy.crosssection.rsc.AbstractCrossSectionResource;
import com.raytheon.uf.viz.xy.graph.AbstractGraph; import com.raytheon.uf.viz.xy.graph.AbstractGraph;
@ -76,6 +76,8 @@ import com.vividsolutions.jts.geom.Point;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jul 3, 2010 bsteffen Initial creation * Jul 3, 2010 bsteffen Initial creation
* Feb 15, 2013 1638 mschenke Got rid of viz/edex topo classes
* and moved into common
* *
* </pre> * </pre>
* *

View file

@ -11,13 +11,10 @@ Require-Bundle: org.eclipse.ui,
org.apache.commons.beanutils, org.apache.commons.beanutils,
com.raytheon.viz.core, com.raytheon.viz.core,
org.geotools, org.geotools,
org.apache.activemq,
javax.jms;bundle-version="1.0.0" javax.jms;bundle-version="1.0.0"
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Export-Package: com.raytheon.viz.alerts, Export-Package: com.raytheon.viz.alerts,
com.raytheon.viz.alerts.jobs, com.raytheon.viz.alerts.jobs,
com.raytheon.viz.alerts.observers com.raytheon.viz.alerts.observers
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.raytheon.uf.common.message,
com.raytheon.uf.common.message.response

View file

@ -34,8 +34,8 @@ import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status; import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job; import org.eclipse.core.runtime.jobs.Job;
import com.raytheon.edex.msg.DataURINotificationMessage; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
import com.raytheon.edex.msg.PracticeDataURINotificationMessage; import com.raytheon.uf.common.dataplugin.message.PracticeDataURINotificationMessage;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
@ -69,6 +69,7 @@ import com.raytheon.viz.core.mode.CAVEMode;
* 05/08/08 1127 randerso Changed to implement INotificationObserver * 05/08/08 1127 randerso Changed to implement INotificationObserver
* 10/06/08 1433 chammack Updated to use VizStatus * 10/06/08 1433 chammack Updated to use VizStatus
* 01/14/2013 1442 rferrel Filter out simulated time "future" alerts. * 01/14/2013 1442 rferrel Filter out simulated time "future" alerts.
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
* </pre> * </pre>
* *
* @author bphillip * @author bphillip

View file

@ -14,8 +14,7 @@ Require-Bundle: org.eclipse.ui,
org.geotools, org.geotools,
javax.measure, javax.measure,
com.raytheon.viz.ui, com.raytheon.viz.ui,
com.raytheon.edex.meteolib, com.raytheon.edex.meteolib
com.raytheon.viz.pointdata;bundle-version="1.10.13"
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Export-Package: com.raytheon.viz.core.contours, Export-Package: com.raytheon.viz.core.contours,
com.raytheon.viz.core.contours.cmenu, com.raytheon.viz.core.contours.cmenu,

View file

@ -42,7 +42,6 @@ import org.opengis.referencing.operation.MathTransform;
import org.opengis.referencing.operation.TransformException; import org.opengis.referencing.operation.TransformException;
import com.raytheon.edex.meteoLib.Controller; import com.raytheon.edex.meteoLib.Controller;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.datastorage.records.ByteDataRecord; import com.raytheon.uf.common.datastorage.records.ByteDataRecord;
import com.raytheon.uf.common.datastorage.records.FloatDataRecord; import com.raytheon.uf.common.datastorage.records.FloatDataRecord;
import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.datastorage.records.IDataRecord;
@ -52,6 +51,8 @@ import com.raytheon.uf.common.geospatial.util.WorldWrapChecker;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.ArraysUtil;
import com.raytheon.uf.common.util.GridUtil;
import com.raytheon.uf.viz.core.DrawableString; import com.raytheon.uf.viz.core.DrawableString;
import com.raytheon.uf.viz.core.IExtent; import com.raytheon.uf.viz.core.IExtent;
import com.raytheon.uf.viz.core.IGraphicsTarget; import com.raytheon.uf.viz.core.IGraphicsTarget;
@ -88,6 +89,7 @@ import com.vividsolutions.jts.geom.Geometry;
* Apr 26, 2010 #4583 rjpeter Replaced fortran fortconbuf with java port. * Apr 26, 2010 #4583 rjpeter Replaced fortran fortconbuf with java port.
* Mar 4, 2011 #7747 njensen Cached subgrid envelopes * Mar 4, 2011 #7747 njensen Cached subgrid envelopes
* Jul 9, 2012 DR 14940 M. Porricelli Adjust arrow size for streamlines * Jul 9, 2012 DR 14940 M. Porricelli Adjust arrow size for streamlines
* Feb 15, 2013 1638 mschenke Moved edex.common Util functions into common Util
* </pre> * </pre>
* *
* @author chammack * @author chammack
@ -97,9 +99,9 @@ public class ContourSupport {
private static final transient IUFStatusHandler statusHandler = UFStatus private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(ContourSupport.class); .getHandler(ContourSupport.class);
private static float smallestContourValue = Util.GRID_FILL_VALUE - 1; private static float smallestContourValue = GridUtil.GRID_FILL_VALUE - 1;
private static float largestContourValue = Util.GRID_FILL_VALUE + 1; private static float largestContourValue = GridUtil.GRID_FILL_VALUE + 1;
private static LRUMap subgridCache = new LRUMap(10); private static LRUMap subgridCache = new LRUMap(10);
@ -328,7 +330,7 @@ public class ContourSupport {
for (int i = 0; i < szX; i++) { for (int i = 0; i < szX; i++) {
float val = data1D[((int) sz[0] * (j + minY)) + (i + minX)]; float val = data1D[((int) sz[0] * (j + minY)) + (i + minX)];
if (Float.isNaN(val)) { if (Float.isNaN(val)) {
val = Util.GRID_FILL_VALUE; val = GridUtil.GRID_FILL_VALUE;
} }
subgriddedData[i][j] = val; subgriddedData[i][j] = val;
} }
@ -364,7 +366,7 @@ public class ContourSupport {
float min = Float.POSITIVE_INFINITY; float min = Float.POSITIVE_INFINITY;
float max = Float.NEGATIVE_INFINITY; float max = Float.NEGATIVE_INFINITY;
for (float f : data1D) { for (float f : data1D) {
if (f != Util.GRID_FILL_VALUE && !Float.isNaN(f)) { if (f != GridUtil.GRID_FILL_VALUE && !Float.isNaN(f)) {
min = Math.min(min, f); min = Math.min(min, f);
max = Math.max(max, f); max = Math.max(max, f);
} }
@ -1093,8 +1095,8 @@ public class ContourSupport {
} }
} }
Util.flipVert(adjustedUw, szY, szX); ArraysUtil.flipVert(adjustedUw, szY, szX);
Util.flipVert(adjustedVw, szY, szX); ArraysUtil.flipVert(adjustedVw, szY, szX);
int arrSz = Math.max(10 * adjustedUw.length, uW.length); int arrSz = Math.max(10 * adjustedUw.length, uW.length);

View file

@ -5,7 +5,6 @@ Bundle-SymbolicName: com.raytheon.viz.core.gl;singleton:=true
Bundle-Version: 1.12.1174.qualifier Bundle-Version: 1.12.1174.qualifier
Bundle-Activator: com.raytheon.viz.core.gl.Activator Bundle-Activator: com.raytheon.viz.core.gl.Activator
Bundle-Vendor: Raytheon Bundle-Vendor: Raytheon
Eclipse-RegisterBuddy: net.sf.ehcache
Eclipse-BuddyPolicy: ext, registered Eclipse-BuddyPolicy: ext, registered
Require-Bundle: org.eclipse.ui, Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime, org.eclipse.core.runtime,

View file

@ -5,27 +5,31 @@ Bundle-SymbolicName: com.raytheon.viz.core;singleton:=true
Bundle-Version: 1.12.1174.qualifier Bundle-Version: 1.12.1174.qualifier
Require-Bundle: org.eclipse.ui, Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime, org.eclipse.core.runtime,
org.geotools,
org.apache.commons.lang, org.apache.commons.lang,
org.apache.commons.beanutils, org.apache.commons.beanutils,
org.apache.http, org.apache.http,
javax.vecmath, javax.vecmath,
org.apache.commons.configuration, org.apache.commons.configuration,
org.apache.activemq,
javax.measure, javax.measure,
org.apache.velocity, org.apache.velocity,
org.jep, org.jep,
javax.persistence, javax.persistence,
net.sf.cglib, net.sf.cglib,
com.facebook.thrift, com.facebook.thrift,
com.raytheon.edex.common;visibility:=reexport,
com.raytheon.uf.common.localization;visibility:=reexport, com.raytheon.uf.common.localization;visibility:=reexport,
com.raytheon.uf.common.serialization;visibility:=reexport, com.raytheon.uf.common.serialization;visibility:=reexport,
com.raytheon.uf.common.geospatial;bundle-version="1.12.1174";visibility:=reexport,
com.raytheon.uf.common.time;bundle-version="1.12.1174";visibility:=reexport,
com.raytheon.uf.common.datastorage;bundle-version="1.12.1174";visibility:=reexport,
com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174";visibility:=reexport,
com.raytheon.uf.common.util;bundle-version="1.12.1174";visibility:=reexport,
com.raytheon.uf.common.units;bundle-version="1.0.0";visibility:=reexport,
com.raytheon.uf.viz.core;visibility:=reexport, com.raytheon.uf.viz.core;visibility:=reexport,
com.raytheon.uf.common.colormap;bundle-version="1.0.0", com.raytheon.uf.common.colormap;bundle-version="1.0.0",
com.raytheon.uf.common.serialization.comm, com.raytheon.uf.common.serialization.comm,
org.eclipse.core.expressions, org.eclipse.core.expressions,
com.raytheon.uf.viz.application;bundle-version="1.0.0" com.raytheon.uf.viz.application;bundle-version="1.0.0",
com.raytheon.uf.common.topo;bundle-version="1.12.1174"
Eclipse-BuddyPolicy: ext, registered, global Eclipse-BuddyPolicy: ext, registered, global
Eclipse-RegisterBuddy: org.apache.velocity, com.raytheon.edex.common, com.raytheon.uf.common.serialization, com.raytheon.uf.common.status Eclipse-RegisterBuddy: org.apache.velocity, com.raytheon.edex.common, com.raytheon.uf.common.serialization, com.raytheon.uf.common.status
Export-Package: Export-Package:
@ -49,7 +53,4 @@ Export-Package:
Bundle-Vendor: Raytheon Bundle-Vendor: Raytheon
Bundle-Activator: com.raytheon.viz.core.CorePlugin Bundle-Activator: com.raytheon.viz.core.CorePlugin
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Import-Package: com.raytheon.uf.common.colormap,
com.raytheon.uf.common.time,
com.raytheon.uf.common.topo
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6

View file

@ -28,7 +28,6 @@ import javax.measure.unit.Unit;
import org.apache.commons.lang.ArrayUtils; import org.apache.commons.lang.ArrayUtils;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginDataObject;
import com.raytheon.uf.common.datastorage.DataStoreFactory; import com.raytheon.uf.common.datastorage.DataStoreFactory;
import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.IDataStore;
@ -37,6 +36,7 @@ import com.raytheon.uf.common.datastorage.records.IDataRecord;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.GridUtil;
import com.raytheon.uf.viz.core.datastructure.DataCubeContainer; import com.raytheon.uf.viz.core.datastructure.DataCubeContainer;
import com.raytheon.uf.viz.core.drawables.ColorMapParameters; import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
@ -61,6 +61,7 @@ import com.raytheon.viz.core.style.image.ImagePreferences;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jul 25, 2007 chammack Initial Creation. * Jul 25, 2007 chammack Initial Creation.
* Mar 26, 2009 2086 jsanchez Added a entityList to the match criteria. * Mar 26, 2009 2086 jsanchez Added a entityList to the match criteria.
* Feb 15, 2013 1638 mschenke Moved GRID_FILL_VALUE from edex.common Util into GridUtil
* *
* </pre> * </pre>
* *
@ -137,7 +138,7 @@ public class ColorMapParameterFactory {
min = Float.POSITIVE_INFINITY; min = Float.POSITIVE_INFINITY;
max = Float.NEGATIVE_INFINITY; max = Float.NEGATIVE_INFINITY;
for (Number num : numArray) { for (Number num : numArray) {
if (num.floatValue() != Util.GRID_FILL_VALUE if (num.floatValue() != GridUtil.GRID_FILL_VALUE
&& !Float.isNaN(num.floatValue())) { && !Float.isNaN(num.floatValue())) {
colormapMin = min = Math.min(min, num.floatValue()); colormapMin = min = Math.min(min, num.floatValue());
colormapMax = max = Math.max(max, num.floatValue()); colormapMax = max = Math.max(max, num.floatValue());
@ -145,7 +146,7 @@ public class ColorMapParameterFactory {
} }
if (min == Float.POSITIVE_INFINITY) { if (min == Float.POSITIVE_INFINITY) {
colormapMin = min = colormapMax = max = Util.GRID_FILL_VALUE; colormapMin = min = colormapMax = max = GridUtil.GRID_FILL_VALUE;
} }
// Add 25% buffer (same strategy as D2D) // Add 25% buffer (same strategy as D2D)

View file

@ -14,4 +14,14 @@
<!-- threshold = 32*1024*1024 bytes (32 MB)--> <!-- threshold = 32*1024*1024 bytes (32 MB)-->
</bean> </bean>
<!-- FIXME: Uncomment to re-enable cache at CAVE startup
<bean id="gfeDiskCache" class="com.raytheon.uf.common.cache.disk.DiskCache" init-method="activateCache">
<property name="name" value="GFE"/> -->
<!-- TODO: Make this an environment variable that's passed in -->
<!-- Cache directory relative to caveData/etc/workstation/${host} default is diskCache, will be followed by ${NAME}/${PID} -->
<!-- <property name="baseCacheDir" value="diskCache"/> -->
<!-- Number of grids, to always allow in memory -->
<!-- <property name="sizeMemCacheMap" value="150"/>
</bean> -->
</beans> </beans>

View file

@ -37,7 +37,6 @@ import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.ui.PlatformUI; import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.commands.ICommandService; import org.eclipse.ui.commands.ICommandService;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridParmInfo; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridParmInfo;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID;
@ -53,6 +52,7 @@ import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.common.time.SimulatedTime;
import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.common.time.util.TimeUtil;
import com.raytheon.viz.core.mode.CAVEMode; import com.raytheon.viz.core.mode.CAVEMode;
import com.raytheon.viz.gfe.Activator; import com.raytheon.viz.gfe.Activator;
import com.raytheon.viz.gfe.GFEException; import com.raytheon.viz.gfe.GFEException;
@ -81,6 +81,7 @@ import com.raytheon.viz.gfe.core.wxvalue.WxValue;
* 02/23/2012 1876 dgilling Implement missing clearUndoParmList * 02/23/2012 1876 dgilling Implement missing clearUndoParmList
* function. * function.
* 02/13/2013 #1597 randerso Added logging to support GFE Performance metrics * 02/13/2013 #1597 randerso Added logging to support GFE Performance metrics
* Feb 15, 2013 1638 mschenke Moved Util.getUnixTime into TimeUtil
* *
* </pre> * </pre>
* *
@ -1072,7 +1073,7 @@ public class ParmOp {
PythonPreferenceStore store = Activator.getDefault() PythonPreferenceStore store = Activator.getDefault()
.getPreferenceStore(); .getPreferenceStore();
// determine time limits for skipping, round to the hour // determine time limits for skipping, round to the hour
long current = (Util.getUnixTime(SimulatedTime.getSystemTime() long current = (TimeUtil.getUnixTime(SimulatedTime.getSystemTime()
.getTime()) / 3600) * 3600; .getTime()) / 3600) * 3600;
TimeRange limitTime = TimeRange.allTimes(); TimeRange limitTime = TimeRange.allTimes();

View file

@ -29,9 +29,9 @@ import org.eclipse.jface.window.Window;
import org.eclipse.swt.SWT; import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener; import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.FontMetrics;
import org.eclipse.swt.graphics.GC; import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.graphics.RGB; import org.eclipse.swt.graphics.RGB;
import org.eclipse.swt.graphics.FontMetrics;
import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Button;
@ -41,7 +41,6 @@ import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text; import org.eclipse.swt.widgets.Text;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord.GridType; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord.GridType;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.TimeConstraints; import com.raytheon.uf.common.dataplugin.gfe.db.objects.TimeConstraints;
@ -52,6 +51,7 @@ import com.raytheon.uf.common.dataplugin.gfe.slice.VectorGridSlice;
import com.raytheon.uf.common.message.WsId; import com.raytheon.uf.common.message.WsId;
import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.common.time.SimulatedTime;
import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.common.time.util.TimeUtil;
import com.raytheon.viz.gfe.core.DataManager; import com.raytheon.viz.gfe.core.DataManager;
import com.raytheon.viz.gfe.core.UIFormat; import com.raytheon.viz.gfe.core.UIFormat;
import com.raytheon.viz.gfe.core.UIFormat.FilterType; import com.raytheon.viz.gfe.core.UIFormat.FilterType;
@ -79,6 +79,7 @@ import com.vividsolutions.jts.geom.Coordinate;
* change gridInfoText from Label to Text * change gridInfoText from Label to Text
* to make sure the info get displayed inside the screen * to make sure the info get displayed inside the screen
* and can be scrolled. * and can be scrolled.
* Feb 15, 2013 1638 mschenke Moved Util.getUnixTime into TimeUtil
* *
* </pre> * </pre>
* *
@ -314,7 +315,7 @@ public class GridInfoDialog extends CaveJFACEDialog implements
String upTime = gmtFormatter.format(h.getUpdateTime()); String upTime = gmtFormatter.format(h.getUpdateTime());
String ago = this.formatAgo(h.getUpdateTime()); String ago = this.formatAgo(h.getUpdateTime());
String pubTime = ""; String pubTime = "";
if (Util.getUnixTime(h.getPublishTime()) != 0) { if (TimeUtil.getUnixTime(h.getPublishTime()) != 0) {
pubTime = " PUBLISHED"; pubTime = " PUBLISHED";
} }
info.append(site).append(" ").append(upTime).append(" ") info.append(site).append(" ").append(upTime).append(" ")
@ -335,7 +336,7 @@ public class GridInfoDialog extends CaveJFACEDialog implements
String timeMod = "Not Modified"; String timeMod = "Not Modified";
String ago = ""; String ago = "";
String user = ""; String user = "";
if (Util.getUnixTime(h.getTimeModified()) != 0) { if (TimeUtil.getUnixTime(h.getTimeModified()) != 0) {
timeMod = gmtFormatter.format(h.getTimeModified()); timeMod = gmtFormatter.format(h.getTimeModified());
ago = this.formatAgo(h.getTimeModified()); ago = this.formatAgo(h.getTimeModified());
user = this.whoLabel(h.getModified()); user = this.whoLabel(h.getModified());

View file

@ -32,10 +32,10 @@ import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import com.raytheon.edex.util.MathUtil;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.MathUtil;
import com.raytheon.viz.gfe.core.DataManager; import com.raytheon.viz.gfe.core.DataManager;
import com.raytheon.viz.gfe.core.parm.Parm; import com.raytheon.viz.gfe.core.parm.Parm;
import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; import com.raytheon.viz.ui.dialogs.CaveJFACEDialog;
@ -50,6 +50,7 @@ import com.raytheon.viz.ui.widgets.LabeledScale;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Feb 26, 2008 Eric Babin Initial Creation * Feb 26, 2008 Eric Babin Initial Creation
* Oct 30, 2012 1298 rferrel Code clean up for non-blocking dialog. * Oct 30, 2012 1298 rferrel Code clean up for non-blocking dialog.
* Feb 15, 2013 1638 mschenke Moved edex.common MathUtil into common.util
* *
* </pre> * </pre>
* *

View file

@ -22,8 +22,8 @@ package com.raytheon.viz.gfe.edittool.contour;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DFloat; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DFloat;
import com.raytheon.uf.common.util.GridUtil;
import com.raytheon.viz.core.contours.util.ContourContainer; import com.raytheon.viz.core.contours.util.ContourContainer;
import com.raytheon.viz.core.contours.util.FortConBuf; import com.raytheon.viz.core.contours.util.FortConBuf;
import com.raytheon.viz.core.contours.util.FortConConfig; import com.raytheon.viz.core.contours.util.FortConConfig;
@ -39,6 +39,7 @@ import com.vividsolutions.jts.geom.Coordinate;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jul 29, 2009 randerso Initial creation * Jul 29, 2009 randerso Initial creation
* Feb 15, 2013 1638 mschenke Moved GRID_FILL_VALUE from edex.common Util into GridUtil
* *
* </pre> * </pre>
* *
@ -66,8 +67,8 @@ public class ContourGrid {
} }
FortConConfig config = new FortConConfig(); FortConConfig config = new FortConConfig();
config.badlo = Util.GRID_FILL_VALUE - 1; config.badlo = GridUtil.GRID_FILL_VALUE - 1;
config.badhi = Util.GRID_FILL_VALUE + 1; config.badhi = GridUtil.GRID_FILL_VALUE + 1;
config.xOffset = 0; config.xOffset = 0;
config.yOffset = 0; config.yOffset = 0;
config.labelSpacingLine = 1; config.labelSpacingLine = 1;

View file

@ -33,8 +33,7 @@ Export-Package: com.raytheon.viz.grid,
com.raytheon.viz.grid.rsc.general, com.raytheon.viz.grid.rsc.general,
com.raytheon.viz.grid.util, com.raytheon.viz.grid.util,
com.raytheon.viz.grid.xml com.raytheon.viz.grid.xml
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.colormap,
com.raytheon.uf.common.colormap,
com.raytheon.uf.common.comm, com.raytheon.uf.common.comm,
com.raytheon.uf.common.dataplugin.level, com.raytheon.uf.common.dataplugin.level,
com.raytheon.uf.common.derivparam.tree, com.raytheon.uf.common.derivparam.tree,

View file

@ -34,8 +34,8 @@ import com.raytheon.uf.common.gridcoverage.GridCoverage;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.topo.TopoQuery;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.topo.TopoQuery;
import com.raytheon.uf.viz.derivparam.data.AbstractRequestableData; import com.raytheon.uf.viz.derivparam.data.AbstractRequestableData;
import com.raytheon.viz.grid.util.SliceUtil; import com.raytheon.viz.grid.util.SliceUtil;
@ -49,6 +49,8 @@ import com.raytheon.viz.grid.util.SliceUtil;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jan 15, 2010 rjpeter Initial creation * Jan 15, 2010 rjpeter Initial creation
* Feb 15, 2013 1638 mschenke Got rid of viz/edex topo classes
* and moved into common
* *
* </pre> * </pre>
* *

View file

@ -30,10 +30,7 @@ import com.raytheon.uf.common.dataplugin.radar.util.RadarDataInterrogator;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.topo.ITopoQuery; import com.raytheon.uf.common.topo.TopoQuery;
import com.raytheon.uf.viz.core.status.StatusConstants;
import com.raytheon.uf.viz.core.topo.TopoQuery;
import com.raytheon.viz.radar.Activator;
import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Coordinate;
/** /**
@ -45,6 +42,8 @@ import com.vividsolutions.jts.geom.Coordinate;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Aug 4, 2010 mnash Initial creation * Aug 4, 2010 mnash Initial creation
* Feb 15, 2013 1638 mschenke Got rid of viz/edex topo classes
* and moved into common
* *
* </pre> * </pre>
* *
@ -92,7 +91,7 @@ public class RadarRadialInterrogator extends RadarDefaultInterrogator implements
/ 1.7e7; / 1.7e7;
double topoHeight = Double.NaN; double topoHeight = Double.NaN;
if (useTopo) { if (useTopo) {
ITopoQuery topoQuery = TopoQuery.getInstance(); TopoQuery topoQuery = TopoQuery.getInstance();
if (topoQuery != null) { if (topoQuery != null) {
topoHeight = topoQuery.getHeight(latLon); topoHeight = topoQuery.getHeight(latLon);
} else { } else {

View file

@ -44,14 +44,14 @@ import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.PlatformUI; import org.eclipse.ui.PlatformUI;
import com.raytheon.edex.util.Equations;
import com.raytheon.edex.util.UAPoint;
import com.raytheon.uf.common.geospatial.ReferencedCoordinate; import com.raytheon.uf.common.geospatial.ReferencedCoordinate;
import com.raytheon.uf.common.sounding.ParcelLift.PARCEL_TYPE; import com.raytheon.uf.common.sounding.ParcelLift.PARCEL_TYPE;
import com.raytheon.uf.common.sounding.SoundingLayer; import com.raytheon.uf.common.sounding.SoundingLayer;
import com.raytheon.uf.common.sounding.SoundingLayer.DATA_TYPE; import com.raytheon.uf.common.sounding.SoundingLayer.DATA_TYPE;
import com.raytheon.uf.common.sounding.VerticalSounding; import com.raytheon.uf.common.sounding.VerticalSounding;
import com.raytheon.uf.common.sounding.WxMath; import com.raytheon.uf.common.sounding.WxMath;
import com.raytheon.uf.common.sounding.util.Equations;
import com.raytheon.uf.common.sounding.util.UAPoint;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
@ -83,6 +83,8 @@ import com.vividsolutions.jts.geom.Coordinate;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Sep 22, 2009 randerso Initial creation * Sep 22, 2009 randerso Initial creation
* Feb 15, 2013 1638 mschenke Moved Equations/UAPoint from edex.common util
* to common.sounding
* *
* </pre> * </pre>
* *

View file

@ -26,9 +26,9 @@ import java.util.List;
import org.eclipse.swt.graphics.RGB; import org.eclipse.swt.graphics.RGB;
import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.graphics.Rectangle;
import com.raytheon.edex.util.Equations;
import com.raytheon.edex.util.UAPoint;
import com.raytheon.uf.common.sounding.WxMath; import com.raytheon.uf.common.sounding.WxMath;
import com.raytheon.uf.common.sounding.util.Equations;
import com.raytheon.uf.common.sounding.util.UAPoint;
/** /**
* *
@ -40,6 +40,8 @@ import com.raytheon.uf.common.sounding.WxMath;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 28Sept2008 #1529 dhladky initial. * 28Sept2008 #1529 dhladky initial.
* Feb 15, 2013 1638 mschenke Moved Equations/UAPoint from edex.common util
* to common.sounding
* *
* </pre> * </pre>
* *

View file

@ -30,8 +30,8 @@ import javax.measure.unit.SI;
import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.graphics.Rectangle;
import com.raytheon.edex.util.Equations; import com.raytheon.uf.common.sounding.util.Equations;
import com.raytheon.edex.util.UAPoint; import com.raytheon.uf.common.sounding.util.UAPoint;
import com.raytheon.uf.common.sounding.WxMath; import com.raytheon.uf.common.sounding.WxMath;
import com.raytheon.uf.viz.core.IGraphicsTarget; import com.raytheon.uf.viz.core.IGraphicsTarget;
import com.raytheon.uf.viz.core.PixelExtent; import com.raytheon.uf.viz.core.PixelExtent;
@ -52,6 +52,8 @@ import com.vividsolutions.jts.geom.Coordinate;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 14Jan2007 #682 ebabin Update for sampling bug. * 14Jan2007 #682 ebabin Update for sampling bug.
* 28Sept2008 #1529 dhladky separate and improve. * 28Sept2008 #1529 dhladky separate and improve.
* Feb 15, 2013 1638 mschenke Moved Equations/UAPoint from edex.common util
* to common.sounding
* *
* </pre> * </pre>
* *

View file

@ -177,11 +177,7 @@
<bean id="pluginRegistry" class="com.raytheon.uf.edex.core.dataplugin.PluginRegistry" factory-method="getInstance"/> <bean id="pluginRegistry" class="com.raytheon.uf.edex.core.dataplugin.PluginRegistry" factory-method="getInstance"/>
<bean id="dbPluginRegistry" class="com.raytheon.uf.edex.database.DatabasePluginRegistry" factory-method="getInstance"/> <bean id="dbPluginRegistry" class="com.raytheon.uf.edex.database.DatabasePluginRegistry" factory-method="getInstance"/>
<bean id="siteAwareRegistry" class="com.raytheon.uf.edex.site.SiteAwareRegistry" factory-method="getInstance"> <bean id="commonDbPluginProperties" class="com.raytheon.uf.edex.database.DatabasePluginProperties">
<property name="routeId" value="siteActivationRoute"/>
</bean>
<bean id="commonDbPluginProperties" class="com.raytheon.uf.edex.database.DatabasePluginProperties">
<property name="pluginFQN" value="com.raytheon.uf.edex.database" /> <property name="pluginFQN" value="com.raytheon.uf.edex.database" />
<property name="database" value="metadata" /> <property name="database" value="metadata" />
<property name="forceCheck" value="true" /> <property name="forceCheck" value="true" />
@ -218,9 +214,6 @@
<bean id="edexLocalizationObserver" class="com.raytheon.edex.utility.EDEXLocalizationNotificationObserver" factory-method="getInstance"/> <bean id="edexLocalizationObserver" class="com.raytheon.edex.utility.EDEXLocalizationNotificationObserver" factory-method="getInstance"/>
<bean id="siteActivateNotifyFilter"
class="com.raytheon.uf.common.site.notify.SiteActivateNotifyFilter" />
<bean id="siteActivationMonitor" class="com.raytheon.uf.edex.site.SiteActivationMonitor" factory-method="getInstance"/>
<!-- <!--
** Lets deploy some Enterprise Integration Patterns inside the ActiveMQ Message Broker ** Lets deploy some Enterprise Integration Patterns inside the ActiveMQ Message Broker
** For more details see ** For more details see
@ -249,28 +242,6 @@
<to uri="jms-generic:topic:edex.alarms.msg?deliveryPersistent=false" /> <to uri="jms-generic:topic:edex.alarms.msg?deliveryPersistent=false" />
</route> </route>
<route id="siteActivationRoute">
<from uri="jms-generic:topic:siteActivation" />
<doTry>
<bean ref="serializationUtil" method="transformFromThrift"/>
<bean ref="siteAwareRegistry" method="handleMessage" />
<doCatch>
<exception>java.lang.Throwable</exception>
<to uri="log:siteActivation?level=ERROR&amp;showBody=false&amp;showCaughtException=true&amp;showStackTrace=true"/>
</doCatch>
</doTry>
</route>
<route id="siteActivateNotify">
<from uri="vm:edex.siteActivateNotification?size=5000" />
<filter>
<method bean="siteActivateNotifyFilter" method="isSiteActivateNotification" />
<bean ref="siteActivationMonitor" method="handleNotification"/>
<bean ref="serializationUtil" method="transformToThrift" />
<to uri="jms-generic:topic:edex.alerts.siteActivate" />
</filter>
</route>
<!-- Route to periodically close any unused jms resources that have been pooled --> <!-- Route to periodically close any unused jms resources that have been pooled -->
<route id="jmsPooledResourceChecker"> <route id="jmsPooledResourceChecker">
<from uri="timer://jmsPooledResourceCheck?period=60s" /> <from uri="timer://jmsPooledResourceCheck?period=60s" />

View file

@ -31,7 +31,6 @@ import javax.xml.bind.JAXBException;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import com.raytheon.edex.msg.DataURINotificationMessage;
import com.raytheon.edex.subscription.data.ReplacementRecord; import com.raytheon.edex.subscription.data.ReplacementRecord;
import com.raytheon.edex.subscription.data.SubscriptionRecord; import com.raytheon.edex.subscription.data.SubscriptionRecord;
import com.raytheon.edex.subscription.runners.ISubscribeRunner; import com.raytheon.edex.subscription.runners.ISubscribeRunner;
@ -41,6 +40,7 @@ import com.raytheon.edex.uengine.runners.IMicroEngine;
import com.raytheon.edex.uengine.runners.MicroEngine; import com.raytheon.edex.uengine.runners.MicroEngine;
import com.raytheon.edex.util.Util; import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginDataObject;
import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
import com.raytheon.uf.common.message.Header; import com.raytheon.uf.common.message.Header;
import com.raytheon.uf.common.message.Message; import com.raytheon.uf.common.message.Message;
import com.raytheon.uf.common.message.Property; import com.raytheon.uf.common.message.Property;
@ -71,6 +71,7 @@ import com.raytheon.uf.edex.core.EdexException;
* separate log file. * separate log file.
* 30Aug2011 10581 rferrel executeScript now sending proper trigger * 30Aug2011 10581 rferrel executeScript now sending proper trigger
* argument to the engine. * argument to the engine.
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
* *
* </pre> * </pre>
* *

View file

@ -19,7 +19,6 @@ Export-Package: com.raytheon.edex.colormap,
com.raytheon.edex.msg, com.raytheon.edex.msg,
com.raytheon.edex.plugin, com.raytheon.edex.plugin,
com.raytheon.edex.plugin.factory, com.raytheon.edex.plugin.factory,
com.raytheon.edex.scriptfactory,
com.raytheon.edex.site, com.raytheon.edex.site,
com.raytheon.edex.subscription, com.raytheon.edex.subscription,
com.raytheon.edex.topo, com.raytheon.edex.topo,
@ -34,7 +33,6 @@ Require-Bundle: net.sf.ehcache,
org.jep, org.jep,
org.junit, org.junit,
org.apache.commons.logging, org.apache.commons.logging,
org.apache.commons.pool,
org.apache.commons.beanutils, org.apache.commons.beanutils,
org.apache.commons.lang, org.apache.commons.lang,
javax.measure, javax.measure,
@ -46,7 +44,6 @@ Require-Bundle: net.sf.ehcache,
com.raytheon.uf.common.localization, com.raytheon.uf.common.localization,
com.raytheon.uf.common.serialization;visibility:=reexport, com.raytheon.uf.common.serialization;visibility:=reexport,
com.raytheon.uf.common.status, com.raytheon.uf.common.status,
org.apache.activemq,
org.postgres;bundle-version="1.0.0", org.postgres;bundle-version="1.0.0",
org.apache.http, org.apache.http,
org.springframework;bundle-version="2.5.6";visibility:=reexport, org.springframework;bundle-version="2.5.6";visibility:=reexport,

View file

@ -31,6 +31,7 @@ import com.raytheon.edex.exception.ColorTableException;
import com.raytheon.uf.common.colormap.CMapFilenameFilter; import com.raytheon.uf.common.colormap.CMapFilenameFilter;
import com.raytheon.uf.common.colormap.Color; import com.raytheon.uf.common.colormap.Color;
import com.raytheon.uf.common.colormap.ColorMap; import com.raytheon.uf.common.colormap.ColorMap;
import com.raytheon.uf.common.colormap.ColorMapUtils;
import com.raytheon.uf.common.colormap.IColorMap; import com.raytheon.uf.common.colormap.IColorMap;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext;
@ -52,6 +53,7 @@ import com.raytheon.uf.common.util.FileUtil;
* Jul 26, 2007 njensen Initial creation * Jul 26, 2007 njensen Initial creation
* Aug 20, 2008 dglazesk JiBX replaced with JaXB * Aug 20, 2008 dglazesk JiBX replaced with JaXB
* Aug 20, 2008 dglazesk Updated for the new ColorMap interface * Aug 20, 2008 dglazesk Updated for the new ColorMap interface
* Feb 15, 2013 1638 mschenke Moved IndexColorModel creation to common.colormap utility
* *
* </pre> * </pre>
* *
@ -61,9 +63,9 @@ public class ColorMapManager {
private static final transient IUFStatusHandler statusHandler = UFStatus private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(ColorMapManager.class); .getHandler(ColorMapManager.class);
public static final int NUMBER_BITS = 8; public static final int NUMBER_BITS = ColorMapUtils.COLOR_MODEL_NUMBER_BITS;
public static final float MAX_VALUE = 255.0f; public static final float MAX_VALUE = ColorMapUtils.MAX_VALUE;
private static ColorMapManager instance; private static ColorMapManager instance;
@ -154,28 +156,14 @@ public class ColorMapManager {
} }
/** /**
* Builds a color model from a color map * Call {@link ColorMapUtils#buildColorModel(IColorMap)}
* *
* @param aColorMap * @param aColorMap
* @return * @return
*/ */
@Deprecated
public static IndexColorModel buildColorModel(IColorMap aColorMap) { public static IndexColorModel buildColorModel(IColorMap aColorMap) {
int size = aColorMap.getSize(); return ColorMapUtils.buildColorModel(aColorMap);
byte[] red = new byte[size];
byte[] green = new byte[size];
byte[] blue = new byte[size];
byte[] alpha = new byte[size];
List<Color> colors = aColorMap.getColors();
for (int i = 0; i < size; ++i) {
Color color = colors.get(i);
red[i] = (byte) (color.getRed() * MAX_VALUE);
green[i] = (byte) (color.getGreen() * MAX_VALUE);
blue[i] = (byte) (color.getBlue() * MAX_VALUE);
alpha[i] = (byte) (color.getAlpha() * MAX_VALUE);
}
return new IndexColorModel(NUMBER_BITS, size, red, green, blue, alpha);
} }
} }

View file

@ -1,148 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.edex.scriptfactory;
import java.io.File;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.Map;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.edex.core.EdexException;
/**
* Provides an interface to the script generation template facility
*
* Implemented as a singleton for performance reasons. Templates and context are
* both cached in memory.
*
* <pre>
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Apr 17, 2008 #1088 chammack Initial creation.
*
* </pre>
*
* @author chammack
* @version 1.0
*/
public class ScriptFactory {
/** Cached velocity engine */
private VelocityEngine velocityEngine;
/** Cached templates */
private final Map<String, Template> templateMap;
/** The singleton instance */
private static ScriptFactory instance;
/**
* Guarded constructor
*/
private ScriptFactory() {
templateMap = new HashMap<String, Template>();
}
public static synchronized ScriptFactory getInstance() {
if (instance == null) {
instance = new ScriptFactory();
}
return instance;
}
/**
* Generate a script from a template
*
*
* @param scriptTemplate
* the path to the script template to use
* @param globalScriptDir
* the path to the global macro script directory
* @param maxRecords
* the maximum number of records to return (if applicable, else
* zero)
* @param mode
* the script mode (if applicable)
* @param scriptLibrary
* the script library to use (if applicable)
* @param metaData
* the script's metadata that will be passed into the template
* @param
* @return a generated script
* @throws EdexException
* if script generation fails
*/
public synchronized String createScript(File scriptTemplate,
File globalScriptDir, int maxRecords, String mode,
String scriptLibrary, Map<String, RequestConstraint> metaData,
String logDir) throws Exception {
StringWriter sw = null;
try {
if (velocityEngine == null) {
java.util.Properties p = new java.util.Properties();
String scriptDir = globalScriptDir.getPath();
p.setProperty("file.resource.loader.class",
ScriptTemplateLoader.class.getName());
p.setProperty("file.resource.loader.path", scriptDir);
p.setProperty("velocimacro.permissions.allowInline", "true");
p.setProperty(
"velocimacro.permissions.allow.inline.to.replace.global",
"true");
p.setProperty("runtime.log",
FileUtil.join(logDir, "velocity.log"));
velocityEngine = new VelocityEngine();
velocityEngine.init(p);
}
VelocityContext context = new VelocityContext();
context.put("scriptMetadata", metaData);
context.put("maxRecords", maxRecords);
context.put("scriptLibrary", scriptLibrary);
context.put("mode", mode);
sw = new StringWriter();
String path = scriptTemplate.getAbsolutePath();
String key = path + File.pathSeparator + globalScriptDir; //Win32
Template template = templateMap.get(key);
if (template == null) {
template = velocityEngine.getTemplate(path,
Velocity.ENCODING_DEFAULT);
templateMap.put(key, template);
}
template.merge(context, sw);
} catch (Exception e) {
throw new Exception("Error generating from template", e);
}
return sw.toString();
}
}

View file

@ -1,119 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.edex.scriptfactory;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import org.apache.commons.collections.ExtendedProperties;
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.runtime.resource.Resource;
import org.apache.velocity.runtime.resource.loader.FileResourceLoader;
/**
* Provides a velocity file loading strategy that allows absolute path-based
* script loading.
*
* Traditional velocity file loader requires all scripts to be in a single
* declared directory.
*
* <pre>
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* 04/17/2008 1088 chammack Initial Creation.
* 06/01/2012 DR 14555 D. Friedman Support new version of Velocity.
*
* </pre>
*
* @author chammack
* @version 1.0
*/
public class ScriptTemplateLoader extends FileResourceLoader {
private String path;
/*
* (non-Javadoc)
*
* @see org.apache.velocity.runtime.resource.loader.FileResourceLoader#getLastModified(org.apache.velocity.runtime.resource.Resource)
*/
@Override
public long getLastModified(Resource resource) {
File file = new File(resource.getName());
return file.lastModified();
}
/*
* (non-Javadoc)
*
* @see org.apache.velocity.runtime.resource.loader.FileResourceLoader#getResourceStream(java.lang.String)
*/
@Override
public InputStream getResourceStream(String arg0)
throws ResourceNotFoundException {
try {
FileInputStream fis = new FileInputStream(resolvePath(arg0));
return fis;
} catch (FileNotFoundException e) {
throw new ResourceNotFoundException(e);
}
}
/*
* (non-Javadoc)
*
* @see org.apache.velocity.runtime.resource.loader.FileResourceLoader#init(org.apache.commons.collections.ExtendedProperties)
*/
@Override
public void init(ExtendedProperties arg0) {
this.path = arg0.getString("path");
}
/*
* (non-Javadoc)
*
* @see org.apache.velocity.runtime.resource.loader.FileResourceLoader#isSourceModified(org.apache.velocity.runtime.resource.Resource)
*/
@Override
public boolean isSourceModified(Resource arg0) {
File file = new File(arg0.getName());
return (file.lastModified() != arg0.getLastModified());
}
@Override
public boolean resourceExists(String name) {
File f = new File(resolvePath(name));
return f.isFile();
}
private String resolvePath(String arg0) {
String dir = null;
if (arg0.startsWith(File.separator) || arg0.charAt(1) == ':' ) //Win32
dir = arg0;
else
dir = this.path + File.separator + arg0;
return dir;
}
}

View file

@ -19,7 +19,7 @@
**/ **/
package com.raytheon.edex.urifilter; package com.raytheon.edex.urifilter;
import com.raytheon.edex.msg.DataURINotificationMessage; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
/** /**
* Interface IURIFilter * Interface IURIFilter
@ -33,6 +33,8 @@ import com.raytheon.edex.msg.DataURINotificationMessage;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 06Feb2009 1981 dhladky Creation. * 06Feb2009 1981 dhladky Creation.
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
*
* author dhladky * author dhladky
* @version 1.0 * @version 1.0
*/ */

View file

@ -32,7 +32,8 @@ import java.util.regex.Pattern;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import com.raytheon.edex.msg.DataURINotificationMessage; import com.raytheon.uf.common.dataplugin.annotations.DataURI;
import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.ISerializableObject;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
@ -47,9 +48,10 @@ import com.raytheon.uf.edex.core.EdexException;
* SOFTWARE HISTORY * SOFTWARE HISTORY
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 02/07/2009 1981 dhladky Initial Creation. * 02/07/2009 1981 dhladky Initial Creation.
* 05/27/2009 2037 dhladky Fixed concurrent mod * 05/27/2009 2037 dhladky Fixed concurrent mod
* exception with URI maps on removal * exception with URI maps on removal
* Feb 15, 2013 1638 mschenke Switched to use DataURI.SEPARATOR
* *
* </pre> * </pre>
* *
@ -57,7 +59,8 @@ import com.raytheon.uf.edex.core.EdexException;
* @version 1.0 * @version 1.0
*/ */
public abstract class URIFilter implements ISerializableObject { public abstract class URIFilter implements ISerializableObject {
private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(URIFilter.class); private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(URIFilter.class);
/** /**
* *
@ -110,7 +113,7 @@ public abstract class URIFilter implements ISerializableObject {
protected String[] previousURIs = null; protected String[] previousURIs = null;
/** Separator for URI's */ /** Separator for URI's */
public static final String uriSeperator = "/"; public static final String uriSeperator = DataURI.SEPARATOR;
/** sets the start for the forecast hour */ /** sets the start for the forecast hour */
public static final String forecastTimeSepStart = "("; public static final String forecastTimeSepStart = "(";

View file

@ -20,49 +20,30 @@
package com.raytheon.edex.util; package com.raytheon.edex.util;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.Closeable; import java.io.Closeable;
import java.io.File; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
import java.net.URLClassLoader; import java.net.URLClassLoader;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.ParseException; import java.text.ParseException;
import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
import java.util.TimeZone; import java.util.TimeZone;
import java.util.jar.JarFile;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import java.util.zip.DataFormatException; import java.util.zip.DataFormatException;
import java.util.zip.ZipEntry;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.ConfigurableApplicationContext;
import com.raytheon.uf.common.serialization.SerializationException;
import com.raytheon.uf.common.serialization.SerializationUtil;
import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.time.util.TimeUtil;
import com.raytheon.uf.common.util.ConvertUtil; import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.common.util.GridUtil;
/** /**
* Contains utility methods for use in common. * Contains utility methods for use in common.
@ -78,6 +59,9 @@ import com.raytheon.uf.common.util.ConvertUtil;
* 15Jul2008 1014 MW Fegan Improved logging of JiBX marshaling errors. * 15Jul2008 1014 MW Fegan Improved logging of JiBX marshaling errors.
* Aug 20, 2008 dglazesk Added functions for handling JaXB marshalling * Aug 20, 2008 dglazesk Added functions for handling JaXB marshalling
* Nov 09, 2012 1322 djohnson Add close for Spring context. * Nov 09, 2012 1322 djohnson Add close for Spring context.
* Feb 15, 2013 1638 mschenke Deleted unused functions and moved ones used by common/viz
* code into common projects
*
* </pre> * </pre>
* *
* @author mfegan * @author mfegan
@ -85,11 +69,6 @@ import com.raytheon.uf.common.util.ConvertUtil;
*/ */
public final class Util { public final class Util {
private static final NumberFormat milliFormatter = new DecimalFormat("000");
private static final NumberFormat nanoFormatter = new DecimalFormat(
"000000");
// public static final String MEMORY_FORMAT = "Used Memory: %f MB, Free // public static final String MEMORY_FORMAT = "Used Memory: %f MB, Free
// Memory: %f MB, Heap Size: %f MB, Available: %f MB, Max Memory: %f MB"; // Memory: %f MB, Heap Size: %f MB, Available: %f MB, Max Memory: %f MB";
public static final String MEMORY_FORMAT = "Used Memory: %f MB, Heap Size: %f MB, Max Memory: %f MB"; public static final String MEMORY_FORMAT = "Used Memory: %f MB, Heap Size: %f MB, Max Memory: %f MB";
@ -110,9 +89,9 @@ public final class Util {
/** /**
* Easy reference to system-dependent end of line * Easy reference to system-dependent end of line
*/ */
public static final String EOL = System.getProperty("line.separator"); public static final String EOL = FileUtil.EOL;
public static final float GRID_FILL_VALUE = -999999; public static final float GRID_FILL_VALUE = GridUtil.GRID_FILL_VALUE;
private Util() { private Util() {
// No Instantiation // No Instantiation
@ -143,39 +122,6 @@ public final class Util {
return "[" + (obj == null ? "null" : obj.toString()) + "]"; return "[" + (obj == null ? "null" : obj.toString()) + "]";
} }
/**
* Invokes the setter for the specified field on an object.
* <P>
* The {@code objClass} argument could be eliminated by calling
* {@link java.lang.Object#getClass()} on the object, but it is assumed this
* method will only be used by a client using introspection, so the client
* will already have created a {@link java.lang.Class} object. (If you know
* what the object is, you can call the appropriate methods directly and do
* not need this utility)
*
* @param object
* the object on which to invoke the setter.
* @param objClass
* the CLass object
* @param field
* the field to be set
* @param value
* the value to be set
*
* @throws NoSuchMethodException
* @throws InvocationTargetException
* @throws IllegalAccessException
*/
public static void setFieldValue(Object object, Class<?> objClass,
String field, Object value) throws NoSuchMethodException,
InvocationTargetException, IllegalAccessException {
StringBuffer setter = new StringBuffer("set").append(
field.substring(0, 1).toUpperCase()).append(field.substring(1));
Method worker = objClass.getMethod(setter.toString(),
new Class<?>[] { value.getClass() });
worker.invoke(object, new Object[] { value });
}
/** /**
* Get the filename from a fully qualified path * Get the filename from a fully qualified path
* *
@ -229,127 +175,6 @@ public final class Util {
return calendar; return calendar;
} }
/**
* Take in long representing nanoseconds, return formatted string.
*
* @param nano
* number of nanoseconds to format
* @return String representing seconds (ss.SSS:nnnnnn)
*/
public static String nano2Seconds(long nano) {
long seconds = nano / 1000000000;
long millis = (nano - (seconds * 1000000000)) / 1000000;
return seconds
+ "."
+ milliFormatter.format(millis)
+ ":"
+ nanoFormatter.format(nano - (seconds * 1000000000)
- (millis * 1000000)) + " s";
}
/**
* Creates an array of URL objects from an array of File objects.
*
* @param files
* An array of File objects
* @return An array of URL objects created from the array of file locations
*/
public static URL[] fileNameToURL(File[] files) {
ArrayList<URL> list = new ArrayList<URL>();
URL[] urls = null;
if (files != null) {
for (int counter = 0; counter < files.length; counter++) {
try {
list.add(files[counter].toURI().toURL());
} catch (MalformedURLException e) {
logger.error("Unable to create a URL for : "
+ files[counter], e);
} catch (Throwable e) {
logger.error("Unable to create a URL for : "
+ files[counter], e);
}
}
// finally, assign this list back
urls = list.toArray(new URL[] {});
}
return urls;
}
/**
* Creates an array of URL objects from an array of String objects.
*
* @param theLocations
* @return An array of URL objects created from the String array of
* locations
*/
public static URL[] fileNameToURL(String[] theLocations) {
ArrayList<URL> list = new ArrayList<URL>();
URL[] urls = null;
// if the locations value is null or empty,
// return a list empty URLs
if (theLocations == null || theLocations.length == 0) {
urls = new URL[] {};
} else {
for (int counter = 0; counter < theLocations.length; counter++) {
try {
list.add(new URL(theLocations[counter]));
} catch (MalformedURLException e) {
logger.error("Unable to create a URL for : "
+ theLocations[counter], e);
} catch (Throwable e) {
logger.error("Unable to create a URL for : "
+ theLocations[counter], e);
}
}
// finally, assign this list back
urls = list.toArray(new URL[] {});
}
return urls;
}
/**
* Extracts a file as a string from a jar
*
* @param jarFile
* The jar file to examine
* @param fileName
* The name of the file within the jar to read
* @return The string representation of the file
*/
public static String getJarEntry(JarFile jarFile, String fileName) {
InputStream jarStream = null;
String fileContents = null;
byte[] fileBytes = null;
try {
jarStream = jarFile.getInputStream(jarFile.getEntry(fileName));
fileBytes = new byte[jarStream.available()];
jarStream.read(fileBytes);
fileContents = new String(fileBytes);
} catch (IOException e) {
logger.error("Unable to get input stream for jar entry: ["
+ fileName + "]");
} finally {
if (jarStream != null) {
try {
jarStream.close();
} catch (IOException e) {
logger.error("Unable to close input stream to jar", e);
}
}
}
return fileContents;
}
/** /**
* Creates a new class loaded by adding the specified list of files to the * Creates a new class loaded by adding the specified list of files to the
* existing class loader. * existing class loader.
@ -377,27 +202,6 @@ public final class Util {
} }
/**
* Retrive an array of directories from a comma-separated string.
*
* @param theLocationsString
* @return An array of directories
*/
public static String[] retrieveDirectories(String theLocationsString) {
String[] directories = null;
// check for an empty property list,
// if found, return an empty directory list
if (theLocationsString == null) {
return new String[] {};
}
// split the list of locations on ,
directories = theLocationsString.split(",");
return directories;
}
/** /**
* Create a temporary file from a byte array message inthe OS's temporary * Create a temporary file from a byte array message inthe OS's temporary
* directory This file is removed from the OS when the JVM terminates, but * directory This file is removed from the OS when the JVM terminates, but
@ -441,244 +245,6 @@ public final class Util {
return file; return file;
} }
/**
* Creates a temporary file in the default location named "tempFile" with
* the provided data
*
* @param message
* The data to write to the file
* @return The created file
*/
public static File createTempFile(byte[] message) {
return createTempFile(message, "tempFile");
}
/**
* Flip double array along a horizontal line.
*
* @param baseArray
* @return
*/
public static double[][] flipHoriz(double[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[y - i - 1][j] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Flip double array along a vertical line
*
* @param baseArray
* @return
*/
public static double[][] flipVert(double[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[i][x - j - 1] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Flip float array along a horizontal line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(float[][] baseArray) {
float temp;
int height = baseArray[0].length;
int width = baseArray.length;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i][j];
baseArray[i][j] = baseArray[i][width - j - 1];
baseArray[i][width - j - 1] = temp;
}
}
}
/**
* Rotate 180 degrees.
*
* @param baseArray
* @return
*/
public static void rotate180(float[] baseArray, int height, int width) {
int counter = 0;
int total = height * width;
float temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[counter];
baseArray[counter] = baseArray[total - counter - 1];
baseArray[total - counter - 1] = temp;
counter++;
}
}
}
/**
* Flip along a vertical
*
* @param baseArray
* @return
*/
public static void flipVert(float[] baseArray, int height, int width) {
float temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i * width + j];
baseArray[i * width + j] = baseArray[i * width + width - j - 1];
baseArray[i * width + width - j - 1] = temp;
}
}
}
/**
* Flip float array along a vertical line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(float[] baseArray, int height, int width) {
float temp = 0;
for (int i = 0; i < height / 2; i++) {
for (int j = 0; j < width; j++) {
temp = baseArray[j + width * i];
baseArray[j + width * i] = baseArray[j + width
* (height - i - 1)];
baseArray[j + width * (height - i - 1)] = temp;
}
}
}
/**
* Flip along a vertical
*
* @param baseArray
* @return
*/
public static void flipVert(byte[] baseArray, int height, int width) {
byte temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i * width + j];
baseArray[i * width + j] = baseArray[i * width + width - j - 1];
baseArray[i * width + width - j - 1] = temp;
}
}
}
/**
* Flip float array along a vertical line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(byte[] baseArray, int height, int width) {
byte temp = 0;
for (int i = 0; i < height / 2; i++) {
for (int j = 0; j < width; j++) {
temp = baseArray[j + width * i];
baseArray[j + width * i] = baseArray[j + width
* (height - i - 1)];
baseArray[j + width * (height - i - 1)] = temp;
}
}
}
/**
* Flip float array along a vertical line
*
* @param baseArray
* @return
*/
public static float[][] flipVert(float[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
float[][] returnVal = new float[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[i][x - j - 1] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Rotate double array 90 degrees to the right
*
* @param baseArray
* @return
*/
public static double[][] rotateRight(double[][] baseArray) {
int y = baseArray[0].length;
int x = baseArray.length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
returnVal[j][x - 1 - i] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Rotate a double array 90 degrees to the left
*
* @param baseArray
* @return
*/
public static double[][] rotateLeft(double[][] baseArray) {
int y = baseArray[0].length;
int x = baseArray.length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
returnVal[y - j - 1][i] = baseArray[i][j];
}
}
return returnVal;
}
/** /**
* Converts a ddhhmm time group to a Calendar. Adjusts the calendar as * Converts a ddhhmm time group to a Calendar. Adjusts the calendar as
* follows: Any time group with a day (dd) in the future is set back one * follows: Any time group with a day (dd) in the future is set back one
@ -853,190 +419,6 @@ public final class Util {
} }
/**
* Retrieve the contents of a resource in a jar file as a string
*
* @param jarLocation
* The location of the jar (directory + jar name)
* @param resourceName
* The resource to retrieve
* @param resourceDirectory
* The dirctory of the resource in the jar, e.g. "res\"
* @return The string contents of the resource
*/
public static String getFileFromJar(String jarLocation,
String resourceName, String resourceDirectory) {
StringBuffer buffer = new StringBuffer();
InputStream input = null;
BufferedReader reader = null;
JarFile jarFile = null;
String line = null;
try {
jarFile = new JarFile(jarLocation);
ZipEntry entry = jarFile.getEntry(resourceDirectory + resourceName);
input = jarFile.getInputStream(entry);
reader = new BufferedReader(new InputStreamReader(input));
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
} catch (IOException e) {
logger.error("Unable to open file", e);
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
logger.error("Unable to close reader", e);
}
}
if (input != null) {
try {
input.close();
} catch (IOException e) {
logger.error("Unable to close input stream", e);
}
}
if (jarFile != null) {
try {
jarFile.close();
} catch (IOException e) {
logger.error("Unable to close jar file", e);
}
}
}
return buffer.toString();
}
/**
* Converts a String into an (possibly numeric) Object. If the String parses
* as an Integer, it will return the Integer object. If the String parses as
* a Float, it will return the Float object. Otherwise, the original String
* object is returned.
*
* @param string
* the string to convert
*
* @return the converted object
*/
public static Object getObjForStr(String string, Class<?> aClass) {
Object retValue = null;
// convert to calendar, if the pattern matches
if (string.matches("\\d{14}")) {
retValue = convertStr14ToCal(string);
} else if (string
.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}.0")) {
retValue = ConvertUtil.convertObject(string, Calendar.class);
}
if (retValue != null) {
return retValue;
}
// if there is a class, get the instance of it.
if (aClass != null && string.indexOf(",") == -1) {
try {
if (Float.class.equals(aClass)) {
retValue = new Float(string);
} else if (Integer.class.equals(aClass)) {
retValue = new Integer(string);
}
} catch (Exception e) {
logger.error("Unable to instaniate: " + aClass, e);
}
} else {
// try to get the instance based on try/catch
try {
retValue = Integer.parseInt(string);
} catch (NumberFormatException e) {
try {
retValue = Float.parseFloat(string);
} catch (NumberFormatException e1) {
retValue = string;
}
}
}
return retValue;
}
/**
* Copy a file from its location to another location.
*
* @param copyFrom
* The file reference.
* @param toDir
* Location where the file will be copied to.
* @return String status information.
*/
public static String copyFile(File copyFrom, String toDir) {
String status = "";
if (copyFrom.exists()) {
if (copyFrom.isFile()) {
File to = new File(toDir + copyFrom.getName());
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
try {
bis = new BufferedInputStream(new FileInputStream(
copyFrom));
bos = new BufferedOutputStream(new FileOutputStream(to));
int i = 0;
while ((i = bis.read()) > -1) {
bos.write(i);
}
} catch (IOException ioe) {
status = ioe.toString();
}
} finally {
String s = close(bis);
if (s != null) {
status += s;
}
s = close(bos);
if (s != null) {
status += s;
}
}
} else {
status = "Is not a file reference";
}
} else {
status = "File not found";
}
return status;
}
public static void copy(String fromFile, String toFile) throws IOException {
FileInputStream fis = new FileInputStream(fromFile);
FileOutputStream fos = new FileOutputStream(toFile);
int b = 0;
while ((b = fis.read()) != -1) {
fos.write(b);
}
fis.close();
fos.close();
}
public static void copy(File fromFile, File toFile) throws IOException {
copy(fromFile.getAbsolutePath(), toFile.getAbsolutePath());
}
/** /**
* Closes any closeable object. * Closes any closeable object.
* *
@ -1057,62 +439,6 @@ public final class Util {
return status; return status;
} }
/**
* Creates a hash number based on the toString values of all elements in the
* supplied array
*
* @param elements
* Elements that construct the hash number
* @return A hash number
*/
public static Integer generateHash(Object[] elements) {
HashCodeBuilder hashBuilder = new HashCodeBuilder(17, 37);
for (int i = 0; i < elements.length; i++) {
hashBuilder.append(elements[i].toString());
}
return hashBuilder.toHashCode();
}
/**
* Returns the unique ID associated with a cache key address
*
* @param address
* An address of an element in the cache
* @return The UUID associated with this address
*/
public static String parseID(String address) {
String id = address.split("[/\\|]")[1];
return id;
}
/**
* Retrieve a formatted string displaying current memory information.
*
* String is in the format: Max Size: x Mb, Free Memory: z Mb
*
* @return runtime memory information
*/
public static String getCurrentMemory() {
final double oneMeg = 1024.0 * 1024.0;
double freeMemory = Runtime.getRuntime().freeMemory() / oneMeg;
double heapSize = Runtime.getRuntime().totalMemory() / oneMeg;
double maxSize = Runtime.getRuntime().maxMemory() / oneMeg;
double usedSize = heapSize - freeMemory;
return String.format(MEMORY_FORMAT, usedSize, heapSize, maxSize);
}
public static float getPercentFreeMemory() {
long maxSize = Runtime.getRuntime().maxMemory();
float available = (maxSize - (Runtime.getRuntime().totalMemory() - Runtime
.getRuntime().freeMemory())) / (1024 * 1024f);
float percentFree = (available / ((maxSize / 1024f) / 1024)) * 100;
return percentFree;
}
/** /**
* Determines if the given string is all alpha-numeric characters * Determines if the given string is all alpha-numeric characters
* *
@ -1137,108 +463,6 @@ public final class Util {
} }
/**
* Gets a java type based on a string representation
*
* @param type
* The type as a string
* @return The Class type
*/
public static Class<?> getJavaType(String type) {
if ("varchar".equals(type)) {
return String.class;
}
if ("integer".equals(type)) {
return Integer.class;
}
if ("float".equals(type)) {
return Float.class;
}
if ("numeric".equals(type)) {
return Double.class;
}
if ("timestamp with time zone".equals(type) || "timestamp".equals(type)) {
return Calendar.class;
}
throw new IllegalArgumentException("Bad type: " + type);
}
/**
* Return the JAXB global context
*
* @return the jaxb global context
* @throws JAXBException
*
* @deprecated Please use {@link SerializationUtil} instead
*/
@Deprecated
public static JAXBContext getJaxbContext() throws JAXBException {
return SerializationUtil.getJaxbContext();
}
/**
* Instantiates an object from the XML representation in a string. Uses
* JAXB.
*
* @param xml
* The XML representation
* @return A new instance from the XML representation
* @throws JAXBException
* @deprecated Please use {@link SerializationUtil} instead
*/
@Deprecated
public static Object unmarshalFromXml(String xml) throws JAXBException {
return SerializationUtil.unmarshalFromXml(xml);
}
/**
* Convert an instance of a class to an XML representation in a string. Uses
* JAXB.
*
* @param obj
* Object being marshalled
* @return XML string representation of the object
* @throws JAXBException
* @deprecated Please use {@link SerializationUtil} instead
*/
@Deprecated
public static String marshalToXml(Object obj) throws JAXBException {
return SerializationUtil.marshalToXml(obj);
}
/**
* Convert an instance of a class to an XML representation and write XML to
* file. Uses JAXB.
*
* @param obj
* Object to be marshalled
* @param filePath
* Path to the output file
* @throws SerializationException
* @deprecated Please use {@link SerializationUtil} instead
*/
@Deprecated
public static void jaxbMarshalToXmlFile(Object obj, String filePath)
throws SerializationException {
SerializationUtil.jaxbMarshalToXmlFile(obj, filePath);
}
/**
* Instantiates an object from the XML representation in a File. Uses JAXB.
*
* @param filePath
* The path to the XML file
* @return A new instance from the XML representation
* @throws SerializationException
* @deprecated Please use {@link SerializationUtil} instead
*/
@Deprecated
public static Object jaxbUnmarshalFromXmlFile(String filePath)
throws SerializationException {
return SerializationUtil.jaxbUnmarshalFromXmlFile(filePath);
}
/** /**
* Retrieve date as a long in the index standard format: yyyy-MM-dd * Retrieve date as a long in the index standard format: yyyy-MM-dd
* kk:mm:ss.SSS * kk:mm:ss.SSS
@ -1253,14 +477,6 @@ public final class Util {
return TimeUtil.formatCalendar(cal); return TimeUtil.formatCalendar(cal);
} }
public static long getUnixTime(Date date) {
if (date == null) {
return 0;
} else {
return date.getTime() / 1000l;
}
}
/** /**
* Resizes a 1-D data array into a 2-D array based on the provided row and * Resizes a 1-D data array into a 2-D array based on the provided row and
* column count * column count
@ -1309,33 +525,6 @@ public final class Util {
return newGrid; return newGrid;
} }
/**
* Extracts a sub-grid of data from a 2-D array of data
*
* @param data
* The 2-D array of data
* @param startColumn
* The start column of the sub-grid
* @param startRow
* The start row of the sub-grid
* @param columnCount
* The number of columns in the sub-grid
* @param rowCount
* The number of rows in the sub-grid
* @return The sub-grid of data
*/
public static float[][] subGrid(float[][] data, int startColumn,
int startRow, int columnCount, int rowCount) {
float[][] newGrid = new float[rowCount][columnCount];
for (int row = startRow; row < rowCount + startRow; row++) {
for (int column = startColumn; column < columnCount + startColumn; column++) {
newGrid[row - startRow][column - startColumn] = data[row][column];
}
}
return newGrid;
}
public static void insertSubgrid(float[][] data, float[][] subGrid, public static void insertSubgrid(float[][] data, float[][] subGrid,
int startColumn, int startRow, int columnCount, int rowCount) { int startColumn, int startRow, int columnCount, int rowCount) {
@ -1366,6 +555,6 @@ public final class Util {
} }
} }
}); });
} }
} }

View file

@ -10,6 +10,5 @@ Require-Bundle: com.raytheon.edex.common,
org.springframework;bundle-version="2.5.6" org.springframework;bundle-version="2.5.6"
Export-Package: com.raytheon.edex.services Export-Package: com.raytheon.edex.services
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.raytheon.uf.common.message.response, Import-Package: com.raytheon.uf.edex.core,
com.raytheon.uf.edex.core,
com.raytheon.uf.edex.database.plugin com.raytheon.uf.edex.database.plugin

View file

@ -1,285 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.edex.uengine.tasks.process;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import com.raytheon.edex.msg.Service;
import com.raytheon.edex.services.ArchiveSrv;
import com.raytheon.uf.common.message.response.ResponseMessageGeneric;
/**
* This script task will send control messages to the ArchiveSrvs to allow for
* the turning on and off of the Archive locations.
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* 12/12/2007 561 dfitch Initial Creation
*
* </pre>
*
* @author dfitch
* @version 1
*/
public class ArchiveSrvControl {
private static final String SET_ARCHIVE_DIR_LOCATION = "SET_ARCHIVE_DIR_LOCATION";
private static final String SET_TEE_MODE = "SET_TEE_MODE";
// private static final String ADD_ONE_TEE_MODE_CRONTAB =
// "ADD_ONE_TEE_MODE_CRONTAB";
// private static final String REMOVE_ONE_TEE_MODE_CRONTAB =
// "REMOVE_ONE_TEE_MODE_CRONTAB";
private static final String SET_RECORD_LOCATIONS = "SET_RECORD_LOCATIONS";
private String archiveDirectoryLocation = null;
private boolean teeModeOn = false;
private String targetName = null;
/**
* What should happen when execute is invoked? There are several available
* choices
*
* <ul>
* <li>null -- Just return a list of what IngestSrv objects are out there</li>
* <li>change -- perform what ever changes have been asked for... then
* return the list of IngestSrv objects are out there</li>
* </ul>
*/
private List<String> lstCommands = null;
private String recordLocations;
private String startTeeModeCrontab;
private String stopTeeModeCrontab;
public ArchiveSrvControl() {
super();
lstCommands = new ArrayList<String>();
}
/**
* Replay the archive returning an XML string of some information about what
* happened...
*
*/
public Object execute() {
List<ArchiveSrv> lstArchiveSrv = ArchiveSrv.getLstOfArchiveSrv();
synchronized (lstArchiveSrv) {
// logger.info("lstIngestSrv.size()=" + lstArchiveSrv.size());
if ((null != lstCommands) && (lstCommands.size() > 0)) {
for (Iterator<ArchiveSrv> it = lstArchiveSrv.iterator(); it
.hasNext();) {
ArchiveSrv archiveSrv = it.next();
if ((null == targetName)
|| targetName
.equalsIgnoreCase(archiveSrv.getName())) {
executeCommand(archiveSrv);
}
}
}
}
lstArchiveSrv = ArchiveSrv.getLstOfArchiveSrv();
List<Service> serviceList = new ArrayList<Service>();
for (Iterator<ArchiveSrv> it = lstArchiveSrv.iterator(); it.hasNext();) {
ArchiveSrv archiveSrv = it.next();
if ((null == targetName)
|| targetName.equalsIgnoreCase(archiveSrv.getName())) {
Service tmpSrv = new Service();
tmpSrv.setArchiveDirectoryLocation(archiveSrv
.getArchiveDirectoryLocation());
tmpSrv.setJmxModeOn(archiveSrv.isJmxModeOn());
tmpSrv.setName(archiveSrv.getName());
tmpSrv.setTeeModeOn(archiveSrv.isTeeModeOn());
serviceList.add(tmpSrv);
}
}
ResponseMessageGeneric response = new ResponseMessageGeneric(
(ArrayList<Service>) serviceList);
return response;
}
/**
* @param archiveSrv
*/
private void executeCommand(ArchiveSrv archiveSrv) {
for (Iterator<String> it = lstCommands.iterator(); it.hasNext();) {
String command = it.next();
if (null == command) {
} else if (SET_RECORD_LOCATIONS.equals(command)) {
archiveSrv.setRecordLocations(recordLocations);
} else if (SET_ARCHIVE_DIR_LOCATION.equals(command)) {
archiveSrv
.setArchiveDirectoryLocation(archiveDirectoryLocation);
} else if (SET_TEE_MODE.equals(command)) {
archiveSrv.setTeeModeOn(teeModeOn);
}
}
}
/**
* @return
*/
// private String statusOfAllIngestSrv() {
// String result = "<?xml version='1.0' encoding='ISO-8859-1'?>\n"
// + "<IngestSrvs>\n";
//
// List<ArchiveSrv> lstArchiveSrv = ArchiveSrv.getLstOfArchiveSrv();
// synchronized (lstArchiveSrv) {
// logger.info("lstIngestSrv.size()=" + lstArchiveSrv.size());
// for (Iterator<ArchiveSrv> it = lstArchiveSrv.iterator(); it
// .hasNext();) {
// ArchiveSrv archiveSrv = it.next();
// String dirLocation = archiveSrv.getArchiveDirectoryLocation();
// int execCount = archiveSrv.getExecCount();
// String name = archiveSrv.getName();
// int numMessagesCopied = archiveSrv.getNumMessagesCopied();
// boolean t = archiveSrv.isTeeModeOn();
// result += "<IngestSrv><name>" + name + "</name><execCount>"
// + execCount + "</execCount><teeModeOn>" + t
// + "</teeModeOn>" + "<numCopied>" + numMessagesCopied
// + "</numCopied><dirLocation>" + dirLocation
// + "</dirLocation></IngestSrv>\n";
// }
// }
// result += "</IngestSrvs>\n";
// return result;
// }
/**
* @return the archiveDirectoryLocation
*/
public String getArchiveDirectoryLocation() {
return archiveDirectoryLocation;
}
/**
* @param archiveDirectoryLocation
* the archiveDirectoryLocation to set
*/
public void setArchiveDirectoryLocation(String archiveDirectoryLocation) {
this.archiveDirectoryLocation = archiveDirectoryLocation;
lstCommands.add(SET_ARCHIVE_DIR_LOCATION);
}
/**
* @return the teeModeOn
*/
public boolean isTeeModeOn() {
return teeModeOn;
}
/**
* @param teeModeOn
* the teeModeOn to set
*/
public void setTeeModeOn(boolean teeModeOn) {
lstCommands.add(SET_TEE_MODE);
this.teeModeOn = teeModeOn;
}
/**
* @return the targetName
*/
public String getTargetName() {
return targetName;
}
/**
* @param targetName
* the targetName to set
*/
public void setTargetName(String targetName) {
this.targetName = targetName;
}
/**
* @return the command
*/
public List<String> getCommands() {
return lstCommands;
}
/**
* @return the startTeeModeCrontab
*/
public String getStartTeeModeCrontab() {
return startTeeModeCrontab;
}
/**
* @param startTeeModeCrontab
* the startTeeModeCrontab to set
*/
public void setStartTeeModeCrontab(String startTeeModeCrontab) {
this.startTeeModeCrontab = startTeeModeCrontab;
}
/**
* @return the stopTeeModeCrontab
*/
public String getStopTeeModeCrontab() {
return stopTeeModeCrontab;
}
/**
* @param stopTeeModeCrontab
* the stopTeeModeCrontab to set
*/
public void setStopTeeModeCrontab(String stopTeeModeCrontab) {
this.stopTeeModeCrontab = stopTeeModeCrontab;
}
/**
* @return the recordLocations
*/
public String getRecordLocations() {
return recordLocations;
}
/**
* @param recordLocations
* the recordLocations to set
*/
public void setRecordLocations(String recordLocations) {
this.recordLocations = recordLocations;
lstCommands.add(SET_RECORD_LOCATIONS);
}
}

View file

@ -5,7 +5,6 @@ Bundle-SymbolicName: com.raytheon.edex.meteolib
Bundle-Version: 1.12.1174.qualifier Bundle-Version: 1.12.1174.qualifier
Bundle-Vendor: RAYTHEON Bundle-Vendor: RAYTHEON
Require-Bundle: meteolib.jni, Require-Bundle: meteolib.jni,
com.raytheon.edex.common,
org.jep;bundle-version="1.0.0", org.jep;bundle-version="1.0.0",
com.raytheon.uf.common.localization;bundle-version="1.10.7", com.raytheon.uf.common.localization;bundle-version="1.10.7",
com.raytheon.uf.common.status;bundle-version="1.10.7", com.raytheon.uf.common.status;bundle-version="1.10.7",

View file

@ -16,13 +16,13 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.gfe;bundle-version="1.12.1174"
com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization,
org.junit;bundle-version="1.0.0", org.junit;bundle-version="1.0.0",
com.raytheon.uf.edex.plugin.grid, com.raytheon.uf.edex.plugin.grid,
com.raytheon.uf.edex.topo, com.raytheon.uf.common.topo;bundle-version="1.12.1174",
com.raytheon.edex.common, com.raytheon.edex.common,
com.raytheon.uf.common.dataplugin.satellite;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin.satellite;bundle-version="1.0.0",
com.raytheon.edex.plugin.satellite;bundle-version="1.12.1174", com.raytheon.edex.plugin.satellite;bundle-version="1.12.1174",
com.raytheon.uf.edex.auth;bundle-version="1.12.1174", com.raytheon.uf.edex.auth;bundle-version="1.12.1174",
com.raytheon.uf.common.auth;bundle-version="1.12.1174", com.raytheon.uf.common.auth;bundle-version="1.12.1174",
com.raytheon.uf.common.site;bundle-version="1.12.1174", com.raytheon.uf.edex.site;bundle-version="1.0.0",
ucar.nc2;bundle-version="1.0.0", ucar.nc2;bundle-version="1.0.0",
com.raytheon.uf.common.parameter;bundle-version="1.0.0", com.raytheon.uf.common.parameter;bundle-version="1.0.0",
com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0" com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0"

View file

@ -47,7 +47,6 @@ import com.raytheon.uf.common.dataplugin.PluginException;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID.DataType; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID.DataType;
import com.raytheon.uf.common.dataplugin.gfe.exception.GfeException; import com.raytheon.uf.common.dataplugin.gfe.exception.GfeException;
import com.raytheon.uf.common.site.notify.SendSiteActivationNotifications;
import com.raytheon.uf.common.site.notify.SiteActivationNotification; import com.raytheon.uf.common.site.notify.SiteActivationNotification;
import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONSTATUS; import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONSTATUS;
import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONTYPE; import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONTYPE;
@ -62,6 +61,7 @@ import com.raytheon.uf.edex.database.cluster.ClusterLockUtils;
import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState;
import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.cluster.ClusterTask;
import com.raytheon.uf.edex.site.ISiteActivationListener; import com.raytheon.uf.edex.site.ISiteActivationListener;
import com.raytheon.uf.edex.site.notify.SendSiteActivationNotifications;
/** /**
* Activates the GFE server capabilities for a site * Activates the GFE server capabilities for a site
@ -78,6 +78,7 @@ import com.raytheon.uf.edex.site.ISiteActivationListener;
* Jul 12, 2012 15162 ryu added check for invalid db at activation * Jul 12, 2012 15162 ryu added check for invalid db at activation
* Dec 11, 2012 14360 ryu log a clean message in case of * Dec 11, 2012 14360 ryu log a clean message in case of
* missing configuration (no stack trace). * missing configuration (no stack trace).
* Feb 15, 2013 1638 mschenke Moved sending of site notification messages to edex plugin
* *
* </pre> * </pre>
* *

View file

@ -60,7 +60,7 @@ import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.edex.topo.TopoQuery; import com.raytheon.uf.common.topo.TopoQuery;
/** /**
* Manages the TopoDatabase instances of active GFE sites * Manages the TopoDatabase instances of active GFE sites
@ -73,6 +73,7 @@ import com.raytheon.uf.edex.topo.TopoQuery;
* Jul 10, 2009 njensen Initial creation * Jul 10, 2009 njensen Initial creation
* May 04, 2012 #574 dgilling Re-port to better match AWIPS1. * May 04, 2012 #574 dgilling Re-port to better match AWIPS1.
* Feb 12, 2013 #1608 randerso Changed to use explicit deleteGroups * Feb 12, 2013 #1608 randerso Changed to use explicit deleteGroups
* Feb 15, 2013 1638 mschenke Deleted topo edex plugin, moved code into common topo
* *
* </pre> * </pre>
* *

View file

@ -28,7 +28,6 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import com.raytheon.edex.msg.DataURINotificationMessage;
import com.raytheon.edex.plugin.gfe.cache.d2dparms.D2DParmIdCache; import com.raytheon.edex.plugin.gfe.cache.d2dparms.D2DParmIdCache;
import com.raytheon.edex.plugin.gfe.config.GFESiteActivation; import com.raytheon.edex.plugin.gfe.config.GFESiteActivation;
import com.raytheon.edex.plugin.gfe.config.IFPServerConfig; import com.raytheon.edex.plugin.gfe.config.IFPServerConfig;
@ -51,6 +50,7 @@ import com.raytheon.uf.common.dataplugin.gfe.server.notify.DBInvChangeNotificati
import com.raytheon.uf.common.dataplugin.gfe.server.notify.GfeNotification; import com.raytheon.uf.common.dataplugin.gfe.server.notify.GfeNotification;
import com.raytheon.uf.common.dataplugin.gfe.server.notify.GridUpdateNotification; import com.raytheon.uf.common.dataplugin.gfe.server.notify.GridUpdateNotification;
import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.grid.GridRecord;
import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
import com.raytheon.uf.common.dataplugin.satellite.SatelliteRecord; import com.raytheon.uf.common.dataplugin.satellite.SatelliteRecord;
import com.raytheon.uf.common.message.WsId; import com.raytheon.uf.common.message.WsId;
import com.raytheon.uf.common.parameter.mapping.ParameterMapper; import com.raytheon.uf.common.parameter.mapping.ParameterMapper;
@ -75,6 +75,7 @@ import com.raytheon.uf.edex.core.EDEXUtil;
* Sep 19, 2012 jdynina DR 15442 fix * Sep 19, 2012 jdynina DR 15442 fix
* Jan 18, 2013 #1504 randerso Moved D2D to GFE parameter name translation from * Jan 18, 2013 #1504 randerso Moved D2D to GFE parameter name translation from
* D2DParmIdCache to GfeIngestNotificationFilter * D2DParmIdCache to GfeIngestNotificationFilter
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
* *
* </pre> * </pre>
* *

View file

@ -51,7 +51,6 @@ import com.raytheon.edex.plugin.grib.util.GribLevel;
import com.raytheon.edex.plugin.grib.util.GribModelLookup; import com.raytheon.edex.plugin.grib.util.GribModelLookup;
import com.raytheon.edex.plugin.grib.util.GribParameter; import com.raytheon.edex.plugin.grib.util.GribParameter;
import com.raytheon.edex.plugin.grib.util.GridModel; import com.raytheon.edex.plugin.grib.util.GridModel;
import com.raytheon.edex.util.Util;
import com.raytheon.edex.util.grib.Grib1TableMap; import com.raytheon.edex.util.grib.Grib1TableMap;
import com.raytheon.edex.util.grib.GribParamTranslator; import com.raytheon.edex.util.grib.GribParamTranslator;
import com.raytheon.edex.util.grib.GribTableLookup; import com.raytheon.edex.util.grib.GribTableLookup;
@ -81,6 +80,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.DataTime;
import com.raytheon.uf.common.time.DataTime.FLAG; import com.raytheon.uf.common.time.DataTime.FLAG;
import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.common.util.ArraysUtil;
import com.raytheon.uf.common.util.mapping.MultipleMappingException; import com.raytheon.uf.common.util.mapping.MultipleMappingException;
/** /**
@ -93,6 +93,7 @@ import com.raytheon.uf.common.util.mapping.MultipleMappingException;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 3/11/10 4758 bphillip Initial Creation * 3/11/10 4758 bphillip Initial Creation
* Feb 15, 2013 1638 mschenke Moved array based utilities from Util into ArraysUtil
* *
* </pre> * </pre>
* *
@ -670,13 +671,13 @@ public class Grib1Decoder extends AbstractDecoder {
case 0: case 0:
break; break;
case 64: case 64:
Util.flipHoriz(data, ny, nx); ArraysUtil.flipHoriz(data, ny, nx);
break; break;
case 128: case 128:
Util.flipVert(data, ny, nx); ArraysUtil.flipVert(data, ny, nx);
break; break;
case 192: case 192:
Util.rotate180(data, ny, nx); ArraysUtil.rotate180(data, ny, nx);
break; break;
} }
} }

View file

@ -35,7 +35,6 @@ import java.util.zip.Inflater;
import com.raytheon.edex.exception.DecoderException; import com.raytheon.edex.exception.DecoderException;
import com.raytheon.edex.plugin.AbstractDecoder; import com.raytheon.edex.plugin.AbstractDecoder;
import com.raytheon.edex.plugin.satellite.dao.SatelliteDao; import com.raytheon.edex.plugin.satellite.dao.SatelliteDao;
import com.raytheon.edex.util.Util;
import com.raytheon.edex.util.satellite.SatSpatialFactory; import com.raytheon.edex.util.satellite.SatSpatialFactory;
import com.raytheon.edex.util.satellite.SatellitePosition; import com.raytheon.edex.util.satellite.SatellitePosition;
import com.raytheon.edex.util.satellite.SatelliteUnit; import com.raytheon.edex.util.satellite.SatelliteUnit;
@ -45,6 +44,7 @@ import com.raytheon.uf.common.dataplugin.satellite.SatelliteMessageData;
import com.raytheon.uf.common.dataplugin.satellite.SatelliteRecord; import com.raytheon.uf.common.dataplugin.satellite.SatelliteRecord;
import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.datastorage.records.IDataRecord;
import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.DataTime;
import com.raytheon.uf.common.util.ArraysUtil;
import com.raytheon.uf.edex.decodertools.time.TimeTools; import com.raytheon.uf.edex.decodertools.time.TimeTools;
import com.raytheon.uf.edex.wmo.message.WMOHeader; import com.raytheon.uf.edex.wmo.message.WMOHeader;
@ -74,6 +74,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader;
* 06/27/2012 798 jkorman Using SatelliteMessageData to "carry" the decoded image. * 06/27/2012 798 jkorman Using SatelliteMessageData to "carry" the decoded image.
* 01/03/2013 15294 D. Friedman Start with File instead of byte[] to * 01/03/2013 15294 D. Friedman Start with File instead of byte[] to
* reduce memory usage. * reduce memory usage.
* Feb 15, 2013 1638 mschenke Moved array based utilities from Util into ArraysUtil
*
* </pre> * </pre>
* *
* @author bphillip * @author bphillip
@ -288,14 +290,14 @@ public class SatelliteDecoder extends AbstractDecoder {
// TODO: Can these numbers be an enum or constants? // TODO: Can these numbers be an enum or constants?
switch (scanMode) { switch (scanMode) {
case 1: case 1:
Util.flipHoriz(tempBytes, ny, nx); ArraysUtil.flipHoriz(tempBytes, ny, nx);
break; break;
case 2: case 2:
Util.flipVert(tempBytes, ny, nx); ArraysUtil.flipVert(tempBytes, ny, nx);
break; break;
case 3: case 3:
Util.flipVert(tempBytes, ny, nx); ArraysUtil.flipVert(tempBytes, ny, nx);
Util.flipVert(tempBytes, ny, nx); ArraysUtil.flipVert(tempBytes, ny, nx);
break; break;
default: default:
break; break;

View file

@ -17,7 +17,9 @@ Require-Bundle: org.apache.activemq,
com.raytheon.uf.common.status, com.raytheon.uf.common.status,
javax.measure;bundle-version="1.0.0", javax.measure;bundle-version="1.0.0",
javax.jms;bundle-version="1.0.0", javax.jms;bundle-version="1.0.0",
org.apache.http;bundle-version="4.1.1" org.apache.http;bundle-version="4.1.1",
com.raytheon.uf.common.util;bundle-version="1.12.1174",
org.apache.velocity;bundle-version="1.7.0"
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Export-Package: com.raytheon.edex.uengine, Export-Package: com.raytheon.edex.uengine,
com.raytheon.edex.uengine.exception, com.raytheon.edex.uengine.exception,
@ -30,7 +32,6 @@ Export-Package: com.raytheon.edex.uengine,
Import-Package: com.raytheon.edex.colormap, Import-Package: com.raytheon.edex.colormap,
com.raytheon.edex.exception, com.raytheon.edex.exception,
com.raytheon.edex.msg, com.raytheon.edex.msg,
com.raytheon.edex.scriptfactory,
com.raytheon.edex.uengine.exception, com.raytheon.edex.uengine.exception,
com.raytheon.edex.util, com.raytheon.edex.util,
com.raytheon.edex.utility, com.raytheon.edex.utility,

View file

@ -22,9 +22,10 @@ package com.raytheon.edex.uengine.web;
import java.io.File; import java.io.File;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map;
import com.raytheon.edex.scriptfactory.ScriptFactory;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.util.velocity.VelocityManager;
import com.raytheon.uf.edex.core.props.EnvProperties; import com.raytheon.uf.edex.core.props.EnvProperties;
import com.raytheon.uf.edex.core.props.PropertiesFactory; import com.raytheon.uf.edex.core.props.PropertiesFactory;
@ -43,6 +44,7 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory;
* 05/10/07 #273 brockwoo Updated script generation to * 05/10/07 #273 brockwoo Updated script generation to
* Javascript * Javascript
* 11/27/07 #214 brockwoo Added colormap capability to radar * 11/27/07 #214 brockwoo Added colormap capability to radar
* Feb 18, 2013 1638 mschenke Moved ScriptFactory code into common VelocityManager class
* *
* </pre> * </pre>
* *
@ -102,9 +104,16 @@ public class ScriptTestDriver {
if (properties != null) { if (properties != null) {
logDir = properties.getEnvValue("LOGDIR"); logDir = properties.getEnvValue("LOGDIR");
} }
script = ScriptFactory.getInstance().createScript(DEFAULT_TEMPLATE,
DEFAULT_TEMPLATE.getParentFile(), maxRecords, engine, Map<String, Object> templateObjects = new HashMap<String, Object>();
library, queryTerms, logDir); templateObjects.put("scriptMetadata", queryTerms);
templateObjects.put("maxRecords", maxRecords);
templateObjects.put("scriptLibrary", library);
templateObjects.put("mode", engine);
script = VelocityManager.executeTemplate(DEFAULT_TEMPLATE,
DEFAULT_TEMPLATE.getParentFile(), new File(logDir),
templateObjects);
} catch (Exception e) { } catch (Exception e) {
System.out.println("Error creating script for " + library); System.out.println("Error creating script for " + library);
e.printStackTrace(); e.printStackTrace();

View file

@ -0,0 +1,73 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.colormap;
import java.awt.image.IndexColorModel;
import java.util.List;
/**
* Common utilities for colormaps
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 15, 2013 1638 mschenke Initial creation
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public class ColorMapUtils {
public static final int COLOR_MODEL_NUMBER_BITS = 8;
public static final float MAX_VALUE = 255.0f;
/**
* Builds a color model from a color map
*
* @param aColorMap
* @return
*/
public static IndexColorModel buildColorModel(IColorMap aColorMap) {
int size = aColorMap.getSize();
byte[] red = new byte[size];
byte[] green = new byte[size];
byte[] blue = new byte[size];
byte[] alpha = new byte[size];
List<Color> colors = aColorMap.getColors();
for (int i = 0; i < size; ++i) {
Color color = colors.get(i);
red[i] = (byte) (color.getRed() * MAX_VALUE);
green[i] = (byte) (color.getGreen() * MAX_VALUE);
blue[i] = (byte) (color.getBlue() * MAX_VALUE);
alpha[i] = (byte) (color.getAlpha() * MAX_VALUE);
}
return new IndexColorModel(COLOR_MODEL_NUMBER_BITS, size, red, green, blue, alpha);
}
}

View file

@ -31,13 +31,13 @@ import javax.persistence.Id;
import org.hibernate.annotations.Type; import org.hibernate.annotations.Type;
import com.raytheon.edex.util.Util;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID;
import com.raytheon.uf.common.message.WsId; import com.raytheon.uf.common.message.WsId;
import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.ISerializableObject;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.common.time.util.TimeUtil;
/** /**
* GridDataHistory * GridDataHistory
@ -49,6 +49,7 @@ import com.raytheon.uf.common.time.TimeRange;
* randerso Initial creation * randerso Initial creation
* 02/27/2008 879 rbell Added clone() * 02/27/2008 879 rbell Added clone()
* 04/18/2008 #875 bphillip Changed date fields to use java.util.Calendar * 04/18/2008 #875 bphillip Changed date fields to use java.util.Calendar
* Feb 15, 2013 1638 mschenke Moved Util.getUnixTime into TimeUtil
* *
* </pre> * </pre>
* *
@ -417,33 +418,33 @@ public class GridDataHistory implements Cloneable, Serializable,
buffer.append(this.origin.ordinal()).append(" "); buffer.append(this.origin.ordinal()).append(" ");
buffer.append(this.originParm.toString()).append(" "); buffer.append(this.originParm.toString()).append(" ");
buffer.append(Util.getUnixTime(this.originTimeRange.getStart())) buffer.append(TimeUtil.getUnixTime(this.originTimeRange.getStart()))
.append(" "); .append(" ");
buffer.append(Util.getUnixTime(this.originTimeRange.getEnd())).append( buffer.append(TimeUtil.getUnixTime(this.originTimeRange.getEnd())).append(
" "); " ");
if (this.timeModified == null) { if (this.timeModified == null) {
buffer.append("0"); buffer.append("0");
} else if (Util.getUnixTime(this.timeModified) == 0) { } else if (TimeUtil.getUnixTime(this.timeModified) == 0) {
buffer.append("0"); buffer.append("0");
} else { } else {
buffer.append(Util.getUnixTime(this.timeModified)).append(" "); buffer.append(TimeUtil.getUnixTime(this.timeModified)).append(" ");
buffer.append(this.whoModified); buffer.append(this.whoModified);
} }
if (this.updateTime == null) { if (this.updateTime == null) {
buffer.append(" 0"); buffer.append(" 0");
} else { } else {
buffer.append(" ").append(Util.getUnixTime(this.updateTime)); buffer.append(" ").append(TimeUtil.getUnixTime(this.updateTime));
} }
if (this.publishTime == null) { if (this.publishTime == null) {
buffer.append(" 0"); buffer.append(" 0");
} else { } else {
buffer.append(" ").append(Util.getUnixTime(this.publishTime)); buffer.append(" ").append(TimeUtil.getUnixTime(this.publishTime));
} }
if (this.lastSentTime == null) { if (this.lastSentTime == null) {
buffer.append(" 0"); buffer.append(" 0");
} else { } else {
buffer.append(" ").append(Util.getUnixTime(this.lastSentTime)); buffer.append(" ").append(TimeUtil.getUnixTime(this.lastSentTime));
} }
return buffer.toString(); return buffer.toString();

View file

@ -61,5 +61,4 @@ Import-Package: com.raytheon.edex.exception,
javax.measure.converter, javax.measure.converter,
javax.persistence, javax.persistence,
org.apache.commons.logging, org.apache.commons.logging,
org.apache.tools.bzip2,
org.opengis.referencing.crs org.opengis.referencing.crs

View file

@ -15,6 +15,7 @@ Import-Package: com.raytheon.uf.common.time,
Export-Package: com.raytheon.uf.common.dataplugin, Export-Package: com.raytheon.uf.common.dataplugin,
com.raytheon.uf.common.dataplugin.annotations, com.raytheon.uf.common.dataplugin.annotations,
com.raytheon.uf.common.dataplugin.defaults, com.raytheon.uf.common.dataplugin.defaults,
com.raytheon.uf.common.dataplugin.message,
com.raytheon.uf.common.dataplugin.persist, com.raytheon.uf.common.dataplugin.persist,
com.raytheon.uf.common.dataplugin.request com.raytheon.uf.common.dataplugin.request
Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.12.1174", Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.12.1174",

View file

@ -17,7 +17,7 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.msg; package com.raytheon.uf.common.dataplugin.message;
import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.ISerializableObject;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
@ -30,7 +30,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
* SOFTWARE HISTORY * SOFTWARE HISTORY
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Sep 2, 2008 chammack Initial creation * Sep 2, 2008 chammack Initial creation
* Feb 15, 2013 1638 mschenke Moved from com.raytheon.edex.common project
* </pre> * </pre>
* *
* @author chammack * @author chammack

View file

@ -17,7 +17,7 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.msg; package com.raytheon.uf.common.dataplugin.message;
import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.ISerializableObject;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
@ -30,7 +30,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
* SOFTWARE HISTORY * SOFTWARE HISTORY
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Sep 2, 2008 chammack Initial creation * Sep 2, 2008 chammack Initial creation
* Feb 15, 2013 1638 mschenke Moved from com.raytheon.edex.common project
* </pre> * </pre>
* *
* @author chammack * @author chammack

View file

@ -8,8 +8,7 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization
Eclipse-BuddyPolicy: registered, ext, global Eclipse-BuddyPolicy: registered, ext, global
Import-Package: com.raytheon.edex.scriptfactory, Import-Package: com.raytheon.uf.common.comm,
com.raytheon.uf.common.comm,
com.raytheon.uf.common.dataplugin.level, com.raytheon.uf.common.dataplugin.level,
com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization,
com.raytheon.uf.common.serialization.annotations, com.raytheon.uf.common.serialization.annotations,

View file

@ -11,8 +11,7 @@ Require-Bundle: com.facebook.thrift,
javax.persistence, javax.persistence,
org.geotools, org.geotools,
javax.measure;resolution:=optional, javax.measure;resolution:=optional,
com.raytheon.uf.common.util, com.raytheon.uf.common.util
org.apache.commons.codec;bundle-version="1.4.0"
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Export-Package: com.raytheon.uf.common.serialization, Export-Package: com.raytheon.uf.common.serialization,
com.raytheon.uf.common.serialization.adapters, com.raytheon.uf.common.serialization.adapters,

View file

@ -33,7 +33,7 @@ except:
fastbinary = None fastbinary = None
class com_raytheon_edex_msg_DataURINotificationMessage: class com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage:
""" """
Attributes: Attributes:
- dataURIs - dataURIs
@ -88,7 +88,7 @@ class com_raytheon_edex_msg_DataURINotificationMessage:
if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
return return
oprot.writeStructBegin('com_raytheon_edex_msg_DataURINotificationMessage') oprot.writeStructBegin('com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage')
if self.dataURIs != None: if self.dataURIs != None:
oprot.writeFieldBegin('dataURIs', TType.LIST, 1) oprot.writeFieldBegin('dataURIs', TType.LIST, 1)
oprot.writeListBegin(TType.STRING, len(self.dataURIs)) oprot.writeListBegin(TType.STRING, len(self.dataURIs))

View file

@ -30,7 +30,7 @@ f = open("/tmp/testSerialization")
trans = thrift.transport.TTransport.TFileObjectTransport(f) trans = thrift.transport.TTransport.TFileObjectTransport(f)
proto = SelfDescribingBinaryProtocol.SelfDescribingBinaryProtocol(trans) proto = SelfDescribingBinaryProtocol.SelfDescribingBinaryProtocol(trans)
print proto.readMessageBegin() print proto.readMessageBegin()
s = NotificationMessage.ttypes.com_raytheon_edex_msg_DataURINotificationMessage() s = NotificationMessage.ttypes.com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage()
s.read(proto) s.read(proto)
print s print s

View file

@ -10,8 +10,7 @@ Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.12.1130",
com.raytheon.uf.common.status;bundle-version="1.12.1130", com.raytheon.uf.common.status;bundle-version="1.12.1130",
com.raytheon.uf.common.serialization;bundle-version="1.12.1130", com.raytheon.uf.common.serialization;bundle-version="1.12.1130",
com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174",
com.raytheon.uf.common.pointdata;bundle-version="1.12.1174", com.raytheon.uf.common.pointdata;bundle-version="1.12.1174"
com.raytheon.uf.edex.core;bundle-version="1.12.1174"
Export-Package: com.raytheon.uf.common.site, Export-Package: com.raytheon.uf.common.site,
com.raytheon.uf.common.site.ingest, com.raytheon.uf.common.site.ingest,
com.raytheon.uf.common.site.notify, com.raytheon.uf.common.site.notify,

View file

@ -17,7 +17,7 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.util; package com.raytheon.uf.common.sounding.util;
import static java.lang.Math.abs; import static java.lang.Math.abs;
import static java.lang.Math.exp; import static java.lang.Math.exp;
@ -31,6 +31,23 @@ import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
/**
*
* Common utility functions for UA Soundings
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 15, 2013 1638 mschenke Moved from edex.common util package
*
* </pre>
*
* @author unknown
* @version 1.0
*/
public class Equations { public class Equations {
public interface VaporPressure { public interface VaporPressure {
double es(double temperature); double es(double temperature);

View file

@ -17,28 +17,28 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.uf.edex.topo; package com.raytheon.uf.common.sounding.util;
/** /**
* TODO Add Description *
* Class to represent Upper Air point
* *
* <pre> * <pre>
* *
* SOFTWARE HISTORY * SOFTWARE HISTORY
*
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jan 25, 2010 randerso Initial creation * Feb 15, 2013 1638 mschenke Moved from edex.common util package
* *
* </pre> * </pre>
* *
* @author randerso * @author unknown
* @version 1.0 * @version 1.0
*/ */
public class UAPoint {
public class StatusConstants { public double pressure;
public static final String PLUGIN_ID = StatusConstants.class.getPackage()
.getName();
public static final String CATEGORY_TOPO = "TOPO"; public double temperature;
} }

View file

@ -48,6 +48,7 @@ import com.raytheon.uf.common.time.domain.api.ITimePoint;
* Jan 22, 2013 1484 mpduff Add HOURS_PER_WEEK. * Jan 22, 2013 1484 mpduff Add HOURS_PER_WEEK.
* Jan 22, 2013 1519 djohnson Add MINUTES_PER_DAY. * Jan 22, 2013 1519 djohnson Add MINUTES_PER_DAY.
* Feb 26, 2013 1597 randerso Add SECONDS_PER_HOUR. * Feb 26, 2013 1597 randerso Add SECONDS_PER_HOUR.
* Feb 15, 2013 1638 mschenke Moved Util.getUnixTime into TimeUtil
* *
* </pre> * </pre>
* *
@ -394,6 +395,20 @@ public final class TimeUtil {
return calendar; return calendar;
} }
/**
* Returns UNIX time for a Date, this is time in seconds instead of millis
*
* @param date
* @return
*/
public static long getUnixTime(Date date) {
if (date == null) {
return 0;
} else {
return date.getTime() / 1000l;
}
}
/** /**
* Disabled constructor. * Disabled constructor.
*/ */

View file

@ -9,6 +9,5 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: com.raytheon.uf.common.datastorage;bundle-version="1.11.17", Require-Bundle: com.raytheon.uf.common.datastorage;bundle-version="1.11.17",
com.raytheon.uf.common.serialization;bundle-version="1.11.17", com.raytheon.uf.common.serialization;bundle-version="1.11.17",
com.raytheon.uf.common.geospatial;bundle-version="1.11.17", com.raytheon.uf.common.geospatial;bundle-version="1.11.17",
org.geotools;bundle-version="2.5.8" com.raytheon.uf.common.status;bundle-version="1.12.1174"
Export-Package: com.raytheon.uf.common.topo Export-Package: com.raytheon.uf.common.topo
Import-Package: com.raytheon.uf.common.serialization.comm

View file

@ -1,71 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.topo;
import org.geotools.coverage.grid.GridGeometry2D;
import com.vividsolutions.jts.geom.Coordinate;
/**
* Interface for topo query
*
* <pre>
*
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Oct 12, 2009 mschenke Initial creation
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public interface ITopoQuery {
/**
* Retrieves topo height in meters above mean sea level for the specified
* coordinate.
*
* @param coord
* should contain lon/lat in degrees
* @return
*/
public double getHeight(Coordinate coord);
/**
* Retrieves topo height in meters above mean sea level for the specified
* coordinates.
*
* @param coords
* should contain lon/lat in degrees
* @return
*/
public double[] getHeight(Coordinate[] coords);
/**
* Retrieves topo height in meters above mean sea level reprojected and
* interpolated to the specified grid geometry.
*
* @param targetGeom
* @return the topo data array in row major order
*/
public float[] getHeight(GridGeometry2D targetGeom);
}

View file

@ -17,11 +17,42 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.util; package com.raytheon.uf.common.topo;
public class UAPoint { /**
* Exception for Topo
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 15, 2013 1638 mschenke Initial creation
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public double pressure; public class TopoException extends Exception {
private static final long serialVersionUID = 7092944265178932711L;
public TopoException() {
}
public TopoException(String message, Throwable cause) {
super(message, cause);
}
public TopoException(String message) {
super(message);
}
public TopoException(Throwable cause) {
super(cause);
}
public double temperature;
} }

View file

@ -17,7 +17,7 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.uf.edex.topo; package com.raytheon.uf.common.topo;
import java.awt.Point; import java.awt.Point;
import java.awt.Rectangle; import java.awt.Rectangle;
@ -64,10 +64,6 @@ import com.raytheon.uf.common.geospatial.MapUtil;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.topo.ITopoQuery;
import com.raytheon.uf.edex.core.EdexException;
import com.raytheon.uf.edex.core.props.EnvProperties;
import com.raytheon.uf.edex.core.props.PropertiesFactory;
import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Coordinate;
/** /**
@ -89,6 +85,7 @@ import com.vividsolutions.jts.geom.Coordinate;
* 03/09/2012 DR 14581 D. Friedman Fix grid referencing and use custom * 03/09/2012 DR 14581 D. Friedman Fix grid referencing and use custom
* nearest-neighbor resampling.i * nearest-neighbor resampling.i
* 01/14/2013 #1469 bkowal Removed the hdf5 data directory. * 01/14/2013 #1469 bkowal Removed the hdf5 data directory.
* Feb 15, 2013 1638 mschenke Moved from edex.topo project (not edex specific)
* *
* </pre> * </pre>
* *
@ -96,13 +93,14 @@ import com.vividsolutions.jts.geom.Coordinate;
* @version 1.0 * @version 1.0
*/ */
public class TopoQuery implements ITopoQuery { public class TopoQuery {
private static final transient IUFStatusHandler statusHandler = UFStatus private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(TopoQuery.class); .getHandler(TopoQuery.class);
private static final String TOPO_FILE = "/topo/srtm30.hdf"; private static final String TOPO_FILE = "/topo/srtm30.hdf";
private static final int TOPO_LIMIT = 4096 * 4096;; private static final int TOPO_LIMIT = 4096 * 4096;
private static Map<Integer, TopoQuery> topoQueryMap; private static Map<Integer, TopoQuery> topoQueryMap;
@ -131,7 +129,7 @@ public class TopoQuery implements ITopoQuery {
try { try {
query = new TopoQuery(hdf5File, topoLevel); query = new TopoQuery(hdf5File, topoLevel);
topoQueryMap.put(topoLevel, query); topoQueryMap.put(topoLevel, query);
} catch (EdexException e) { } catch (TopoException e) {
statusHandler.handle(Priority.PROBLEM, e.getMessage(), e); statusHandler.handle(Priority.PROBLEM, e.getMessage(), e);
} }
} }
@ -163,17 +161,17 @@ public class TopoQuery implements ITopoQuery {
private int numLevels; private int numLevels;
TopoQuery(File hdf5File) throws EdexException { TopoQuery(File hdf5File) throws TopoException {
this(hdf5File, 0); this(hdf5File, 0);
} }
TopoQuery(File hdf5File, int level) throws EdexException { TopoQuery(File hdf5File, int level) throws TopoException {
this.topoLevel = level; this.topoLevel = level;
this.hdf5File = hdf5File; this.hdf5File = hdf5File;
init(); init();
} }
private void init() throws EdexException { private void init() throws TopoException {
dmtf = new DefaultMathTransformFactory(); dmtf = new DefaultMathTransformFactory();
dataStore = DataStoreFactory.getDataStore(hdf5File); dataStore = DataStoreFactory.getDataStore(hdf5File);
numLevels = getNumLevels(); numLevels = getNumLevels();
@ -266,7 +264,7 @@ public class TopoQuery implements ITopoQuery {
null); null);
} catch (Exception e) { } catch (Exception e) {
throw new EdexException("Error initializing TopoQuery from " throw new TopoException("Error initializing TopoQuery from "
+ hdf5File.getAbsolutePath(), e); + hdf5File.getAbsolutePath(), e);
} }
} }
@ -548,13 +546,15 @@ public class TopoQuery implements ITopoQuery {
double[] crsCorners = new double[worldCorners.length]; double[] crsCorners = new double[worldCorners.length];
GeneralEnvelope env = new GeneralEnvelope(2); GeneralEnvelope env = new GeneralEnvelope(2);
if (worldCorners[2] > worldGeomPM.getGridRange().getHigh(0) + 1) { if (worldCorners[2] > worldGeomPM.getGridRange().getHigh(0) + 1) {
worldGeomDL.getGridToCRS(PixelInCell.CELL_CORNER).transform(worldCorners, 0, worldGeomDL.getGridToCRS(PixelInCell.CELL_CORNER)
crsCorners, 0, worldCorners.length / 2); .transform(worldCorners, 0, crsCorners, 0,
worldCorners.length / 2);
env.setCoordinateReferenceSystem(worldGeomDL.getEnvelope() env.setCoordinateReferenceSystem(worldGeomDL.getEnvelope()
.getCoordinateReferenceSystem()); .getCoordinateReferenceSystem());
} else { } else {
worldGeomPM.getGridToCRS(PixelInCell.CELL_CORNER).transform(worldCorners, 0, worldGeomPM.getGridToCRS(PixelInCell.CELL_CORNER)
crsCorners, 0, worldCorners.length / 2); .transform(worldCorners, 0, crsCorners, 0,
worldCorners.length / 2);
env.setCoordinateReferenceSystem(worldGeomPM.getEnvelope() env.setCoordinateReferenceSystem(worldGeomPM.getEnvelope()
.getCoordinateReferenceSystem()); .getCoordinateReferenceSystem());
} }
@ -714,101 +714,116 @@ public class TopoQuery implements ITopoQuery {
return simpleResample(baseGC, topoValues, targetGeom); return simpleResample(baseGC, topoValues, targetGeom);
} }
float[] simpleResample(GridCoverage2D sourceGC, float[][] sourceData, GridGeometry2D targetGG) { float[] simpleResample(GridCoverage2D sourceGC, float[][] sourceData,
int sourceWidth = sourceGC.getGridGeometry().getGridRange2D().getSpan(0); GridGeometry2D targetGG) {
int sourceHeight = sourceGC.getGridGeometry().getGridRange2D().getSpan(1); int sourceWidth = sourceGC.getGridGeometry().getGridRange2D()
int targetWidth = targetGG.getGridRange2D().getSpan(0); .getSpan(0);
int targetHeight = targetGG.getGridRange2D().getSpan(1); int sourceHeight = sourceGC.getGridGeometry().getGridRange2D()
float[] output = new float[targetWidth * targetHeight]; .getSpan(1);
Arrays.fill(output, Float.NaN); int targetWidth = targetGG.getGridRange2D().getSpan(0);
int targetHeight = targetGG.getGridRange2D().getSpan(1);
float[] output = new float[targetWidth * targetHeight];
Arrays.fill(output, Float.NaN);
ArrayList<MathTransform> transforms = new ArrayList<MathTransform>(); ArrayList<MathTransform> transforms = new ArrayList<MathTransform>();
ArrayList<MathTransform> toGeoXforms = new ArrayList<MathTransform>(); ArrayList<MathTransform> toGeoXforms = new ArrayList<MathTransform>();
ArrayList<MathTransform> sourceToGeoXforms = new ArrayList<MathTransform>(); ArrayList<MathTransform> sourceToGeoXforms = new ArrayList<MathTransform>();
MathTransform targetGtoCRS = targetGG.getGridToCRS(PixelInCell.CELL_CENTER); MathTransform targetGtoCRS = targetGG
MathTransform sourceCRStoG = sourceGC.getGridGeometry().getCRSToGrid2D(PixelOrientation.CENTER); .getGridToCRS(PixelInCell.CELL_CENTER);
CoordinateReferenceSystem targetCRS = targetGG.getCoordinateReferenceSystem(); MathTransform sourceCRStoG = sourceGC.getGridGeometry().getCRSToGrid2D(
CoordinateReferenceSystem sourceCRS = sourceGC.getCoordinateReferenceSystem(); PixelOrientation.CENTER);
CoordinateReferenceSystem targetCRS = targetGG
.getCoordinateReferenceSystem();
CoordinateReferenceSystem sourceCRS = sourceGC
.getCoordinateReferenceSystem();
transforms.add(targetGtoCRS); transforms.add(targetGtoCRS);
if (! CRS.equalsIgnoreMetadata(sourceCRS, targetCRS)) { if (!CRS.equalsIgnoreMetadata(sourceCRS, targetCRS)) {
GeographicCRS sourceGeoCRS = null; GeographicCRS sourceGeoCRS = null;
GeographicCRS targetGeoCRS = null; GeographicCRS targetGeoCRS = null;
if (sourceCRS instanceof ProjectedCRS) { if (sourceCRS instanceof ProjectedCRS) {
sourceGeoCRS = ((ProjectedCRS) sourceCRS).getBaseCRS(); sourceGeoCRS = ((ProjectedCRS) sourceCRS).getBaseCRS();
} }
if (targetCRS instanceof ProjectedCRS) { if (targetCRS instanceof ProjectedCRS) {
targetGeoCRS = ((ProjectedCRS) targetCRS).getBaseCRS(); targetGeoCRS = ((ProjectedCRS) targetCRS).getBaseCRS();
} }
try { try {
transforms.add(CRS.findMathTransform(targetCRS, targetGeoCRS, true)); transforms.add(CRS.findMathTransform(targetCRS, targetGeoCRS,
toGeoXforms.addAll(transforms); true));
if (CRS.equalsIgnoreMetadata(sourceGeoCRS, targetGeoCRS)) { toGeoXforms.addAll(transforms);
// nothing... if (CRS.equalsIgnoreMetadata(sourceGeoCRS, targetGeoCRS)) {
} else { // nothing...
transforms.add(CRS.findMathTransform(targetGeoCRS, sourceGeoCRS)); } else {
} transforms.add(CRS.findMathTransform(targetGeoCRS,
transforms.add(CRS.findMathTransform(sourceGeoCRS, sourceCRS, true)); sourceGeoCRS));
sourceToGeoXforms.add(0, CRS.findMathTransform(sourceCRS, sourceGeoCRS)); }
} catch (FactoryException e) { transforms.add(CRS.findMathTransform(sourceGeoCRS, sourceCRS,
statusHandler.error(e.getMessage(), e); true));
return output; sourceToGeoXforms.add(0,
} CRS.findMathTransform(sourceCRS, sourceGeoCRS));
} } catch (FactoryException e) {
transforms.add(sourceCRStoG); statusHandler.error(e.getMessage(), e);
sourceToGeoXforms.add(0, sourceGC.getGridGeometry().getGridToCRS(PixelInCell.CELL_CENTER)); return output;
}
}
transforms.add(sourceCRStoG);
sourceToGeoXforms.add(0,
sourceGC.getGridGeometry()
.getGridToCRS(PixelInCell.CELL_CENTER));
MathTransform mt; MathTransform mt;
try { try {
mt = concatenateTransforms(transforms); mt = concatenateTransforms(transforms);
} catch (FactoryException e) { } catch (FactoryException e) {
statusHandler.error(e.getMessage(), e); statusHandler.error(e.getMessage(), e);
return output; return output;
} }
double[] coord = new double[2]; double[] coord = new double[2];
for (int y = 0; y < targetHeight; ++y) { for (int y = 0; y < targetHeight; ++y) {
for (int x = 0; x < targetWidth; ++x) { for (int x = 0; x < targetWidth; ++x) {
coord[0] = x; coord[0] = x;
coord[1] = y; coord[1] = y;
try { try {
mt.transform(coord, 0, coord, 0, 1); mt.transform(coord, 0, coord, 0, 1);
} catch (TransformException e) { } catch (TransformException e) {
continue; continue;
} }
int sx = (int) Math.round(coord[0]); int sx = (int) Math.round(coord[0]);
int sy = (int) Math.round(coord[1]); int sy = (int) Math.round(coord[1]);
if (sx >= 0 && sx < sourceWidth && sy >= 0 && sy < sourceHeight) if (sx >= 0 && sx < sourceWidth && sy >= 0 && sy < sourceHeight)
output[y * targetWidth + x] = sourceData[sy][sx]; output[y * targetWidth + x] = sourceData[sy][sx];
} }
} }
return output; return output;
} }
private static MathTransform concatenateTransforms(ArrayList<MathTransform> transforms) throws FactoryException { private static MathTransform concatenateTransforms(
Hints hints = new Hints(); ArrayList<MathTransform> transforms) throws FactoryException {
final CoordinateOperationFactory factory = Hints hints = new Hints();
ReferencingFactoryFinder.getCoordinateOperationFactory(hints); final CoordinateOperationFactory factory = ReferencingFactoryFinder
final MathTransformFactory mtFactory; .getCoordinateOperationFactory(hints);
if (factory instanceof AbstractCoordinateOperationFactory) { final MathTransformFactory mtFactory;
mtFactory = ((AbstractCoordinateOperationFactory) factory).getMathTransformFactory(); if (factory instanceof AbstractCoordinateOperationFactory) {
} else { mtFactory = ((AbstractCoordinateOperationFactory) factory)
mtFactory = ReferencingFactoryFinder.getMathTransformFactory(hints); .getMathTransformFactory();
} } else {
mtFactory = ReferencingFactoryFinder.getMathTransformFactory(hints);
}
MathTransform mt = null; MathTransform mt = null;
for (MathTransform mti : transforms) { for (MathTransform mti : transforms) {
if (mt == null) if (mt == null)
mt = mti; mt = mti;
else { else {
mt = mtFactory.createConcatenatedTransform(mt, mti); mt = mtFactory.createConcatenatedTransform(mt, mti);
} }
} }
return mt != null ? mt : IdentityTransform.create(2); return mt != null ? mt : IdentityTransform.create(2);
} }
} }

View file

@ -1,96 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.topo;
import org.geotools.coverage.grid.GridGeometry2D;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
import com.raytheon.uf.common.serialization.comm.IServerRequest;
import com.vividsolutions.jts.geom.Coordinate;
/**
* TODO Add Description
*
* <pre>
*
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Oct 10, 2009 mschenke Initial creation
* Jan 05, 2010 #3962 randerso added support for grid requests
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
@DynamicSerialize
public class TopoQueryRequest implements IServerRequest {
@DynamicSerializeElement
private int level = 0;
@DynamicSerializeElement
private boolean useCaching = false;
@DynamicSerializeElement
private Coordinate[] coordinates;
@DynamicSerializeElement
private GridGeometry2D gridGeometry;
public TopoQueryRequest() {
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public boolean isUseCaching() {
return useCaching;
}
public void setUseCaching(boolean useCaching) {
this.useCaching = useCaching;
}
public Coordinate[] getCoordinates() {
return coordinates;
}
public void setCoordinates(Coordinate[] coordinates) {
this.coordinates = coordinates;
}
public GridGeometry2D getGridGeometry() {
return gridGeometry;
}
public void setGridGeometry(GridGeometry2D targetGeom) {
this.gridGeometry = targetGeom;
}
}

View file

@ -17,13 +17,30 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.util; package com.raytheon.uf.common.units;
import java.text.ParseException; import java.text.ParseException;
import javax.measure.unit.Unit; import javax.measure.unit.Unit;
import javax.measure.unit.UnitFormat; import javax.measure.unit.UnitFormat;
/**
*
* Unit converter class
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 15, 2013 1638 mschenke Moved from edex.common util package
*
* </pre>
*
* @author unknown
* @version 1.0
*/
public class UnitConv { public class UnitConv {
public static Unit<?> deserializer(String unit) throws ParseException { public static Unit<?> deserializer(String unit) throws ParseException {

View file

@ -8,12 +8,13 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.junit;bundle-version="1.0.0", Require-Bundle: org.junit;bundle-version="1.0.0",
org.apache.commons.beanutils;bundle-version="1.8.3", org.apache.commons.beanutils;bundle-version="1.8.3",
com.raytheon.uf.common.status;bundle-version="1.12.1174", com.raytheon.uf.common.status;bundle-version="1.12.1174",
org.apache.commons.lang;bundle-version="2.3.0" org.apache.commons.lang;bundle-version="2.3.0",
org.apache.velocity;bundle-version="1.7.0"
Export-Package: com.raytheon.uf.common.util, Export-Package: com.raytheon.uf.common.util,
com.raytheon.uf.common.util.algorithm, com.raytheon.uf.common.util.algorithm,
com.raytheon.uf.common.util.cache, com.raytheon.uf.common.util.cache,
com.raytheon.uf.common.util.header, com.raytheon.uf.common.util.header,
com.raytheon.uf.common.util.mapping, com.raytheon.uf.common.util.mapping,
com.raytheon.uf.common.util.registry, com.raytheon.uf.common.util.registry,
com.raytheon.uf.common.util.session com.raytheon.uf.common.util.session,
Import-Package: org.apache.commons.lang com.raytheon.uf.common.util.velocity

View file

@ -0,0 +1,267 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.util;
/**
* Array operation utilities
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 15, 2013 1638 mschenke Functions moved from edex.common Util
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public class ArraysUtil {
/**
* Flip double array along a horizontal line.
*
* @param baseArray
* @return
*/
public static double[][] flipHoriz(double[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[y - i - 1][j] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Flip double array along a vertical line
*
* @param baseArray
* @return
*/
public static double[][] flipVert(double[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[i][x - j - 1] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Flip float array along a horizontal line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(float[][] baseArray) {
float temp;
int height = baseArray[0].length;
int width = baseArray.length;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i][j];
baseArray[i][j] = baseArray[i][width - j - 1];
baseArray[i][width - j - 1] = temp;
}
}
}
/**
* Rotate 180 degrees.
*
* @param baseArray
* @return
*/
public static void rotate180(float[] baseArray, int height, int width) {
int counter = 0;
int total = height * width;
float temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[counter];
baseArray[counter] = baseArray[total - counter - 1];
baseArray[total - counter - 1] = temp;
counter++;
}
}
}
/**
* Flip along a vertical
*
* @param baseArray
* @return
*/
public static void flipVert(float[] baseArray, int height, int width) {
float temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i * width + j];
baseArray[i * width + j] = baseArray[i * width + width - j - 1];
baseArray[i * width + width - j - 1] = temp;
}
}
}
/**
* Flip float array along a vertical line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(float[] baseArray, int height, int width) {
float temp = 0;
for (int i = 0; i < height / 2; i++) {
for (int j = 0; j < width; j++) {
temp = baseArray[j + width * i];
baseArray[j + width * i] = baseArray[j + width
* (height - i - 1)];
baseArray[j + width * (height - i - 1)] = temp;
}
}
}
/**
* Flip along a vertical
*
* @param baseArray
* @return
*/
public static void flipVert(byte[] baseArray, int height, int width) {
byte temp;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width / 2; j++) {
temp = baseArray[i * width + j];
baseArray[i * width + j] = baseArray[i * width + width - j - 1];
baseArray[i * width + width - j - 1] = temp;
}
}
}
/**
* Flip float array along a vertical line.
*
* @param baseArray
* @return
*/
public static void flipHoriz(byte[] baseArray, int height, int width) {
byte temp = 0;
for (int i = 0; i < height / 2; i++) {
for (int j = 0; j < width; j++) {
temp = baseArray[j + width * i];
baseArray[j + width * i] = baseArray[j + width
* (height - i - 1)];
baseArray[j + width * (height - i - 1)] = temp;
}
}
}
/**
* Flip float array along a vertical line
*
* @param baseArray
* @return
*/
public static float[][] flipVert(float[][] baseArray) {
int y = baseArray.length;
int x = baseArray[0].length;
float[][] returnVal = new float[y][x];
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
returnVal[i][x - j - 1] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Rotate double array 90 degrees to the right
*
* @param baseArray
* @return
*/
public static double[][] rotateRight(double[][] baseArray) {
int y = baseArray[0].length;
int x = baseArray.length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
returnVal[j][x - 1 - i] = baseArray[i][j];
}
}
return returnVal;
}
/**
* Rotate a double array 90 degrees to the left
*
* @param baseArray
* @return
*/
public static double[][] rotateLeft(double[][] baseArray) {
int y = baseArray[0].length;
int x = baseArray.length;
double[][] returnVal = new double[y][x];
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
returnVal[y - j - 1][i] = baseArray[i][j];
}
}
return returnVal;
}
}

View file

@ -53,6 +53,7 @@ import java.util.zip.GZIPOutputStream;
* Jul 06, 2012 798 jkorman Added more robust {@link #copyFile}. Added methods * Jul 06, 2012 798 jkorman Added more robust {@link #copyFile}. Added methods
* to create temporary directories and files. * to create temporary directories and files.
* 02/15/2013 #1597 randerso Fixed error when copying empty files * 02/15/2013 #1597 randerso Fixed error when copying empty files
* Feb 15, 2013 1638 mschenke Moved EOL field from edex.common Util
* *
* </pre> * </pre>
* *
@ -69,6 +70,11 @@ public class FileUtil {
public final static String fileSeparatorRegex = "[/\\\\]"; public final static String fileSeparatorRegex = "[/\\\\]";
/**
* Easy reference to system-dependent end of line
*/
public static final String EOL = System.getProperty("line.separator");
/** /**
* Joins one or more path components into a single path string. Path * Joins one or more path components into a single path string. Path
* components are separated by the operating system dependent * components are separated by the operating system dependent

View file

@ -32,6 +32,7 @@ import java.util.ArrayList;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jan 26, 2011 njensen Initial creation * Jan 26, 2011 njensen Initial creation
* Feb 15, 2013 1638 mschenke Moved GRID_FILL_VALUE from edex.common Util
* *
* </pre> * </pre>
* *
@ -41,6 +42,13 @@ import java.util.ArrayList;
public class GridUtil { public class GridUtil {
/**
* Moved from edex common util to clean up dependencies. Still need to
* figure out method for handling fill values and update
*/
public static final float GRID_FILL_VALUE = -999999f;
/** /**
* Bresenham's algorithm to determine closest points along a line on a grid. * Bresenham's algorithm to determine closest points along a line on a grid.
* This version is designed to add points to an existing ArrayList. The * This version is designed to add points to an existing ArrayList. The

View file

@ -17,10 +17,10 @@
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information. * further licensing information.
**/ **/
package com.raytheon.edex.util; package com.raytheon.uf.common.util;
/** /**
* TODO Add Description * Math utility functions
* *
* <pre> * <pre>
* *
@ -28,6 +28,7 @@ package com.raytheon.edex.util;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Aug 27, 2009 randerso Initial creation * Aug 27, 2009 randerso Initial creation
* Feb 15, 2013 1638 mschenke Moved from edex.common util package
* *
* </pre> * </pre>
* *

View file

@ -0,0 +1,137 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.util.velocity;
import java.io.File;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.runtime.resource.loader.FileResourceLoader;
import com.raytheon.uf.common.util.FileUtil;
/**
* Apache Velocity manager/executor class
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 18, 2013 1638 mschenke Initial creation
*
* </pre>
*
* @author mschenke
* @version 1.0
*/
public class VelocityManager {
private static Map<Object, VelocityEngine> engines = new HashMap<Object, VelocityEngine>();
/**
* Execute the velocity template designated by vmFile
*
* @param vmFile
* @param logDir
* @param templateObjects
* @return
*/
public static String executeTemplate(File vmFile, File logDir,
Map<String, Object> templateObjects) {
return executeTemplate(vmFile, vmFile.getParentFile(), logDir,
templateObjects);
}
/**
* Execute the velocity template designated by vmFile
*
* @param vmFile
* @param globalTemplateDir
* @param logDir
* @param templateObjects
* @return
*/
public static String executeTemplate(File vmFile, File globalTemplateDir,
File logDir, Map<String, Object> templateObjects) {
Object key = vmFile.getAbsolutePath() + "::"
+ globalTemplateDir.getAbsolutePath();
VelocityEngine engine = null;
synchronized (engines) {
engine = engines.get(key);
if (engine == null) {
engine = new VelocityEngine();
Properties p = new Properties();
String scriptDir = globalTemplateDir.getAbsolutePath();
String rootsToCheck = scriptDir;
for (File root : File.listRoots()) {
rootsToCheck += "," + root.getAbsolutePath();
}
p.setProperty("file.resource.loader.class",
FileResourceLoader.class.getName());
p.setProperty("file.resource.loader.path", rootsToCheck);
p.setProperty("velocimacro.permissions.allowInline", "true");
p.setProperty(
"velocimacro.permissions.allow.inline.to.replace.global",
"true");
p.setProperty("runtime.log",
FileUtil.join(logDir.getAbsolutePath(), "velocity.log"));
engine.init(p);
engines.put(key, engine);
}
}
return executeTemplate(vmFile, templateObjects, engine);
}
/**
* Execute the velocity template designated by vmFile
*
* @param vmFile
* @param templateObjects
* @param velocityProperties
* @return
*/
public static String executeTemplate(File vmFile,
Map<String, Object> templateObjects, Properties velocityProperties) {
VelocityEngine engine = new VelocityEngine();
engine.init(velocityProperties);
return executeTemplate(vmFile, templateObjects, engine);
}
private static String executeTemplate(File vmFile,
Map<String, Object> templateObjects, VelocityEngine engine) {
VelocityContext context = new VelocityContext(templateObjects);
StringWriter sw = new StringWriter();
Template t = engine.getTemplate(vmFile.getAbsolutePath(),
Velocity.ENCODING_DEFAULT);
t.merge(context, sw);
return sw.toString();
}
}

View file

@ -148,13 +148,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.raytheon.uf.edex.topo"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="com.raytheon.uf.edex.plugin.manualIngest" id="com.raytheon.uf.edex.plugin.manualIngest"
download-size="0" download-size="0"

View file

@ -25,7 +25,7 @@ import java.util.List;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import com.raytheon.edex.msg.DataURINotificationMessage; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
/** /**
* Provides a dispatcher for CPG services * Provides a dispatcher for CPG services
@ -39,6 +39,7 @@ import com.raytheon.edex.msg.DataURINotificationMessage;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Jan 5, 2010 chammack Initial creation * Jan 5, 2010 chammack Initial creation
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
* *
* </pre> * </pre>
* *

View file

@ -24,12 +24,12 @@ import java.util.concurrent.Executor;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import com.raytheon.edex.msg.DataURINotificationMessage;
import com.raytheon.edex.urifilter.IURIFilter; import com.raytheon.edex.urifilter.IURIFilter;
import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.edex.urifilter.URIFilter;
import com.raytheon.edex.urifilter.URIGenerateMessage; import com.raytheon.edex.urifilter.URIGenerateMessage;
import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginDataObject;
import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.PluginException;
import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
import com.raytheon.uf.common.event.EventBus; import com.raytheon.uf.common.event.EventBus;
import com.raytheon.uf.common.monitor.cpg.MonitorStateConfigurationManager; import com.raytheon.uf.common.monitor.cpg.MonitorStateConfigurationManager;
import com.raytheon.uf.common.serialization.SerializationUtil; import com.raytheon.uf.common.serialization.SerializationUtil;
@ -60,6 +60,7 @@ import com.raytheon.uf.edex.database.plugin.PluginDao;
* 30NOV2012 1372 dhladky Added statistics. * 30NOV2012 1372 dhladky Added statistics.
* 02/05/2013 1580 mpduff EventBus refactor. * 02/05/2013 1580 mpduff EventBus refactor.
* 02/12/2013 1615 bgonzale Changed ProcessEvent pluginName to dataType. * 02/12/2013 1615 bgonzale Changed ProcessEvent pluginName to dataType.
* Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin
* *
* </pre> * </pre>
* *

View file

@ -4,6 +4,5 @@ Bundle-Name: ESB Launcher Plug-in
Bundle-SymbolicName: com.raytheon.uf.edex.esb.camel.launcher Bundle-SymbolicName: com.raytheon.uf.edex.esb.camel.launcher
Bundle-Version: 1.12.1174.qualifier Bundle-Version: 1.12.1174.qualifier
Bundle-Vendor: Raytheon Bundle-Vendor: Raytheon
Require-Bundle: org.apache.activemq
Main-Class: com.raytheon.uf.edex.esb.Main Main-Class: com.raytheon.uf.edex.esb.Main
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6

View file

@ -48,6 +48,7 @@ import java.util.StringTokenizer;
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Nov 14, 2008 chammack Initial creation * Nov 14, 2008 chammack Initial creation
* Feb 15, 2013 1638 mschenke Removed reference to unused "stop" method
* </pre> * </pre>
* *
* @author chammack * @author chammack
@ -76,14 +77,14 @@ public class Main {
if (args.length != 1) { if (args.length != 1) {
valid = false; valid = false;
} else if (!argList.contains("start") && !argList.contains("stop")) { } else if (!argList.contains("start")) {
valid = false; valid = false;
} }
if (!valid) { if (!valid) {
System.out.println("Invalid or missing arguments."); System.out.println("Invalid or missing arguments.");
System.out.println("Usage: edex [operation]"); System.out.println("Usage: edex [operation]");
System.out.println(" where operation is start or stop."); System.out.println(" where operation is start.");
System.exit(0); System.exit(0);
} }
@ -148,9 +149,6 @@ public class Main {
Method m = c.getMethod("start", new Class<?>[0]); Method m = c.getMethod("start", new Class<?>[0]);
m.invoke(null, new Object[0]); m.invoke(null, new Object[0]);
} else if (args[0].equals("stop")) {
Method m = c.getMethod("stop", new Class<?>[0]);
m.invoke(null, new Object[0]);
} }
System.exit(0); System.exit(0);
} catch (ClassNotFoundException e) { } catch (ClassNotFoundException e) {
@ -266,8 +264,8 @@ public class Main {
url = jarConnection.getJarFileURL(); url = jarConnection.getJarFileURL();
URI baseURI = new URI(url.toString()).resolve(".."); URI baseURI = new URI(url.toString()).resolve("..");
edexHome = new File(baseURI).getCanonicalFile(); edexHome = new File(baseURI).getCanonicalFile();
System.setProperty(SYSTEM_PROPERTY, edexHome System.setProperty(SYSTEM_PROPERTY,
.getAbsolutePath()); edexHome.getAbsolutePath());
} catch (Exception ignored) { } catch (Exception ignored) {
} }
} }

View file

@ -8,7 +8,6 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.apache.camel;bundle-version="1.0.0", Require-Bundle: org.apache.camel;bundle-version="1.0.0",
javax.jms, javax.jms,
com.raytheon.edex.common;bundle-version="1.10.7", com.raytheon.edex.common;bundle-version="1.10.7",
org.apache.activemq;bundle-version="5.1.0",
org.apache.http;bundle-version="3.0.1", org.apache.http;bundle-version="3.0.1",
com.raytheon.uf.common.localization;bundle-version="1.11.17", com.raytheon.uf.common.localization;bundle-version="1.11.17",
com.raytheon.uf.common.status, com.raytheon.uf.common.status,

Some files were not shown because too many files have changed in this diff Show more