From e193ba7f0fe379e4cebe06ff78cdcd12baebe823 Mon Sep 17 00:00:00 2001 From: Ben Steffensmeier Date: Tue, 29 Oct 2013 17:31:23 -0500 Subject: [PATCH 1/5] Issue #2491 Bug fixes and clean up all remaining resource datas. Change-Id: I6cb8948a984f298d938e1b6baa9bf4af5fe6d4c6 Former-commit-id: a4cbc8020ad9fe309acbc1f7522e9e8f5c9ff15c [formerly e15fecc4594cc3a32346a43d882902810a14a70e] [formerly 5b395f7417c4177cb7f18027d70be99207643eb4] [formerly a4cbc8020ad9fe309acbc1f7522e9e8f5c9ff15c [formerly e15fecc4594cc3a32346a43d882902810a14a70e] [formerly 5b395f7417c4177cb7f18027d70be99207643eb4] [formerly 27a392f90eb13365aa9d6a616600cd5780855331 [formerly 5b395f7417c4177cb7f18027d70be99207643eb4 [formerly 2412d6f094f98a8c24491ab43a2a88cf696758af]]]] Former-commit-id: 27a392f90eb13365aa9d6a616600cd5780855331 Former-commit-id: 8ec09e8f61f9ea21e5bf0ff1062824ed8e91ae49 [formerly 78efdb7572f2c2e5bbf1954f810c66f4f00d6e77] [formerly 08cc956d9a9abcf58a33328430ea1253b6f6e00d [formerly 418c2595678ee521533c8265db49d17bffd0d6aa]] Former-commit-id: a33b0178c5a7309ae9c12ac4f7b2267997da8f07 [formerly 9d87eb50e237893ae5ccda79da2c99489f95aadc] Former-commit-id: 02b9133d50ebd070ce3afefedb2d0191e6a6dd0b --- ...f.common.serialization.ISerializableObject | 5 +--- ...f.common.serialization.ISerializableObject | 8 +----- .../core/procedures/ProcedureXmlManager.java | 14 +++++++++++ ...f.common.serialization.ISerializableObject | 1 - ...f.common.serialization.ISerializableObject | 3 +-- ...f.common.serialization.ISerializableObject | 9 +------ ...f.common.serialization.ISerializableObject | 3 --- ...f.common.serialization.ISerializableObject | 2 -- .../raytheon/viz/ui/actions/SaveBundle.java | 12 +++++---- .../viz/ui/cmenu/LoadAsDisplayTypeAction.java | 25 +++++++++++-------- ...f.common.serialization.ISerializableObject | 1 - ...f.common.serialization.ISerializableObject | 1 - ...f.common.serialization.ISerializableObject | 4 +-- 13 files changed, 40 insertions(+), 48 deletions(-) delete mode 100644 cave/com.raytheon.uf.viz.datadelivery/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject delete mode 100644 ncep/gov.noaa.nws.ncep.viz.rsc.ncgrid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject diff --git a/cave/com.raytheon.uf.viz.collaboration.display/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.uf.viz.collaboration.display/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 90d61b4ecf..bc3844a9a4 100644 --- a/cave/com.raytheon.uf.viz.collaboration.display/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.uf.viz.collaboration.display/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,7 +1,4 @@ com.raytheon.uf.viz.collaboration.display.editor.CreateRemoteDisplay -com.raytheon.uf.viz.collaboration.display.roles.dataprovider.rsc.DataProviderRscData -com.raytheon.uf.viz.collaboration.display.rsc.CollaborationWrapperResourceData com.raytheon.uf.viz.collaboration.display.rsc.event.SharedResource com.raytheon.uf.viz.collaboration.display.rsc.event.ResourceCapabilityChanged -com.raytheon.uf.viz.collaboration.display.rsc.event.ResourcePropertiesChanged -com.raytheon.uf.viz.collaboration.display.rsc.telestrator.CollaborationDrawingResourceData \ No newline at end of file +com.raytheon.uf.viz.collaboration.display.rsc.event.ResourcePropertiesChanged \ No newline at end of file diff --git a/cave/com.raytheon.uf.viz.core.maps/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.uf.viz.core.maps/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index afb7f3fb15..eaca841d6a 100644 --- a/cave/com.raytheon.uf.viz.core.maps/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.uf.viz.core.maps/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,7 +1 @@ -com.raytheon.uf.viz.core.maps.rsc.MapResourceGroupData -com.raytheon.uf.viz.core.maps.rsc.DbMapResourceData -com.raytheon.uf.viz.core.maps.rsc.DbPointMapResourceData -com.raytheon.uf.viz.core.maps.MapStylePreferenceStore -com.raytheon.uf.viz.core.maps.display.MapRenderableDisplay -com.raytheon.uf.viz.core.maps.display.PlainMapRenderableDisplay -com.raytheon.uf.viz.core.maps.scales.MapScaleRenderableDisplay \ No newline at end of file +com.raytheon.uf.viz.core.maps.MapStylePreferenceStore \ No newline at end of file diff --git a/cave/com.raytheon.uf.viz.core/src/com/raytheon/uf/viz/core/procedures/ProcedureXmlManager.java b/cave/com.raytheon.uf.viz.core/src/com/raytheon/uf/viz/core/procedures/ProcedureXmlManager.java index b63080fdb4..e3799cb617 100644 --- a/cave/com.raytheon.uf.viz.core/src/com/raytheon/uf/viz/core/procedures/ProcedureXmlManager.java +++ b/cave/com.raytheon.uf.viz.core/src/com/raytheon/uf/viz/core/procedures/ProcedureXmlManager.java @@ -154,6 +154,20 @@ public class ProcedureXmlManager { } } + /** + * Transofrm an object to XML and store it in the specified file. + * + * @param obj + * Object to store + * @param filePath + * file to store object in. + * @throws SerializationException + */ + public void marshalToFile(Object obj, String filePath) + throws SerializationException { + getManager().marshalToXmlFile(obj, filePath); + } + /** * Transform some xml in a String to an object of the specified class. * diff --git a/cave/com.raytheon.uf.viz.datadelivery/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.uf.viz.datadelivery/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject deleted file mode 100644 index 87f0b2f96c..0000000000 --- a/cave/com.raytheon.uf.viz.datadelivery/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ /dev/null @@ -1 +0,0 @@ -com.raytheon.uf.viz.datadelivery.rsc.DrawBoxResourceData \ No newline at end of file diff --git a/cave/com.raytheon.uf.viz.npp.viirs/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.uf.viz.npp.viirs/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index d53a3cf42a..3bf33db892 100644 --- a/cave/com.raytheon.uf.viz.npp.viirs/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.uf.viz.npp.viirs/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,2 +1 @@ -com.raytheon.uf.viz.npp.viirs.rsc.VIIRSResourceData -com.raytheon.uf.viz.npp.viirs.style.VIIRSDataMatchCriteria +com.raytheon.uf.viz.npp.viirs.style.VIIRSDataMatchCriteria \ No newline at end of file diff --git a/cave/com.raytheon.viz.grid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.viz.grid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 933c5ffffe..588bd6c7a3 100644 --- a/cave/com.raytheon.viz.grid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.viz.grid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,9 +1,2 @@ com.raytheon.viz.grid.xml.ParameterList -com.raytheon.viz.grid.xml.ParameterMapping -com.raytheon.viz.grid.rsc.GridResourceData -com.raytheon.viz.grid.rsc.FfgVizGroupResourceData -com.raytheon.viz.grid.rsc.RcmResourceData -com.raytheon.viz.grid.rsc.GridLoadProperties -com.raytheon.viz.grid.rsc.DataMappedGridResourceData -com.raytheon.viz.grid.rsc.general.DifferenceGridResourceData -com.raytheon.viz.grid.GridProductBrowserDataDefinition \ No newline at end of file +com.raytheon.viz.grid.xml.ParameterMapping \ No newline at end of file diff --git a/cave/com.raytheon.viz.hydro/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.viz.hydro/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index fec61bcf0a..9144a771dd 100644 --- a/cave/com.raytheon.viz.hydro/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.viz.hydro/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,5 +1,2 @@ -com.raytheon.viz.hydro.ui.HydroMapRenderableDisplay com.raytheon.viz.hydro.timeseries.ShefIssueXML com.raytheon.viz.hydro.appsdefaults.SHEFAppsDefaultsXML -com.raytheon.viz.hydro.resource.DamLocationResourceData -com.raytheon.viz.hydro.resource.MultiPointResourceData \ No newline at end of file diff --git a/cave/com.raytheon.viz.redbook/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/cave/com.raytheon.viz.redbook/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 79678ac4b1..8d76b088d8 100644 --- a/cave/com.raytheon.viz.redbook/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/cave/com.raytheon.viz.redbook/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,4 +1,2 @@ com.raytheon.viz.redbook.RedbookWMOMap -com.raytheon.viz.redbook.rsc.RedbookResourceData -com.raytheon.viz.redbookua.rsc.RedbookUpperAirResourceData com.raytheon.viz.redbook.rsc.RedbookProductBrowserDataDefinition diff --git a/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/actions/SaveBundle.java b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/actions/SaveBundle.java index 0b54d7a1d1..6781f8f16c 100644 --- a/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/actions/SaveBundle.java +++ b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/actions/SaveBundle.java @@ -35,10 +35,10 @@ import org.eclipse.swt.widgets.FileDialog; import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.PlatformUI; -import com.raytheon.uf.common.serialization.SerializationUtil; import com.raytheon.uf.viz.core.drawables.AbstractRenderableDisplay; import com.raytheon.uf.viz.core.drawables.IRenderableDisplay; import com.raytheon.uf.viz.core.procedures.Bundle; +import com.raytheon.uf.viz.core.procedures.ProcedureXmlManager; import com.raytheon.viz.ui.EditorUtil; import com.raytheon.viz.ui.UiPlugin; import com.raytheon.viz.ui.UiUtil; @@ -50,9 +50,11 @@ import com.raytheon.viz.ui.UiUtil; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Jan 29, 2007 chammack Initial Creation. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Jan 29, 2007 chammack Initial Creation. + * Oct 22, 2013 2491 bsteffen Switch serialization to + * ProcedureXmlManager * * * @@ -108,7 +110,7 @@ public class SaveBundle extends AbstractHandler { try { Bundle bundle = extractCurrentBundle(); - SerializationUtil.jaxbMarshalToXmlFile(bundle, fileName); + ProcedureXmlManager.getInstance().marshalToFile(bundle, fileName); } catch (Exception e) { Status status = new Status(Status.ERROR, UiPlugin.PLUGIN_ID, 0, "Error occurred during bundle save.", e); diff --git a/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/cmenu/LoadAsDisplayTypeAction.java b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/cmenu/LoadAsDisplayTypeAction.java index c21f9274be..c495f59266 100644 --- a/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/cmenu/LoadAsDisplayTypeAction.java +++ b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/cmenu/LoadAsDisplayTypeAction.java @@ -19,14 +19,13 @@ **/ package com.raytheon.viz.ui.cmenu; -import javax.xml.bind.JAXBException; - -import com.raytheon.uf.common.serialization.SerializationUtil; +import com.raytheon.uf.common.serialization.SerializationException; 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.drawables.ResourcePair; import com.raytheon.uf.viz.core.exception.VizException; +import com.raytheon.uf.viz.core.procedures.ProcedureXmlManager; import com.raytheon.uf.viz.core.rsc.AbstractResourceData; import com.raytheon.uf.viz.core.rsc.AbstractVizResource; import com.raytheon.uf.viz.core.rsc.DisplayType; @@ -35,15 +34,18 @@ import com.raytheon.uf.viz.core.rsc.ResourceProperties; import com.raytheon.uf.viz.core.rsc.capabilities.DisplayTypeCapability; /** - * TODO Add Description + * Duplicate a resource but with a different display type. Works only on + * resources with the {@link DisplayTypeCapability}. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Apr 26, 2010            bsteffen     Initial creation
- * Aug 10, 2011           njensen      Added runWithEvent
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Apr 26, 2010           bsteffen    Initial creation
+ * Aug 10, 2011           njensen     Added runWithEvent
+ * Oct 22, 2013  2491     bsteffen    Switch serialization to
+ *                                    ProcedureXmlManager
  * 
  * 
* @@ -63,11 +65,12 @@ public abstract class LoadAsDisplayTypeAction extends AbstractRightClickAction { @Override public void run() { try { + ProcedureXmlManager jaxb = ProcedureXmlManager.getInstance(); ResourcePair rp = selectedRsc; ResourceGroup group = new ResourceGroup(); group.getResourceList().add(rp); - String xml = SerializationUtil.marshalToXml(group); - group = (ResourceGroup) SerializationUtil.unmarshalFromXml(xml); + String xml = jaxb.marshal(group); + group = jaxb.unmarshal(ResourceGroup.class, xml); rp = group.getResourceList().get(0); rp.setProperties(new ResourceProperties()); rp.getLoadProperties() @@ -77,7 +80,7 @@ public abstract class LoadAsDisplayTypeAction extends AbstractRightClickAction { .setDisplayType(getDisplayType()); rp.instantiateResource(getDescriptor()); getDescriptor().getResourceList().add(rp); - } catch (JAXBException e) { + } catch (SerializationException e) { statusHandler.handle(Priority.PROBLEM, "Unexpected error cloning resource", e); } catch (VizException e) { diff --git a/ncep/gov.noaa.nws.ncep.ui.pgen/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/ncep/gov.noaa.nws.ncep.ui.pgen/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 98e7abfe54..d52843e3df 100644 --- a/ncep/gov.noaa.nws.ncep.ui.pgen/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/ncep/gov.noaa.nws.ncep.ui.pgen/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -7,5 +7,4 @@ gov.noaa.nws.ncep.ui.pgen.tca.WaterBreakpointList gov.noaa.nws.ncep.ui.pgen.tca.CoastBreakpointList gov.noaa.nws.ncep.ui.pgen.file.Products gov.noaa.nws.ncep.ui.pgen.producttypes.ProductTypes -gov.noaa.nws.ncep.ui.pgen.rsc.PgenResourceData gov.noaa.nws.ncep.ui.pgen.attrdialog.SpcPhoneList \ No newline at end of file diff --git a/ncep/gov.noaa.nws.ncep.viz.rsc.ncgrid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/ncep/gov.noaa.nws.ncep.viz.rsc.ncgrid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject deleted file mode 100644 index f97ec8539c..0000000000 --- a/ncep/gov.noaa.nws.ncep.viz.rsc.ncgrid/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ /dev/null @@ -1 +0,0 @@ -gov.noaa.nws.ncep.edex.common.dataRecords.NcFloatDataRecord \ No newline at end of file diff --git a/ncep/gov.noaa.nws.ncep.viz.rsc.plotdata/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/ncep/gov.noaa.nws.ncep.viz.rsc.plotdata/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 6d6c5d0544..c5f02bf905 100644 --- a/ncep/gov.noaa.nws.ncep.viz.rsc.plotdata/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/ncep/gov.noaa.nws.ncep.viz.rsc.plotdata/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,6 +1,4 @@ -gov.noaa.nws.ncep.viz.rsc.plotdata.rsc.PlotResourceData gov.noaa.nws.ncep.viz.rsc.plotdata.parameters.PlotParameterDefn gov.noaa.nws.ncep.viz.rsc.plotdata.parameters.PlotParameterDefns gov.noaa.nws.ncep.viz.rsc.plotdata.plotModels.elements.PlotModel -gov.noaa.nws.ncep.viz.rsc.plotdata.conditionalfilter.ConditionalFilter -gov.noaa.nws.ncep.viz.rsc.plotdata.rsc.TafPlotInfoRetriever \ No newline at end of file +gov.noaa.nws.ncep.viz.rsc.plotdata.conditionalfilter.ConditionalFilter \ No newline at end of file From c7e966b43e0b28759d90263c476c4fb89977da7e Mon Sep 17 00:00:00 2001 From: David Gillingham Date: Tue, 24 Sep 2013 16:02:04 -0500 Subject: [PATCH 2/5] Issue #1843: Return status back to client when contacting one of the configured ETN partners fails. Change-Id: I5bd49f6930c317ba21725ff53f6ab65d548f037c Former-commit-id: ab3b629a6be42c8deb85407d0d151a7558ac5f5b [formerly c58160c9a927d6efc083cf93ea3a9d7bfd98d004] [formerly 297fd6c3d4660f95f6ba8b7b894f6cb8faac504e] [formerly ab3b629a6be42c8deb85407d0d151a7558ac5f5b [formerly c58160c9a927d6efc083cf93ea3a9d7bfd98d004] [formerly 297fd6c3d4660f95f6ba8b7b894f6cb8faac504e] [formerly b7b29a1fdbd8f51ac9117ddb389508fc54e305a8 [formerly 297fd6c3d4660f95f6ba8b7b894f6cb8faac504e [formerly 18a09da6aba3caf83f4c4df71f2fcffb63043fb1]]]] Former-commit-id: b7b29a1fdbd8f51ac9117ddb389508fc54e305a8 Former-commit-id: 2ddacaea3011ccea96b5f6b93393a8c1c1b7081c [formerly 68b0b2e3db0d3bc65b3ef09534776299f6c1f5b2] [formerly 0f0aefb2c1b9d5dfbee8cd33020b863e61f2b01f [formerly 996817f12416b1bfa2a3f7e0731d42f8a0366ebb]] Former-commit-id: 88b3c16c68fc66755ed20e6b4157548ca26d3124 [formerly eef2c93d6c915fc639ba7879d674b4b5b5e7d8cb] Former-commit-id: 75acd532a1300896e56f956d1ef62093d3aea359 --- .../com.raytheon.viz.gfe/META-INF/MANIFEST.MF | 6 +- .../textUtilities/headline/HazardsTable.py | 3 +- .../ETNConfirmationDialog.java | 217 +++++++++++++++++ .../formatterlauncher/StoreTransmitDlg.java | 144 ++++++++--- .../raytheon/viz/gfe/vtec/GFEVtecUtil.java | 171 ++++++++++++-- .../META-INF/MANIFEST.MF | 6 +- .../viz/texteditor/util/VtecUtil.java | 41 +++- .../viz/ui/dialogs/TextDisplayDlg.java | 166 +++++++++++++ .../META-INF/MANIFEST.MF | 3 +- .../common/activetable/GetNextEtnRequest.java | 73 +++++- .../request/LockAndGetNextEtnRequest.java | 19 ++ .../response/GetNextEtnResponse.java | 144 +++++++++++ .../edex/activetable/GetNextEtnHandler.java | 18 +- .../uf/edex/activetable/GetNextEtnUtil.java | 223 ++++++++++++------ .../handler/LockAndGetNextEtnHandler.java | 3 +- .../base/vtec/remote-etn-partners.properties | 10 +- 16 files changed, 1090 insertions(+), 157 deletions(-) create mode 100644 cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/ETNConfirmationDialog.java create mode 100644 cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/dialogs/TextDisplayDlg.java create mode 100644 edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/response/GetNextEtnResponse.java diff --git a/cave/com.raytheon.viz.gfe/META-INF/MANIFEST.MF b/cave/com.raytheon.viz.gfe/META-INF/MANIFEST.MF index 82e46a849f..34fdddb32d 100644 --- a/cave/com.raytheon.viz.gfe/META-INF/MANIFEST.MF +++ b/cave/com.raytheon.viz.gfe/META-INF/MANIFEST.MF @@ -31,7 +31,8 @@ Require-Bundle: org.eclipse.ui, com.raytheon.uf.common.python;bundle-version="1.12.1174", com.raytheon.uf.common.colormap;bundle-version="1.12.1174", com.google.guava;bundle-version="1.0.0", - com.raytheon.uf.common.style;bundle-version="1.0.0" + com.raytheon.uf.common.style;bundle-version="1.0.0", + com.raytheon.uf.common.activetable Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.viz.gfe, com.raytheon.viz.gfe.constants, @@ -52,8 +53,7 @@ Export-Package: com.raytheon.viz.gfe, com.raytheon.viz.gfe.ui, com.raytheon.viz.gfe.ui.runtimeui, com.raytheon.viz.gfe.ui.zoneselector -Import-Package: com.raytheon.uf.common.activetable, - com.raytheon.uf.common.dissemination, +Import-Package: com.raytheon.uf.common.dissemination, com.raytheon.uf.common.message, com.raytheon.uf.common.python.concurrent, com.raytheon.uf.common.serialization.comm, diff --git a/cave/com.raytheon.viz.gfe/localization/gfe/userPython/textUtilities/headline/HazardsTable.py b/cave/com.raytheon.viz.gfe/localization/gfe/userPython/textUtilities/headline/HazardsTable.py index 2ae790a5e7..ec6c6ea1e7 100644 --- a/cave/com.raytheon.viz.gfe/localization/gfe/userPython/textUtilities/headline/HazardsTable.py +++ b/cave/com.raytheon.viz.gfe/localization/gfe/userPython/textUtilities/headline/HazardsTable.py @@ -29,6 +29,7 @@ # ??/??/?? ???????? Initial Creation. # 05/14/13 1842 dgilling Use GFEVtecUtil to handle NEW # ETN assignment. +# 09/24/13 1843 dgilling Handle GetNextEtnResponse. # # @@ -713,7 +714,7 @@ class HazardsTable(VTECTableUtil.VTECTableUtil): # Local WFOs do not assign these numbers, so they should have # numbers < 1000 if phensig not in self.__tpcKeys or self.__siteID4 in self.__sitesIgnoreNatlEtn: - etn_base = GFEVtecUtil.getNextEtn(self.__siteID4, '.'.join(phensig), False) - 1 + etn_base = GFEVtecUtil.getNextEtn(self.__siteID4, '.'.join(phensig), False).getNextEtn() - 1 else: presentyear = time.gmtime(self.__time)[0] for active in activeTable: diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/ETNConfirmationDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/ETNConfirmationDialog.java new file mode 100644 index 0000000000..dadd3bf6c8 --- /dev/null +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/ETNConfirmationDialog.java @@ -0,0 +1,217 @@ +/** + * 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.viz.gfe.dialogs.formatterlauncher; + +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + +import org.eclipse.jface.dialogs.IDialogConstants; +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Group; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Spinner; + +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; +import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; +import com.raytheon.viz.ui.dialogs.TextDisplayDlg; +import com.raytheon.viz.ui.dialogs.TextDisplayDlg.Location; + +/** + * Dialog displayed to manually confirm ETN assignment when backup partners can + * not be reached + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 23, 2013  #1843     randerso     Initial creation
+ * 
+ * 
+ * + * @author randerso + * @version 1.0 + */ + +public class ETNConfirmationDialog extends CaveJFACEDialog { + + // TODO make this configurable + private static final int MAX_ETN_DELTA = 10; + + private String phenSig; + + private int proposedEtn; + + private Map resultsByHost; + + private List errorMessages; + + private Spinner proposedEtnSpinner; + + /** + * Dialog constructor + * + * @param parentShell + * @param etnResponse + */ + public ETNConfirmationDialog(Shell parentShell, + GetNextEtnResponse etnResponse) { + super(parentShell); + + this.phenSig = etnResponse.getPhensig(); + this.proposedEtn = etnResponse.getNextEtn(); + this.resultsByHost = etnResponse.getResultsByHost(); + this.errorMessages = etnResponse.getErrorMessages(); + } + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets + * .Shell) + */ + @Override + protected void configureShell(Shell newShell) { + newShell.setText("Confirm ETN for " + this.phenSig); + super.configureShell(newShell); + } + + /* + * (non-Javadoc) + * + * @see + * com.raytheon.viz.ui.dialogs.CaveJFACEDialog#createDialogArea(org.eclipse + * .swt.widgets.Composite) + */ + @Override + protected Control createDialogArea(Composite parent) { + Composite top = (Composite) super.createDialogArea(parent); + GridLayout layout = (GridLayout) top.getLayout(); + layout.numColumns = 2; + + Label label = new Label(top, SWT.LEFT); + GridData layoutData = new GridData(SWT.FILL, SWT.CENTER, true, false); + label.setLayoutData(layoutData); + label.setText("Proposed ETN for " + this.phenSig + ":"); + + proposedEtnSpinner = new Spinner(top, SWT.BORDER); + layoutData = new GridData(SWT.FILL, SWT.CENTER, false, false); + proposedEtnSpinner.setLayoutData(layoutData); + proposedEtnSpinner.setValues(this.proposedEtn, this.proposedEtn, + this.proposedEtn + MAX_ETN_DELTA, 0, 1, 1); + + Group group = new Group(top, SWT.NONE); + layout = new GridLayout(2, false); + group.setLayout(layout); + layoutData = new GridData(SWT.FILL, SWT.DEFAULT, true, false); + layoutData.horizontalSpan = 2; + group.setLayoutData(layoutData); + group.setText("Partner ETNs"); + + for (Entry entry : this.resultsByHost.entrySet()) { + Label host = new Label(group, SWT.LEFT); + layoutData = new GridData(SWT.FILL, SWT.DEFAULT, true, false); + host.setLayoutData(layoutData); + host.setText(entry.getKey()); + + Label etn = new Label(group, SWT.RIGHT); + layoutData = new GridData(SWT.FILL, SWT.DEFAULT, true, false); + etn.setLayoutData(layoutData); + String text = entry.getValue() == null ? "ERR" : entry.getValue() + .toString(); + etn.setText(text); + } + + final Button showErrors = new Button(top, SWT.PUSH); + layoutData = new GridData(SWT.FILL, SWT.DEFAULT, true, false); + layoutData.horizontalSpan = 2; + showErrors.setLayoutData(layoutData); + showErrors.setText("Show Errors"); + showErrors.addSelectionListener(new SelectionAdapter() { + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse + * .swt.events.SelectionEvent) + */ + @Override + public void widgetSelected(SelectionEvent e) { + showErrors.setEnabled(false); + StringBuilder errorText = new StringBuilder(); + for (String s : errorMessages) { + errorText.append(s).append('\n'); + } + TextDisplayDlg errorDlg = new TextDisplayDlg( + ETNConfirmationDialog.this.getShell(), "Errors", + errorText.toString(), Location.BELOW); + + errorDlg.open(); + showErrors.setEnabled(true); + } + + }); + + return top; + } + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse + * .swt.widgets.Composite) + */ + @Override + protected void createButtonsForButtonBar(Composite parent) { + super.createButtonsForButtonBar(parent); + getButton(IDialogConstants.OK_ID).setText("Transmit"); + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.jface.dialogs.Dialog#okPressed() + */ + @Override + protected void okPressed() { + this.proposedEtn = this.proposedEtnSpinner.getSelection(); + super.okPressed(); + } + + /** + * @return the proposedEtn + */ + public int getProposedEtn() { + return proposedEtn; + } +} diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/StoreTransmitDlg.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/StoreTransmitDlg.java index eda0946c94..9eeb07461a 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/StoreTransmitDlg.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/formatterlauncher/StoreTransmitDlg.java @@ -20,6 +20,9 @@ package com.raytheon.viz.gfe.dialogs.formatterlauncher; import java.text.SimpleDateFormat; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; @@ -37,6 +40,7 @@ import org.eclipse.swt.widgets.Text; import com.raytheon.uf.common.activetable.PracticeProductOfftimeRequest; import com.raytheon.uf.common.activetable.SendPracticeProductRequest; +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; import com.raytheon.uf.common.dissemination.OUPRequest; import com.raytheon.uf.common.dissemination.OUPResponse; import com.raytheon.uf.common.dissemination.OfficialUserProduct; @@ -52,6 +56,7 @@ import com.raytheon.uf.viz.core.requests.ThriftClient; import com.raytheon.viz.core.mode.CAVEMode; import com.raytheon.viz.gfe.product.TextDBUtil; import com.raytheon.viz.gfe.vtec.GFEVtecUtil; +import com.raytheon.viz.texteditor.util.VtecObject; import com.raytheon.viz.ui.dialogs.CaveSWTDialog; /** @@ -70,6 +75,9 @@ import com.raytheon.viz.ui.dialogs.CaveSWTDialog; * 08 MAY 2013 1842 dgilling Use VtecUtil to set product ETNs, fix * warnings. * 07 Jun 2013 1981 mpduff Set user's id in OUPRequest as it is now a protected operation. + * 23 Oct 2013 1843 dgilling Ensure that dialog is always closed, + * even on failure, changes for error handling + * of intersite ETN assignment. * * * @author lvenable @@ -334,46 +342,116 @@ public class StoreTransmitDlg extends CaveSWTDialog implements // Store/Transmit the product... if (!countdownThread.threadCancelled()) { + boolean retrieveEtnFailed = false; - try { - productText = GFEVtecUtil.finalizeETNs(productText); - } catch (VizException e) { - statusHandler.handle(Priority.CRITICAL, - "Error setting ETNs for product", e); - sendTransmissionStatus(ConfigData.productStateEnum.Failed); - VizApp.runAsync(new Runnable() { + Set vtecsToAssignEtn = GFEVtecUtil + .getVtecLinesThatNeedEtn(productText); + Map etnCache = new HashMap(); + + for (VtecObject vtec : vtecsToAssignEtn) { + try { + GetNextEtnResponse serverResponse = GFEVtecUtil.getNextEtn( + vtec.getOffice(), vtec.getPhensig(), true, true); + if (!serverResponse.isOkay()) { + final VtecObject vtecToFix = vtec; + final boolean[] exitLoopContainer = { false }; + final Exception[] exceptionContainer = { null }; + final GetNextEtnResponse[] responseContainer = { serverResponse }; + + do { + getDisplay().syncExec(new Runnable() { + @Override + public void run() { + GetNextEtnResponse serverResponse = responseContainer[0]; + ETNConfirmationDialog dlg = new ETNConfirmationDialog( + getShell(), serverResponse); + if (dlg.open() == ETNConfirmationDialog.OK) { + int etn = dlg.getProposedEtn(); + statusHandler.info(String + .format("User confirmed ETN for %s: %04d", + serverResponse + .getPhensig(), + etn)); + try { + GetNextEtnResponse followupResp = GFEVtecUtil.getNextEtn( + vtecToFix.getOffice(), + vtecToFix.getPhensig(), + true, true, true, etn); + responseContainer[0] = followupResp; + } catch (VizException e) { + exceptionContainer[0] = e; + exitLoopContainer[0] = true; + } + } else { + statusHandler + .info("User declined to fix ETN for %s", + serverResponse + .getPhensig()); + exitLoopContainer[0] = true; + } + } + }); + } while (!responseContainer[0].isOkay() + && !exitLoopContainer[0]); + + if (!responseContainer[0].isOkay()) { + String msg = "Unable to set ETN for phensig " + + responseContainer[0].getPhensig() + + "\nStatus: " + + responseContainer[0].toString(); + Exception e = exceptionContainer[0]; + if (e == null) { + throw new VizException(msg); + } else { + throw new VizException(msg, e); + } + } + } + + etnCache.put(vtec.getPhensig(), serverResponse.getNextEtn()); + } catch (VizException e) { + statusHandler.handle(Priority.CRITICAL, + "Error setting ETNs for product", e); + retrieveEtnFailed = true; + VizApp.runAsync(new Runnable() { + + @Override + public void run() { + sendTransmissionStatus(ConfigData.productStateEnum.Failed); + StoreTransmitDlg.this.parentEditor.revive(); + } + }); + break; + } + } + + if (!retrieveEtnFailed) { + productText = GFEVtecUtil.finalizeETNs(productText, etnCache); + + VizApp.runSync(new Runnable() { @Override public void run() { - StoreTransmitDlg.this.parentEditor.revive(); + String pid = productIdTF.getText(); + if (parentEditor.isTestVTEC()) { + if (isStoreDialog) { + parentEditor.devStore(pid.substring(3)); + } else { + parentEditor.devStore(pid.substring(4)); + transmitProduct(true); + } + } else { + if (isStoreDialog) { + TextDBUtil.storeProduct(pid, productText, + parentEditor.isTestVTEC()); + } else { + transmitProduct(false); + } + } } + }); - return; } - - VizApp.runSync(new Runnable() { - - @Override - public void run() { - String pid = productIdTF.getText(); - if (parentEditor.isTestVTEC()) { - if (isStoreDialog) { - parentEditor.devStore(pid.substring(3)); - } else { - parentEditor.devStore(pid.substring(4)); - transmitProduct(true); - } - } else { - if (isStoreDialog) { - TextDBUtil.storeProduct(pid, productText, - parentEditor.isTestVTEC()); - } else { - transmitProduct(false); - } - } - } - - }); } // The asyncExec call is used to dispose of the shell since it is diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/vtec/GFEVtecUtil.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/vtec/GFEVtecUtil.java index 361e6d9feb..baaada51a6 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/vtec/GFEVtecUtil.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/vtec/GFEVtecUtil.java @@ -20,12 +20,15 @@ package com.raytheon.viz.gfe.vtec; import java.util.Collection; -import java.util.HashMap; +import java.util.Collections; +import java.util.HashSet; import java.util.Map; +import java.util.Set; import java.util.regex.Matcher; -import com.google.common.base.Strings; import com.google.common.collect.ImmutableSet; +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; +import com.raytheon.uf.common.util.StringUtil; import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.viz.texteditor.util.VtecObject; import com.raytheon.viz.texteditor.util.VtecUtil; @@ -50,6 +53,7 @@ import com.raytheon.viz.texteditor.util.VtecUtil; * multiple NEW segments with the same * phensig. * Aug 29, 2013 #1843 dgilling Add hooks for inter-site ETN assignment. + * Oct 21, 2013 #1843 dgilling Use new GetNextEtnResponse. * * * @@ -78,29 +82,152 @@ public class GFEVtecUtil { throw new AssertionError(); } - public static int getNextEtn(String office, String phensig, boolean lockEtn) - throws VizException { - return getNextEtn(office, phensig, lockEtn, false); + /** + * Gets the next available ETN for a specific product and office. + * + * @param office + * The 4-character site ID of the office. + * @param phensig + * The phenomenon and significance of the hazard concatenated + * with a '.' (e.g., TO.W or DU.Y) + * @param lockEtn + * Whether or not to request an exclusive ETN--if true, this will + * cause the server to increment its running ETN sequence to the + * next number after determining the next ETN for this request. + * If false, the next ETN will be returned, but it will not + * increment the server's running sequence, so the ETN return + * could be used by another client that makes a + * GetNextEtnRequest. + * @return The next ETN in sequence, given the office and phensig. + * @throws VizException + * If an error occurred sending the request to the server. + */ + public static GetNextEtnResponse getNextEtn(String office, String phensig, + boolean lockEtn) throws VizException { + return getNextEtn(office, phensig, lockEtn, false, false, null); } - public static int getNextEtn(String office, String phensig, + /** + * Gets the next available ETN for a specific product and office. + * + * @param office + * The 4-character site ID of the office. + * @param phensig + * The phenomenon and significance of the hazard concatenated + * with a '.' (e.g., TO.W or DU.Y) + * @param lockEtn + * Whether or not to request an exclusive ETN--if true, this will + * cause the server to increment its running ETN sequence to the + * next number after determining the next ETN for this request. + * If false, the next ETN will be returned, but it will not + * increment the server's running sequence, so the ETN return + * could be used by another client that makes a + * GetNextEtnRequest. + * @param performISC + * Whether or not to collaborate with neighboring sites to + * determine the next ETN. See {@link + * GetNextEtnUtil#getNextEtnFromPartners(String, ActiveTableMode, + * String, Calendar, List)} for more information. + * @return The next ETN in sequence, given the office and phensig. + * @throws VizException + * If an error occurred sending the request to the server. + */ + public static GetNextEtnResponse getNextEtn(String office, String phensig, boolean lockEtn, boolean performISC) throws VizException { - return VtecUtil.getNextEtn(office, phensig, lockEtn, performISC); + return getNextEtn(office, phensig, lockEtn, performISC, false, null); } - public static String finalizeETNs(String message) throws VizException { - if (Strings.isNullOrEmpty(message)) { - return message; + /** + * Gets the next available ETN for a specific product and office. + * + * @param office + * The 4-character site ID of the office. + * @param phensig + * The phenomenon and significance of the hazard concatenated + * with a '.' (e.g., TO.W or DU.Y) + * @param lockEtn + * Whether or not to request an exclusive ETN--if true, this will + * cause the server to increment its running ETN sequence to the + * next number after determining the next ETN for this request. + * If false, the next ETN will be returned, but it will not + * increment the server's running sequence, so the ETN return + * could be used by another client that makes a + * GetNextEtnRequest. + * @param performISC + * Whether or not to collaborate with neighboring sites to + * determine the next ETN. See {@link + * GetNextEtnUtil#getNextEtnFromPartners(String, ActiveTableMode, + * String, Calendar, List)} for more information. + * @param reportOnlyConflict + * Affects which kinds of errors get reported back to the + * requestor. If true, only cases where the value of + * etnOverride is less than or equal to the last ETN + * used by this site or any of its partners will be reported. + * Else, all significant errors will be reported back. + * @param etnOverride + * Allows the user to influence the next ETN assigned by using + * this value unless it is less than or equal to the last ETN + * used by this site or one of its partners. + * @return The next ETN in sequence, given the office and phensig. + * @throws VizException + * If an error occurred sending the request to the server. + */ + public static GetNextEtnResponse getNextEtn(String office, String phensig, + boolean lockEtn, boolean performISC, boolean reportOnlyConflict, + Integer etnOverride) throws VizException { + return VtecUtil.getNextEtn(office, phensig, lockEtn, performISC, + reportOnlyConflict, etnOverride); + } + + /** + * Reads through a GFE VTEC product and returns VTEC lines with NEW action + * codes that need to be assigned an ETN. + * + * @param product + * The product's text. + * @return A Set of VtecObjects that need to have + * a new ETN assigned to them. + */ + public static Set getVtecLinesThatNeedEtn(String product) { + if (StringUtil.isEmptyString(product)) { + return Collections.emptySet(); } - // With GFE VTEC products, it's possible to have multiple segments with - // NEW vtec action codes and the same phensig. For this reason, - // HazardsTable.py implemented a "cache" that would ensure all NEWs for - // the same phensig would be assigned the same ETN. This Map replicates - // that legacy behavior. - Map etnCache = new HashMap(); + Set phensigs = new HashSet(); - Matcher vtecMatcher = VtecUtil.VTEC_REGEX.matcher(message); + Matcher vtecMatcher = VtecUtil.VTEC_REGEX.matcher(product); + while (vtecMatcher.find()) { + VtecObject vtec = new VtecObject(vtecMatcher.group()); + if (("NEW".equals(vtec.getAction())) + && ((!NATIONAL_PHENSIGS.contains(vtec.getPhensig())) || (IGNORE_NATIONAL_ETN + .contains(vtec.getOffice()) && TROPICAL_PHENSIGS + .contains(vtec.getPhensig())))) { + phensigs.add(vtec); + } + } + + return phensigs; + } + + /** + * For any NEW VTEC lines contained within the specified product texts, + * generates a GetNextEtnRequest to retrieve the next canonical + * ETN in sequence for the given phensig. + * + * @param product + * The product's text. + * @return The product's text with any NEW VTEC lines having their ETN + * values replaced with the next ETN in sequence. + * @throws VizException + * If an error occurred sending the request to the server. + */ + public static String finalizeETNs(String product, + Map etnCache) { + if (StringUtil.isEmptyString(product)) { + return product; + } + + Matcher vtecMatcher = VtecUtil.VTEC_REGEX.matcher(product); StringBuffer finalOutput = new StringBuffer(); while (vtecMatcher.find()) { VtecObject vtec = new VtecObject(vtecMatcher.group()); @@ -111,13 +238,13 @@ public class GFEVtecUtil { && ((!NATIONAL_PHENSIGS.contains(vtec.getPhensig())) || (IGNORE_NATIONAL_ETN .contains(vtec.getOffice()) && TROPICAL_PHENSIGS .contains(vtec.getPhensig())))) { + // With GFE VTEC products, it's possible to have multiple + // segments with NEW vtec action codes and the same phensig. For + // this reason, HazardsTable.py implemented a "cache" that would + // ensure all NEWs for the same phensig would be assigned the + // same ETN. The etnCache Map replicaes this behavior. String cacheKey = vtec.getPhensig(); Integer newEtn = etnCache.get(cacheKey); - if (newEtn == null) { - newEtn = getNextEtn(vtec.getOffice(), vtec.getPhensig(), - true, true); - etnCache.put(cacheKey, newEtn); - } vtec.setSequence(newEtn); } vtecMatcher diff --git a/cave/com.raytheon.viz.texteditor/META-INF/MANIFEST.MF b/cave/com.raytheon.viz.texteditor/META-INF/MANIFEST.MF index 834bb2319c..c11483603d 100644 --- a/cave/com.raytheon.viz.texteditor/META-INF/MANIFEST.MF +++ b/cave/com.raytheon.viz.texteditor/META-INF/MANIFEST.MF @@ -25,7 +25,8 @@ Require-Bundle: org.eclipse.ui, com.raytheon.uf.common.dataplugin.radar;bundle-version="1.0.0", com.raytheon.uf.viz.localization, com.raytheon.uf.common.auth;bundle-version="1.12.1174", - com.raytheon.uf.common.dataplugin.warning;bundle-version="1.12.1174" + com.raytheon.uf.common.dataplugin.warning;bundle-version="1.12.1174", + com.raytheon.uf.common.activetable Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.viz.texteditor, com.raytheon.viz.texteditor.alarmalert.dialogs, @@ -38,8 +39,7 @@ Export-Package: com.raytheon.viz.texteditor, com.raytheon.viz.texteditor.scripting.runner, com.raytheon.viz.texteditor.util Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.uf.common.activetable, - com.raytheon.uf.common.comm, +Import-Package: com.raytheon.uf.common.comm, com.raytheon.uf.common.dataplugin.warning.util, com.raytheon.uf.common.dissemination, com.raytheon.uf.common.message, diff --git a/cave/com.raytheon.viz.texteditor/src/com/raytheon/viz/texteditor/util/VtecUtil.java b/cave/com.raytheon.viz.texteditor/src/com/raytheon/viz/texteditor/util/VtecUtil.java index b4f9944d71..e684f77051 100644 --- a/cave/com.raytheon.viz.texteditor/src/com/raytheon/viz/texteditor/util/VtecUtil.java +++ b/cave/com.raytheon.viz.texteditor/src/com/raytheon/viz/texteditor/util/VtecUtil.java @@ -27,6 +27,7 @@ import java.util.regex.Pattern; import com.raytheon.uf.common.activetable.ActiveTableMode; import com.raytheon.uf.common.activetable.GetNextEtnRequest; +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.requests.ThriftClient; @@ -44,6 +45,7 @@ import com.raytheon.viz.core.mode.CAVEMode; * Feb 09, 2009 bwoodle Initial creation * May 08, 2013 #1842 dgilling Code cleanup. * Aug 29, 2013 #1843 dgilling Use new GetNextEtnRequest constructor. + * Oct 21, 2013 #1843 dgilling Use new GetNextEtnResponse. * * * @@ -106,8 +108,10 @@ public class VtecUtil { } if (vtec.getAction().equals("NEW")) { - vtec.setSequence(getNextEtn(vtec.getOffice(), vtec.getPhenomena() - + "." + vtec.getSignificance(), lockEtn)); + int nextEtn = getNextEtn(vtec.getOffice(), + vtec.getPhenomena() + "." + vtec.getSignificance(), lockEtn) + .getNextEtn(); + vtec.setSequence(nextEtn); } return replaceFirstVtecString(message, vtec); } @@ -133,9 +137,9 @@ public class VtecUtil { * If an error occurs while submitting or processing the remote * request. */ - public static int getNextEtn(String office, String phensig, boolean lockEtn) - throws VizException { - return getNextEtn(office, phensig, lockEtn, false); + public static GetNextEtnResponse getNextEtn(String office, String phensig, + boolean lockEtn) throws VizException { + return getNextEtn(office, phensig, lockEtn, false, false, null); } /** @@ -159,26 +163,37 @@ public class VtecUtil { * determine the next ETN. See {@link * GetNextEtnUtil#getNextEtnFromPartners(String, ActiveTableMode, * String, Calendar, List)} for more information. + * @param reportOnlyConflict + * Affects which kinds of errors get reported back to the + * requestor. If true, only cases where the value of + * etnOverride is less than or equal to the last ETN + * used by this site or any of its partners will be reported. + * Else, all significant errors will be reported back. + * @param etnOverride + * Allows the user to influence the next ETN assigned by using + * this value unless it is less than or equal to the last ETN + * used by this site or one of its partners. * @return The next ETN in sequence, given the office and phensig. * @throws VizException * If an error occurs while submitting or processing the remote * request. */ - public static int getNextEtn(String office, String phensig, - boolean lockEtn, boolean performISC) throws VizException { + public static GetNextEtnResponse getNextEtn(String office, String phensig, + boolean lockEtn, boolean performISC, boolean reportOnlyConflict, + Integer etnOverride) throws VizException { Calendar currentTime = Calendar.getInstance(); currentTime.setTime(SimulatedTime.getSystemTime().getTime()); ActiveTableMode activeTable = (CAVEMode.getMode() .equals(CAVEMode.PRACTICE)) ? ActiveTableMode.PRACTICE : ActiveTableMode.OPERATIONAL; GetNextEtnRequest req = new GetNextEtnRequest(office, activeTable, - phensig, currentTime, lockEtn, performISC); + phensig, currentTime, lockEtn, performISC, reportOnlyConflict, + etnOverride); - int rval = 1; - Integer resp = (Integer) ThriftClient.sendRequest(req); - if (resp != null) { - rval = resp; - } + GetNextEtnResponse resp = (GetNextEtnResponse) ThriftClient + .sendRequest(req); + GetNextEtnResponse rval = (resp != null) ? resp + : new GetNextEtnResponse(1, phensig); return rval; } diff --git a/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/dialogs/TextDisplayDlg.java b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/dialogs/TextDisplayDlg.java new file mode 100644 index 0000000000..857ef0ca24 --- /dev/null +++ b/cave/com.raytheon.viz.ui/src/com/raytheon/viz/ui/dialogs/TextDisplayDlg.java @@ -0,0 +1,166 @@ +/** + * 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.viz.ui.dialogs; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.graphics.Rectangle; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Text; + +/** + * Generic Dialog to display a multi-line block of text in a + * re-sizable and scrollable window. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 23, 2013  #1843     randerso     Initial creation
+ * 
+ * 
+ * + * @author randerso + * @version 1.0 + */ + +public class TextDisplayDlg extends CaveJFACEDialog { + + /** + * Location of this dialog relative to it's parent. + */ + public static enum Location { + ABOVE, BELOW, LEFT, RIGHT, CENTERED + } + + private String title; + + private String contents; + + private Location location; + + /** + * @param parentShell + * @param title + * @param contents + */ + public TextDisplayDlg(Shell parentShell, String title, String contents, + Location location) { + super(parentShell); + this.title = title; + this.contents = contents; + this.location = location; + + this.setShellStyle(SWT.DIALOG_TRIM | SWT.RESIZE); + } + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets + * .Shell) + */ + @Override + protected void configureShell(Shell newShell) { + newShell.setText(this.title); + super.configureShell(newShell); + } + + /* + * (non-Javadoc) + * + * @see + * com.raytheon.viz.ui.dialogs.CaveJFACEDialog#createDialogArea(org.eclipse + * .swt.widgets.Composite) + */ + @Override + protected Control createDialogArea(Composite parent) { + Composite top = (Composite) super.createDialogArea(parent); + + Text contents = new Text(top, SWT.MULTI | SWT.BORDER | SWT.READ_ONLY + | SWT.V_SCROLL | SWT.H_SCROLL); + + Rectangle screenBounds = this.getShell().getMonitor().getBounds(); + GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); + layoutData.widthHint = screenBounds.width / 2; + layoutData.heightHint = screenBounds.height / 4; + + contents.setLayoutData(layoutData); + contents.setText(this.contents); + + return top; + } + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.jface.dialogs.Dialog#getInitialLocation(org.eclipse.swt.graphics + * .Point) + */ + @Override + protected Point getInitialLocation(Point initialSize) { + Rectangle parentBounds = getParentShell().getBounds(); + Rectangle myBounds = getShell().getBounds(); + + int x = parentBounds.x + ((parentBounds.width - myBounds.width) / 2); + int y = parentBounds.y + ((parentBounds.height - myBounds.height) / 2); + ; + switch (this.location) { + case ABOVE: + y = parentBounds.y - myBounds.height; + break; + case BELOW: + y = parentBounds.y + parentBounds.height; + break; + case LEFT: + x = parentBounds.x - myBounds.width; + break; + case RIGHT: + x = parentBounds.x + parentBounds.width; + break; + case CENTERED: + break; + } + + Point location = new Point(x, y); + return location; + } + + /* + * (non-Javadoc) + * + * @see + * com.raytheon.viz.ui.dialogs.CaveJFACEDialog#createButtonBar(org.eclipse + * .swt.widgets.Composite) + */ + @Override + protected Control createButtonBar(Composite parent) { + // no buttons + return null; + } + +} diff --git a/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF index df10602406..b23ac00488 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF @@ -21,4 +21,5 @@ Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.message;bundle-version="1.12.1174", com.raytheon.uf.common.localization;bundle-version="1.12.1174", com.raytheon.uf.common.python;bundle-version="1.12.1174", - org.jep;bundle-version="1.0.0" + org.jep;bundle-version="1.0.0", + com.raytheon.uf.common.util;bundle-version="1.12.1174" diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/GetNextEtnRequest.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/GetNextEtnRequest.java index c152b5c307..1298d32a2b 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/GetNextEtnRequest.java +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/GetNextEtnRequest.java @@ -34,7 +34,8 @@ import com.raytheon.uf.common.serialization.comm.IServerRequest; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Feb 14, 2011 rjpeter Initial creation - * Aug 26, 2013 #1843 dgilling Add performISC field, proper constructors. + * Oct 21, 2013 #1843 dgilling Add performISC and reportConflictOnly + * fields, proper constructors. * * * @@ -62,39 +63,89 @@ public class GetNextEtnRequest implements IServerRequest { @DynamicSerializeElement private boolean performISC; + @DynamicSerializeElement + private boolean reportConflictOnly; + + @DynamicSerializeElement + private Integer etnOverride; + public GetNextEtnRequest() { // no-op, for dynamic serialize support } /** + * Constructs a GetNextEtnRequest. + * * @param siteID + * The 4-character site ID of the office. * @param mode + * Active table mode. * @param phensig + * The phenomenon and significance of the hazard concatenated + * with a '.' (e.g., TO.W or DU.Y) * @param currentTime + * Calendar representing time (needed for DRT mode). * @param lockEtn + * Whether or not to request an exclusive ETN--if true, this will + * cause the server to increment its running ETN sequence to the + * next number after determining the next ETN for this request. + * If false, the next ETN will be returned, but it will not + * increment the server's running sequence, so the ETN return + * could be used by another client that makes a + * GetNextEtnRequest. */ public GetNextEtnRequest(String siteID, ActiveTableMode mode, String phensig, Calendar currentTime, boolean lockEtn) { - this(siteID, mode, phensig, currentTime, lockEtn, false); + this(siteID, mode, phensig, currentTime, lockEtn, false, false, null); } /** + * Constructs a GetNextEtnRequest. + * * @param siteID + * The 4-character site ID of the office. * @param mode + * Active table mode. * @param phensig + * The phenomenon and significance of the hazard concatenated + * with a '.' (e.g., TO.W or DU.Y) * @param currentTime + * Calendar representing time (needed for DRT mode). * @param lockEtn + * Whether or not to request an exclusive ETN--if true, this will + * cause the server to increment its running ETN sequence to the + * next number after determining the next ETN for this request. + * If false, the next ETN will be returned, but it will not + * increment the server's running sequence, so the ETN return + * could be used by another client that makes a + * GetNextEtnRequest. * @param performISC + * Whether or not to collaborate with neighboring sites to + * determine the next ETN. See {@link + * GetNextEtnUtil#getNextEtnFromPartners(String, ActiveTableMode, + * String, Calendar, List)} for more information. + * @param reportConflictOnly + * Affects which kinds of errors get reported back to the + * requestor. If true, only cases where the value of + * etnOverride is less than or equal to the last ETN + * used by this site or any of its partners will be reported. + * Else, all significant errors will be reported back. + * @param etnOverride + * Allows the user to influence the next ETN assigned by using + * this value unless it is less than or equal to the last ETN + * used by this site or one of its partners. */ public GetNextEtnRequest(String siteID, ActiveTableMode mode, String phensig, Calendar currentTime, boolean lockEtn, - boolean performISC) { + boolean performISC, boolean reportConflictOnly, Integer etnOverride) { this.siteID = siteID; this.mode = mode; this.phensig = phensig; this.currentTime = currentTime; this.lockEtn = lockEtn; this.performISC = performISC; + this.reportConflictOnly = reportConflictOnly; + this.etnOverride = etnOverride; } public String getSiteID() { @@ -144,4 +195,20 @@ public class GetNextEtnRequest implements IServerRequest { public void setPerformISC(boolean performISC) { this.performISC = performISC; } + + public boolean isReportConflictOnly() { + return reportConflictOnly; + } + + public void setReportConflictOnly(boolean reportConflictOnly) { + this.reportConflictOnly = reportConflictOnly; + } + + public Integer getEtnOverride() { + return etnOverride; + } + + public void setEtnOverride(Integer etnOverride) { + this.etnOverride = etnOverride; + } } diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/request/LockAndGetNextEtnRequest.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/request/LockAndGetNextEtnRequest.java index fd40a7048b..c756c091fd 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/request/LockAndGetNextEtnRequest.java +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/request/LockAndGetNextEtnRequest.java @@ -36,6 +36,7 @@ import com.raytheon.uf.common.serialization.comm.IServerRequest; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Aug 19, 2013 #1843 dgilling Initial creation + * Oct 21, 2013 #1843 dgilling Add ETN override field. * * * @@ -61,17 +62,27 @@ public class LockAndGetNextEtnRequest implements IServerRequest { @DynamicSerializeElement private Calendar currentTime; + @DynamicSerializeElement + private Integer etnOverride; + public LockAndGetNextEtnRequest() { // default constructor for thrift/dynamicserialize } public LockAndGetNextEtnRequest(String siteID, String requestorSiteID, ActiveTableMode mode, String phensig, Calendar currentTime) { + this(siteID, requestorSiteID, mode, phensig, currentTime, null); + } + + public LockAndGetNextEtnRequest(String siteID, String requestorSiteID, + ActiveTableMode mode, String phensig, Calendar currentTime, + Integer etnOverride) { this.siteID = siteID; this.requestorSiteID = requestorSiteID; this.mode = mode; this.phensig = phensig; this.currentTime = currentTime; + this.etnOverride = etnOverride; } public String getSiteID() { @@ -113,4 +124,12 @@ public class LockAndGetNextEtnRequest implements IServerRequest { public void setCurrentTime(Calendar currentTime) { this.currentTime = currentTime; } + + public Integer getEtnOverride() { + return etnOverride; + } + + public void setEtnOverride(Integer etnOverride) { + this.etnOverride = etnOverride; + } } diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/response/GetNextEtnResponse.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/response/GetNextEtnResponse.java new file mode 100644 index 0000000000..10ee5a9e19 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/response/GetNextEtnResponse.java @@ -0,0 +1,144 @@ +/** + * 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.activetable.response; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; +import com.raytheon.uf.common.util.CollectionUtil; +import com.raytheon.uf.common.util.StringUtil; + +/** + * Response type for GetNextEtnRequest. Contains the next ETN to + * use and a list of hosts that could not be contacted during the process to + * determine the next ETN. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 24, 2013  #1843     dgilling     Initial creation
+ * 
+ * 
+ * + * @author dgilling + * @version 1.0 + */ +@DynamicSerialize +public final class GetNextEtnResponse { + + @DynamicSerializeElement + private int nextEtn; + + @DynamicSerializeElement + private String phensig; + + @DynamicSerializeElement + private Map resultsByHost; + + @DynamicSerializeElement + private List errorMessages; + + public GetNextEtnResponse() { + // for Dynamic Serialize use only. + } + + public GetNextEtnResponse(int nextEtn, String phensig) { + this(nextEtn, phensig, new HashMap(), + new ArrayList()); + this.resultsByHost.put("localhost", this.nextEtn); + } + + public GetNextEtnResponse(int nextEtn, String phensig, + Map resultsByHost, List errorMessages) { + this.nextEtn = nextEtn; + this.phensig = phensig; + this.resultsByHost = resultsByHost; + this.errorMessages = errorMessages; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("GetNextEtnResponse [nextEtn="); + builder.append(nextEtn); + builder.append(", phensig="); + builder.append(phensig); + builder.append(", resultsByHost="); + builder.append(resultsByHost); + builder.append(", errorMessages="); + builder.append(errorMessages); + builder.append("]"); + return builder.toString(); + } + + public boolean isOkay() { + return errorMessages.isEmpty(); + } + + public String getError() { + return !isOkay() ? StringUtil.join(errorMessages, '\n') : ""; + } + + public void addErrorMessage(String message) { + if (CollectionUtil.isNullOrEmpty(errorMessages)) { + errorMessages = new ArrayList(); + } + errorMessages.add(message); + } + + public int getNextEtn() { + return nextEtn; + } + + public void setNextEtn(int nextEtn) { + this.nextEtn = nextEtn; + } + + public String getPhensig() { + return phensig; + } + + public void setPhensig(String phensig) { + this.phensig = phensig; + } + + public Map getResultsByHost() { + return resultsByHost; + } + + public void setResultsByHost(Map resultsByHost) { + this.resultsByHost = resultsByHost; + } + + public List getErrorMessages() { + return errorMessages; + } + + public void setErrorMessages(List errorMessages) { + this.errorMessages = errorMessages; + } +} diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnHandler.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnHandler.java index 10a683d9dc..559eacde5a 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnHandler.java @@ -20,10 +20,13 @@ package com.raytheon.uf.edex.activetable; import com.raytheon.uf.common.activetable.GetNextEtnRequest; +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; import com.raytheon.uf.common.serialization.comm.IRequestHandler; /** - * TODO Add Description + * Request handler for GetNextEtnRequest. Returns the next ETN to + * use for the given office id, phensig, and active table (PRACTICE or + * OPERATIONAL). * *
  * 
@@ -31,6 +34,7 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Feb 15, 2011            rjpeter     Initial creation
+ * Oct 21, 2013  #1843     dgilling    Change return type.
  * 
  * 
* @@ -41,12 +45,14 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler; public class GetNextEtnHandler implements IRequestHandler { @Override - public Integer handleRequest(GetNextEtnRequest request) throws Exception { - Integer nextEtn = GetNextEtnUtil.getNextEtn(request.getSiteID(), - request.getMode(), request.getPhensig(), + public GetNextEtnResponse handleRequest(GetNextEtnRequest request) + throws Exception { + GetNextEtnResponse response = GetNextEtnUtil.getNextEtn( + request.getSiteID(), request.getMode(), request.getPhensig(), request.getCurrentTime(), request.isLockEtn(), - request.isPerformISC()); - return nextEtn; + request.isPerformISC(), request.isReportConflictOnly(), + request.getEtnOverride()); + return response; } } diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java index bb77d0e776..fbae5469ed 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java @@ -28,9 +28,13 @@ import java.net.UnknownHostException; import java.rmi.RemoteException; import java.util.ArrayDeque; import java.util.ArrayList; +import java.util.Arrays; import java.util.Calendar; import java.util.Collections; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Map.Entry; import java.util.Properties; import java.util.Queue; import java.util.SortedMap; @@ -40,6 +44,7 @@ import com.raytheon.edex.site.SiteUtil; import com.raytheon.uf.common.activetable.ActiveTableMode; import com.raytheon.uf.common.activetable.request.LockAndGetNextEtnRequest; import com.raytheon.uf.common.activetable.request.UnlockAndSetNextEtnRequest; +import com.raytheon.uf.common.activetable.response.GetNextEtnResponse; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; @@ -79,7 +84,7 @@ public final class GetNextEtnUtil { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(GetNextEtnUtil.class); - private static final String CONFIG_FILE_NAME = "remote-etn-partners.properties"; + public static final String CONFIG_FILE_NAME = "remote-etn-partners.properties"; private static final String NEXT_ETN_LOCK = "ActiveTableNextEtn"; @@ -121,29 +126,59 @@ public final class GetNextEtnUtil { * isLock is false, this flag is effectively false * and your configured remote partners will not be contacted to * determine the next ETN. - * @return The next ETN to be used in sequence. + * @param reportConflictOnly + * Affects which kinds of errors get reported back to the + * requestor. If true, only cases where the value of + * etnOverride is less than or equal to the last ETN + * used by this site or any of its partners will be reported. + * Else, all significant errors will be reported back. + * @param etnOverride + * Allows the user to influence the next ETN assigned by using + * this value unless it is less than or equal to the last ETN + * used by this site or one of its partners. + * @return A GetNextEtnResponse containing the next ETN to use + * and any hosts that couldn't be contacted during this process. */ - public static Integer getNextEtn(String siteId, ActiveTableMode mode, - String phensig, Calendar currentTime, boolean isLock, - boolean performISC) { - List hostsToQuery = Collections.emptyList(); + public static GetNextEtnResponse getNextEtn(String siteId, + ActiveTableMode mode, String phensig, Calendar currentTime, + boolean isLock, boolean performISC, boolean reportConflictOnly, + Integer etnOverride) { + SortedMap hostsToQuery = new TreeMap(); + List readEtnSourcesErrors = Collections.emptyList(); if (performISC) { - hostsToQuery = GetNextEtnUtil.getRemoteEtnSources(siteId); + try { + hostsToQuery = GetNextEtnUtil.getRemoteEtnSources(siteId); + } catch (UnknownHostException e) { + readEtnSourcesErrors = Arrays.asList( + "Falling back to local ETN calculation: ", + "Could not perform reverse lookup for localhost: " + + e.getLocalizedMessage()); + } catch (IOException e) { + readEtnSourcesErrors = Arrays.asList( + "Falling back to local ETN calculation: ", + "Could not read configuration file " + CONFIG_FILE_NAME + + ": " + e.getLocalizedMessage()); + } } - int nextEtn; - if (performISC && isLock && (!hostsToQuery.isEmpty())) { - nextEtn = GetNextEtnUtil.getNextEtnFromPartners(siteId, mode, - phensig, currentTime, hostsToQuery); + GetNextEtnResponse response; + if (performISC && isLock && (!hostsToQuery.isEmpty()) + && (readEtnSourcesErrors.isEmpty())) { + response = GetNextEtnUtil.getNextEtnFromPartners(siteId, mode, + phensig, currentTime, hostsToQuery, reportConflictOnly, + etnOverride); } else { - nextEtn = GetNextEtnUtil.getNextEtnFromLocal(siteId, mode, phensig, - currentTime, isLock); + int nextEtn = GetNextEtnUtil.getNextEtnFromLocal(siteId, mode, + phensig, currentTime, isLock); + response = new GetNextEtnResponse(nextEtn, phensig); + response.setErrorMessages(readEtnSourcesErrors); } - return nextEtn; + return response; } - private static List getRemoteEtnSources(String siteId) { + private static SortedMap getRemoteEtnSources( + String siteId) throws IOException, UnknownHostException { Properties etnBackupProps = new Properties(); FileInputStream fis = null; try { @@ -156,11 +191,11 @@ public final class GetNextEtnUtil { etnBackupProps.load(fis); } catch (FileNotFoundException e) { statusHandler.error(CONFIG_FILE_NAME + " file does not exist!", e); - return Collections.emptyList(); + return new TreeMap(); } catch (IOException e) { statusHandler.error("Error reading " + CONFIG_FILE_NAME + " file!", e); - return Collections.emptyList(); + throw e; } finally { if (fis != null) { try { @@ -172,6 +207,8 @@ public final class GetNextEtnUtil { } } + String localhostFQDN = getLocalhostFQDN(); + String[] tokens = etnBackupProps.getProperty("BACKUP.HOSTS." + siteId, "").split(","); @@ -182,17 +219,7 @@ public final class GetNextEtnUtil { for (String token : tokens) { String host = token.trim().toLowerCase(); if ("localhost".equals(host)) { - try { - host = InetAddress.getLocalHost().getCanonicalHostName(); - } catch (UnknownHostException e) { - statusHandler.error( - "Unable to retrieve host name for localhost.", e); - statusHandler - .handle(Priority.CRITICAL, - "ETN assignment will not be able to query local server for used ETNs. Please check your network configuration and " - + CONFIG_FILE_NAME + "."); - continue; - } + continue; } IRequestRouter reqHandler = new RemoteServerRequestRouter("http://" @@ -200,7 +227,11 @@ public final class GetNextEtnUtil { sources.put(host, reqHandler); } - return new ArrayList(sources.values()); + IRequestRouter reqHandler = new RemoteServerRequestRouter("http://" + + localhostFQDN + ":9581/services"); + sources.put(localhostFQDN, reqHandler); + + return sources; } /** @@ -244,10 +275,13 @@ public final class GetNextEtnUtil { * needed if only determining a preliminary ETN. Required to be * set to true if you want to actually move the * sequence forward. + * @param etnOverride + * TODO * @return The next ETN to be used in sequence. */ public static int lockAndGetNextEtn(String siteId, ActiveTableMode mode, - String phensig, Calendar currentTime, boolean isLock) { + String phensig, Calendar currentTime, boolean isLock, + Integer etnOverride) { String lockName = getEtnClusterLockName(siteId, mode); ClusterTask ct = null; if (isLock) { @@ -264,19 +298,25 @@ public final class GetNextEtnUtil { currentTime); int nextEtn = (lastEtn != null) ? lastEtn + 1 : 1; - String year = Integer.toString(currentTime.get(Calendar.YEAR)); - String eInfo = ct.getExtraInfo(); - if ((!StringUtil.isEmptyString(eInfo)) && (eInfo.startsWith(year))) { - // parse year info - try { - int ctNextEtn = Integer - .parseInt(eInfo.substring(year.length() + 1)) + 1; - nextEtn = Math.max(nextEtn, ctNextEtn); - } catch (NumberFormatException e) { - statusHandler.error( - "Caught excetion parsing etn from cluster_task", e); + int sysNextEtn = -1; + if (etnOverride == null) { + String year = Integer.toString(currentTime.get(Calendar.YEAR)); + String eInfo = ct.getExtraInfo(); + if ((!StringUtil.isEmptyString(eInfo)) && (eInfo.startsWith(year))) { + // parse year info + try { + sysNextEtn = Integer + .parseInt(eInfo.substring(year.length() + 1)) + 1; + } catch (NumberFormatException e) { + statusHandler + .error("Caught exception parsing etn from cluster_task", + e); + } } + } else { + sysNextEtn = etnOverride.intValue(); } + nextEtn = Math.max(nextEtn, sysNextEtn); return nextEtn; } @@ -330,7 +370,7 @@ public final class GetNextEtnUtil { ActiveTableMode mode, String phensig, Calendar currentTime, boolean isLock) { int nextEtn = lockAndGetNextEtn(siteId, mode, phensig, currentTime, - isLock); + isLock, null); if (isLock) { setNextEtnAndUnlock(siteId, mode, phensig, currentTime.get(Calendar.YEAR), nextEtn); @@ -360,50 +400,88 @@ public final class GetNextEtnUtil { * @param hostsToQuery * The remote hosts to query. This should also include the local * EDEX instance initiating this operation. - * @return The next ETN to be used in sequence. + * @param reportConflictOnly + * Affects which kinds of errors get reported back to the + * requestor. If true, only cases where the value of + * etnOverride is less than or equal to the last ETN + * used by this site or any of its partners will be reported. + * Else, all significant errors will be reported back. + * @param etnOverride + * Allows the user to influence the next ETN assigned by using + * this value unless it is less than or equal to the last ETN + * used by this site or one of its partners. + * @return A GetNextEtnResponse containing the next ETN to use + * and any hosts that couldn't be contacted during this process. + * @throws UnknownHostException */ - public static Integer getNextEtnFromPartners(String siteId, + public static GetNextEtnResponse getNextEtnFromPartners(String siteId, ActiveTableMode mode, String phensig, Calendar currentTime, - List hostsToQuery) { - Queue lockQueue = new ArrayDeque( - hostsToQuery); - Queue unlockQueue = Collections - .asLifoQueue(new ArrayDeque(hostsToQuery.size())); + SortedMap hostsToQuery, + boolean reportConflictOnly, Integer etnOverride) { + Queue> unlockQueue = Collections + .asLifoQueue(new ArrayDeque>( + hostsToQuery.size())); + + Map resultsByHost = new HashMap( + hostsToQuery.size(), 1f); + List errors = new ArrayList(); String mySiteId = SiteUtil.getSite(); IServerRequest getAndLockReq = new LockAndGetNextEtnRequest(siteId, - mySiteId, mode, phensig, currentTime); - int nextEtn = 1; - for (IRequestRouter router : lockQueue) { + mySiteId, mode, phensig, currentTime, etnOverride); + for (Entry host : hostsToQuery.entrySet()) { + IRequestRouter router = host.getValue(); + String hostName = host.getKey(); + Integer partnersNextEtn = null; try { - Integer partersNextEtn = (Integer) GetNextEtnUtil - .sendThriftRequest(router, getAndLockReq); - nextEtn = Math.max(nextEtn, partersNextEtn); - unlockQueue.add(router); + partnersNextEtn = (Integer) GetNextEtnUtil.sendThriftRequest( + router, getAndLockReq); + unlockQueue.add(host); } catch (RemoteException e) { - statusHandler - .handle(Priority.WARN, - "Error occurred contacting one of the remote ETN partners.", - e); + String message = "Error occurred contacting remote ETN partner [" + + hostName + "]: " + e.getLocalizedMessage(); + if (!reportConflictOnly) { + errors.add(message); + } + statusHandler.handle(Priority.WARN, message, e); + } + resultsByHost.put(hostName, partnersNextEtn); + } + + int nextEtn = 1; + for (Entry entry : resultsByHost.entrySet()) { + int partnerEtn = (entry.getValue() != null) ? entry.getValue() : -1; + nextEtn = Math.max(nextEtn, partnerEtn); + + if ((etnOverride != null) && (etnOverride < partnerEtn)) { + String message = "User-provided ETN value of " + + etnOverride.toString() + + " conflicts with calculated ETN value " + partnerEtn + + " from host " + entry.getKey(); + errors.add(message); + statusHandler.warn(message); } } IServerRequest unlockReq = new UnlockAndSetNextEtnRequest(siteId, mySiteId, mode, currentTime.get(Calendar.YEAR), phensig, nextEtn); - for (IRequestRouter router : unlockQueue) { + for (Entry host : unlockQueue) { + IRequestRouter router = host.getValue(); try { GetNextEtnUtil.sendThriftRequest(router, unlockReq); } catch (RemoteException e) { - statusHandler - .handle(Priority.WARN, - "Error occurred unlocking one of the remote ETN partners.", - e); + String message = "Error occurred unlocking remote ETN partner [" + + host.getKey() + "]: " + e.getLocalizedMessage(); + if (!reportConflictOnly) { + errors.add(message); + } + statusHandler.handle(Priority.WARN, message, e); } } - return nextEtn; + return new GetNextEtnResponse(nextEtn, phensig, resultsByHost, errors); } private static Object sendThriftRequest(final IRequestRouter router, @@ -429,4 +507,17 @@ public final class GetNextEtnUtil { return retVal; } + + private static String getLocalhostFQDN() throws UnknownHostException { + try { + return InetAddress.getLocalHost().getCanonicalHostName(); + } catch (UnknownHostException e) { + statusHandler.error("Unable to retrieve host name for localhost.", + e); + statusHandler + .handle(Priority.CRITICAL, + "ETN assignment will not be able to query local server for used ETNs. Please check your network configuration."); + throw e; + } + } } diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/handler/LockAndGetNextEtnHandler.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/handler/LockAndGetNextEtnHandler.java index 28d47c6092..80ad7a2060 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/handler/LockAndGetNextEtnHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/handler/LockAndGetNextEtnHandler.java @@ -36,6 +36,7 @@ import com.raytheon.uf.edex.activetable.GetNextEtnUtil; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Aug 19, 2013 #1843 dgilling Initial creation + * Oct 23, 2013 #1843 dgilling Update with ETN override. * * * @@ -64,6 +65,6 @@ public class LockAndGetNextEtnHandler implements + request.getSiteID() + "]: phensig= " + request.getPhensig()); return GetNextEtnUtil.lockAndGetNextEtn(request.getSiteID(), request.getMode(), request.getPhensig(), - request.getCurrentTime(), true); + request.getCurrentTime(), true, request.getEtnOverride()); } } diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/edex_static/base/vtec/remote-etn-partners.properties b/edexOsgi/com.raytheon.uf.edex.activetable/utility/edex_static/base/vtec/remote-etn-partners.properties index 7699cd19f7..824136f049 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/edex_static/base/vtec/remote-etn-partners.properties +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/edex_static/base/vtec/remote-etn-partners.properties @@ -12,12 +12,12 @@ # # To configure remote ETN querying for a specific site id: you must add an # entry to the site version of this file that looks like the following: -# BACKUP.HOSTS.KXYZ=ec-xyz,ec-yyy,ec-zzz +# BACKUP.HOSTS.KXYZ=ec-yyy,ec-zzz # # Now, when generating VTEC products for site KXYZ, EDEX will query hosts -# ec-xyz,ec-yyy, and ec-zzz for the last ETN used for KXYZ. Note that you must -# include the host name for this EDEX server in the list of hosts if you want -# "localhost" to be in the hosts queried for the next ETN. +# ec-yyy and ec-zzz for the last ETN used for KXYZ. Note that "localhost" +# will automatically be queried for the next ETN so there is no +# requirement to add it to the list of entries. # # There should only ever be one localized copy of this file on the EDEX server, # and it should be located at @@ -26,4 +26,4 @@ # querying (say, in case of service backup), you just add a new BACKUP.HOSTS # entry to this file. # -# CONFIGURATION ENTRIES GO BELOW \ No newline at end of file +# CONFIGURATION ENTRIES GO BELOW From e48beadbc6cc36161f1716ff52883f8130c434e8 Mon Sep 17 00:00:00 2001 From: Mike Duff Date: Mon, 28 Oct 2013 10:25:42 -0500 Subject: [PATCH 3/5] Issue #2292 - refactor and move overlap/duplicate checks to edex. Peer review comments Change-Id: I33df9cc7e368778943e25420d18b343781304c7a Former-commit-id: fbcf271899a77d28a4c196a0f46d78d8d9ebff15 [formerly c1bd170f8a53275bc327baa8fa013e90945ddec9] [formerly f123fa11f552d7d3c2288976138161fe16756098] [formerly fbcf271899a77d28a4c196a0f46d78d8d9ebff15 [formerly c1bd170f8a53275bc327baa8fa013e90945ddec9] [formerly f123fa11f552d7d3c2288976138161fe16756098] [formerly 3fc811102e8809ef0a9adc9dc980705a04fdad7a [formerly f123fa11f552d7d3c2288976138161fe16756098 [formerly f7405c2acfef95b57b79cf6d8ac3348017e64a59]]]] Former-commit-id: 3fc811102e8809ef0a9adc9dc980705a04fdad7a Former-commit-id: ce2afdf1b3422e1606de6ae832a89d2613fa96b7 [formerly b0c54d7c17e11b8b00086ae1688079f4b6e07691] [formerly ac9b1be9e56f34d03174be87fbb48c2a6a187cdc [formerly 4da0648461901deb7b81b6e13f4c02b8432d0d93]] Former-commit-id: ece01cf9cf7d6b3d925c922f4d1d6fe84edf0f17 [formerly 26ca1b4d722d4968d9629d635ed3d59fa0813228] Former-commit-id: 5ff3fe27919fd8ab801314aa251d025457bac7a9 --- .../res/spring/datadelivery-services.xml | 1 - .../common/ui/UserSelectComp.java | 7 +- .../services/DataDeliveryServices.java | 13 +- .../subscription/CreateSubscriptionDlg.java | 21 +- .../subscription/ISubscriptionService.java | 49 +--- .../subscription/SubscriptionManagerDlg.java | 6 +- .../subscription/SubscriptionService.java | 169 +++--------- .../SubscriptionServiceResult.java | 142 ++++++++++ .../approve/SubscriptionApprovalDlg.java | 8 +- .../subscription/subset/SubsetManagerDlg.java | 10 +- .../handlers/AdhocSubscriptionHandler.java | 19 +- .../res/spring/datadelivery-service.xml | 4 - .../GridSubscriptionOverlapConfig.java | 39 +-- .../ISubscriptionDuplicateChecker.java | 99 ------- .../ISubscriptionOverlapService.java | 60 +---- .../PointSubscriptionOverlapConfig.java | 42 +-- .../SubscriptionDuplicateChecker.java | 181 ------------- .../SubscriptionOverlapConfig.java | 24 +- .../SubscriptionOverlapMatchStrategy.java | 205 +-------------- .../SubscriptionOverlapRequest.java | 86 ++++++ .../SubscriptionOverlapResponse.java | 114 ++++++++ .../SubscriptionOverlapService.java | 191 +------------- .../META-INF/MANIFEST.MF | 5 +- .../spring/datadelivery-service-handlers.xml | 10 + .../services/overlap/GridOverlapData.java | 177 +++++++++++++ .../service/services/overlap/OverlapData.java | 209 +++++++++++++++ .../services/overlap/OverlapDataFactory.java | 82 ++++++ .../services/overlap/PointOverlapData.java | 150 +++++++++++ .../overlap/SubscriptionOverlapHandler.java | 115 ++++++++ .../PendingSubscriptionHandlerTest.java | 12 +- .../handlers/SubscriptionHandlerTest.java | 12 +- .../AbstractBandwidthManagerIntTest.java | 26 +- .../bandwidth/BandwidthManagerIntTest.java | 92 ++++--- .../bandwidth/BandwidthServiceIntTest.java | 144 +++++----- .../BaseSharedSubscriptionFixture.java | 5 +- .../registry/BaseSiteSubscriptionFixture.java | 5 +- .../registry/BaseSubscriptionFixture.java | 52 +++- .../registry/CoverageFixture.java | 69 +++++ .../PendingSharedSubscriptionFixture.java | 13 +- .../PendingSiteSubscriptionFixture.java | 7 +- .../registry/PendingSubscriptionTest.java | 7 +- .../registry/SiteSubscriptionTest.java | 7 +- .../registry/SubscriptionBuilder.java | 7 +- .../subscription/GridOverlapDataTest.java | 247 ++++++++++++++++++ ...dSubscriptionOverlapMatchStrategyTest.java | 129 --------- .../GridSubscriptionOverlapServiceTest.java | 232 ---------------- .../subscription/PointOverlapDataTest.java | 202 ++++++++++++++ ...tSubscriptionOverlapMatchStrategyTest.java | 128 --------- .../PointSubscriptionOverlapServiceTest.java | 207 --------------- .../SubscriptionDuplicateCheckerTest.java | 237 ----------------- .../bandwidth/AbstractBandwidthDaoTest.java | 68 +++-- .../bandwidth/dao/SubscriptionDaoFixture.java | 6 +- ...ubscriptionRetrievalAttributesFixture.java | 6 +- .../HibernateBandwidthInitializerTest.java | 8 +- .../RetrievalRequestRecordFixture.java | 6 +- .../verify/BaseSubscriptionVerifierTest.java | 7 +- .../SubscriptionIntegrityVerifierTest.java | 10 +- ...criptionServiceSingleSubscriptionTest.java | 9 +- .../AbstractSubscriptionServiceTest.java | 34 +-- .../SubscriptionServiceMassUpdateTest.java | 15 +- .../SubscriptionServiceStoreAdhocTest.java | 3 +- .../SubscriptionServiceStoreTest.java | 3 +- .../SubscriptionServiceUpdateTest.java | 3 +- .../subscription/xml/LatencyRuleXMLTest.java | 6 +- .../utils/DataDeliveryUtilsTest.java | 12 +- 65 files changed, 2082 insertions(+), 2192 deletions(-) create mode 100644 cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceResult.java delete mode 100644 edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionDuplicateChecker.java delete mode 100644 edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateChecker.java create mode 100644 edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapRequest.java create mode 100644 edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapResponse.java create mode 100644 edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/GridOverlapData.java create mode 100644 edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapData.java create mode 100644 edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapDataFactory.java create mode 100644 edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/PointOverlapData.java create mode 100644 edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/SubscriptionOverlapHandler.java create mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/registry/CoverageFixture.java create mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridOverlapDataTest.java delete mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapMatchStrategyTest.java delete mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapServiceTest.java create mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointOverlapDataTest.java delete mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapMatchStrategyTest.java delete mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapServiceTest.java delete mode 100644 tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateCheckerTest.java diff --git a/cave/com.raytheon.uf.viz.datadelivery/res/spring/datadelivery-services.xml b/cave/com.raytheon.uf.viz.datadelivery/res/spring/datadelivery-services.xml index 63fff42fa1..8e80c585e3 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/res/spring/datadelivery-services.xml +++ b/cave/com.raytheon.uf.viz.datadelivery/res/spring/datadelivery-services.xml @@ -22,7 +22,6 @@ - * * @author jpiatt @@ -418,14 +419,14 @@ public class UserSelectComp extends Composite implements IUpdate, IDisplay, } try { - final ISubscriptionServiceResult result = DataDeliveryServices + final SubscriptionServiceResult result = DataDeliveryServices .getSubscriptionService().updateWithPendingCheck( new ArrayList(Sets.union( groupSubscriptions, removeFromGroupSubscriptions)), this); if (result.hasMessageToDisplay()) { DataDeliveryUtils.showMessage(getShell(), SWT.ICON_INFORMATION, - "Edit Group", result.getMessageToDisplay()); + "Edit Group", result.getMessage()); } } catch (RegistryHandlerException e) { statusHandler.handle(Priority.PROBLEM, diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/services/DataDeliveryServices.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/services/DataDeliveryServices.java index ee2feeea68..d01725be18 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/services/DataDeliveryServices.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/services/DataDeliveryServices.java @@ -40,6 +40,7 @@ import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService; * Nov 09, 2012 1286 djohnson Initial creation * May 20, 2013 2000 djohnson Add subscription overlap service. * Jul 26, 2031 2232 mpduff Moved IPermissionsService to common. + * Oct 21, 2013 2292 mpduff Added generics. * * * @@ -49,7 +50,7 @@ import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService; public final class DataDeliveryServices { - private static IBandwidthService bandwidthService; + private static IBandwidthService bandwidthService; private static ISubscriptionService subscriptionService; @@ -59,17 +60,17 @@ public final class DataDeliveryServices { private static IGroupDefinitionService groupDefinitionService; - private static ISubscriptionOverlapService subscriptionOverlapService; + private static ISubscriptionOverlapService subscriptionOverlapService; /** * Spring only constructor. All access should be through static methods. */ - private DataDeliveryServices(IBandwidthService bandwidthService, + private DataDeliveryServices(IBandwidthService bandwidthService, ISubscriptionService subscriptionService, ISubscriptionNotificationService subscriptionNotificationService, IPermissionsService permissionsService, IGroupDefinitionService groupDefinitionService, - ISubscriptionOverlapService subscriptionOverlapService) { + ISubscriptionOverlapService subscriptionOverlapService) { DataDeliveryServices.bandwidthService = bandwidthService; DataDeliveryServices.subscriptionService = subscriptionService; DataDeliveryServices.subscriptionNotificationService = subscriptionNotificationService; @@ -92,7 +93,7 @@ public final class DataDeliveryServices { * * @return the bandwidthService */ - public static IBandwidthService getBandwidthService() { + public static IBandwidthService getBandwidthService() { return DataDeliveryServices.bandwidthService; } @@ -128,7 +129,7 @@ public final class DataDeliveryServices { * * @return the subscriptionOverlapService */ - public static ISubscriptionOverlapService getSubscriptionOverlapService() { + public static ISubscriptionOverlapService getSubscriptionOverlapService() { return DataDeliveryServices.subscriptionOverlapService; } } diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/CreateSubscriptionDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/CreateSubscriptionDlg.java index 2b5946b28f..82da0c1e43 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/CreateSubscriptionDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/CreateSubscriptionDlg.java @@ -95,7 +95,6 @@ import com.raytheon.uf.viz.datadelivery.common.ui.DurationComp; import com.raytheon.uf.viz.datadelivery.common.ui.GroupSelectComp; import com.raytheon.uf.viz.datadelivery.common.ui.PriorityComp; import com.raytheon.uf.viz.datadelivery.services.DataDeliveryServices; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.system.SystemRuleManager; import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryGUIUtils; import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils; @@ -142,6 +141,7 @@ import com.raytheon.viz.ui.presenter.components.ComboBoxConf; * Oct 11, 2013 2386 mpduff Refactor DD Front end. * Oct 15, 2013 2477 mpduff Fix bug in group settings. * Oct 23, 2013 2484 dhladky Unique ID for subscriptions updated. + * Oct 21, 2013 2292 mpduff Close dialog on OK. * * * @@ -526,7 +526,9 @@ public class CreateSubscriptionDlg extends CaveSWTDialog { status = Status.OK; getShell().setCursor( getDisplay().getSystemCursor(SWT.CURSOR_WAIT)); - handleOkAction(); + if (handleOkAction()) { + close(); + } } finally { if (!getShell().isDisposed()) { getShell().setCursor(null); @@ -1148,13 +1150,13 @@ public class CreateSubscriptionDlg extends CaveSWTDialog { @Override protected IStatus run(IProgressMonitor monitor) { DataDeliveryGUIUtils.markBusyInUIThread(jobShell); - ISubscriptionServiceResult result = storeSubscription( + SubscriptionServiceResult result = storeSubscription( subscription, username); if (result != null) { if (result.isAllowFurtherEditing()) { return new Status(Status.CANCEL, CreateSubscriptionDlg.class.getName(), - result.getMessageToDisplay()); + result.getMessage()); } else { SubscriptionStatusSummary sum = result .getSubscriptionStatusSummary(); @@ -1162,7 +1164,7 @@ public class CreateSubscriptionDlg extends CaveSWTDialog { exchanger.add(sum); return new Status(Status.OK, CreateSubscriptionDlg.class.getName(), - result.getMessageToDisplay()); + result.getMessage()); } } else { return new Status(Status.ERROR, @@ -1266,13 +1268,12 @@ public class CreateSubscriptionDlg extends CaveSWTDialog { if (autoApprove) { try { - final ISubscriptionServiceResult response = subscriptionService + final SubscriptionServiceResult response = subscriptionService .update(subscription, new CancelForceApplyAndIncreaseLatencyDisplayText( "update", getShell())); if (response.hasMessageToDisplay()) { - displayPopup(UPDATED_TITLE, - response.getMessageToDisplay()); + displayPopup(UPDATED_TITLE, response.getMessage()); } // If there was a force apply prompt, and the user @@ -1563,9 +1564,9 @@ public class CreateSubscriptionDlg extends CaveSWTDialog { * the username * @return true if the dialog can be closed, false otherwise */ - private ISubscriptionServiceResult storeSubscription( + private SubscriptionServiceResult storeSubscription( Subscription subscription, String username) { - ISubscriptionServiceResult result = null; + SubscriptionServiceResult result = null; try { result = subscriptionService.store(subscription, new CancelForceApplyAndIncreaseLatencyDisplayText("create", diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/ISubscriptionService.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/ISubscriptionService.java index bfb1fc1a58..61e4d041dc 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/ISubscriptionService.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/ISubscriptionService.java @@ -21,7 +21,6 @@ package com.raytheon.uf.viz.datadelivery.subscription; import java.util.List; -import com.raytheon.uf.common.datadelivery.bandwidth.data.SubscriptionStatusSummary; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; @@ -40,7 +39,7 @@ import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceA * Nov 20, 2012 1286 djohnson Use IDisplay to display yes/no prompt. * Nov 28, 2012 1286 djohnson Consolidate more notifications. * Jul 18, 2013 1653 mpduff Added SubscriptionStatusSummary to ISubscriptionServiceResult - * + * Oct 25, 2013 2292 mpduff Move overlap checks to edex. * * * @author djohnson @@ -48,42 +47,6 @@ import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceA */ public interface ISubscriptionService { - - /** - * Contract for the return object of subscription service actions. - */ - public static interface ISubscriptionServiceResult { - /** - * Check whether further editing should occur. - * - * @return true if the UI should not be closed, and the user should be - * allowed to resubmit their action - */ - boolean isAllowFurtherEditing(); - - /** - * Check whether there is a message to display. - * - * @return true if there is a message to display - */ - boolean hasMessageToDisplay(); - - /** - * Return the message to display. Should not be called unless - * {@link #hasMessageToDisplay()} returns true. - * - * @return the message to display - */ - String getMessageToDisplay(); - - /** - * Get the subscription status summary. - * - * @return The SubscriptionStatusSummary - */ - SubscriptionStatusSummary getSubscriptionStatusSummary(); - } - /** * Store the subscription. * @@ -93,7 +56,7 @@ public interface ISubscriptionService { * @return the result object * @throws RegistryHandlerException */ - ISubscriptionServiceResult store(Subscription subscription, + SubscriptionServiceResult store(Subscription subscription, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException; @@ -105,7 +68,7 @@ public interface ISubscriptionService { * @param displayTextStrategy * @return the result object */ - ISubscriptionServiceResult update(Subscription subscription, + SubscriptionServiceResult update(Subscription subscription, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException; @@ -118,7 +81,7 @@ public interface ISubscriptionService { * @return the result object * @throws RegistryHandlerException */ - ISubscriptionServiceResult update(List subscriptions, + SubscriptionServiceResult update(List subscriptions, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException; @@ -131,7 +94,7 @@ public interface ISubscriptionService { * @return the result * @throws RegistryHandlerException */ - ISubscriptionServiceResult updateWithPendingCheck( + SubscriptionServiceResult updateWithPendingCheck( List subscriptions, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException; @@ -147,7 +110,7 @@ public interface ISubscriptionService { * @return the result object * @throws RegistryHandlerException */ - public ISubscriptionServiceResult store(AdhocSubscription sub, + public SubscriptionServiceResult store(AdhocSubscription sub, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException; } diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java index aa20d61f68..eb6df16f58 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java @@ -70,7 +70,6 @@ import com.raytheon.uf.viz.datadelivery.common.ui.ITableChange; import com.raytheon.uf.viz.datadelivery.common.ui.TableCompConfig; import com.raytheon.uf.viz.datadelivery.help.HelpManager; import com.raytheon.uf.viz.datadelivery.services.DataDeliveryServices; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceApplyPromptDisplayText; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionTableComp.SubscriptionType; import com.raytheon.uf.viz.datadelivery.subscription.approve.SubscriptionApprovalDlg; @@ -128,6 +127,7 @@ import com.raytheon.viz.ui.presenter.IDisplay; * Jun 14, 2013 2064 mpduff Check for null/disposed sort column. * Jul 26, 2013 2232 mpduff Refactored Data Delivery permissions. * Sep 25. 2013 2409 mpduff Add check for widget disposed after calling configuration. + * Oct 25, 2013 2292 mpduff Move overlap checks to edex. * * * @author mpduff @@ -876,12 +876,12 @@ public class SubscriptionManagerDlg extends CaveSWTDialog implements sub.setActive(activate); try { - ISubscriptionServiceResult response = subscriptionService + SubscriptionServiceResult response = subscriptionService .update(sub, forceApplyPromptDisplayText); if (response.hasMessageToDisplay()) { DataDeliveryUtils.showMessage(getShell(), SWT.OK, sub.getName() + " Activated", - response.getMessageToDisplay()); + response.getMessage()); } if (!response.isAllowFurtherEditing()) { diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionService.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionService.java index 593f0bcdd0..6eeebf1374 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionService.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionService.java @@ -35,14 +35,12 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Shell; import com.google.common.annotations.VisibleForTesting; -import com.google.common.collect.Lists; import com.google.common.collect.Sets; import com.raytheon.uf.common.auth.AuthException; import com.raytheon.uf.common.auth.req.IPermissionsService; import com.raytheon.uf.common.auth.user.IUser; import com.raytheon.uf.common.datadelivery.bandwidth.IBandwidthService; import com.raytheon.uf.common.datadelivery.bandwidth.IProposeScheduleResponse; -import com.raytheon.uf.common.datadelivery.bandwidth.data.SubscriptionStatusSummary; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; import com.raytheon.uf.common.datadelivery.registry.GriddedTime; import com.raytheon.uf.common.datadelivery.registry.InitialPendingSubscription; @@ -53,10 +51,12 @@ import com.raytheon.uf.common.datadelivery.registry.Time; import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; import com.raytheon.uf.common.datadelivery.registry.handlers.IPendingSubscriptionHandler; import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; +import com.raytheon.uf.common.datadelivery.request.DataDeliveryConstants; import com.raytheon.uf.common.datadelivery.service.ISubscriptionNotificationService; -import com.raytheon.uf.common.datadelivery.service.subscription.ISubscriptionOverlapService; -import com.raytheon.uf.common.datadelivery.service.subscription.ISubscriptionOverlapService.ISubscriptionOverlapResponse; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapRequest; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapResponse; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; +import com.raytheon.uf.common.serialization.comm.RequestRouter; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; @@ -93,6 +93,7 @@ import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils; * Jul 26, 2013 2232 mpduff Refactored Data Delivery permissions. * Sept 25, 2013 1797 dhladky separated time from gridded time * Oct 12, 2013 2460 dhladky restored adhoc subscriptions to registry storage. + * Oct 22, 2013 2292 mpduff Removed subscriptionOverlapService. * * * @@ -104,6 +105,11 @@ public class SubscriptionService implements ISubscriptionService { private static final String PENDING_SUBSCRIPTION_AWAITING_APPROVAL = "The subscription is awaiting approval.\n\n" + "A notification message will be generated upon approval."; + private final String OVERLAPPING_SUBSCRIPTIONS = "The following subscriptions overlap with this one " + + "and are candidates for a shared subscription: "; + + private final String DUPLICATE_SUBSCRIPTIONS = "This subscription is completely fulfilled by "; + /** * Implementation of {@link IDisplayForceApplyPrompt} that uses an SWT * dialog. @@ -115,8 +121,6 @@ public class SubscriptionService implements ISubscriptionService { /** * {@inheritDoc} - * - * @param subscription */ @Override public ForceApplyPromptResponse displayForceApplyPrompt( @@ -168,72 +172,6 @@ public class SubscriptionService implements ISubscriptionService { private final IDisplayForceApplyPrompt forceApplyPrompt; - private final ISubscriptionOverlapService subscriptionOverlapService; - - /** - * Implementation of {@link ISubscriptionServiceResult}. - */ - private final class SubscriptionServiceResult implements - ISubscriptionServiceResult { - - private final boolean allowFurtherEditing; - - private final String message; - - private SubscriptionStatusSummary subStatusSummary; - - private SubscriptionServiceResult(String message) { - this(false, message); - } - - private SubscriptionServiceResult(boolean allowFurtherEditing, - String message) { - this.allowFurtherEditing = allowFurtherEditing; - this.message = message; - } - - /** - * @param b - */ - public SubscriptionServiceResult(boolean allowFurtherEditing) { - this(allowFurtherEditing, null); - } - - /** - * {@inheritDoc} - */ - @Override - public boolean isAllowFurtherEditing() { - return allowFurtherEditing; - } - - /** - * {@inheritDoc} - */ - @Override - public boolean hasMessageToDisplay() { - return message != null; - } - - /** - * {@inheritDoc} - */ - @Override - public String getMessageToDisplay() { - return message; - } - - @Override - public SubscriptionStatusSummary getSubscriptionStatusSummary() { - return this.subStatusSummary; - } - - public void setSubscriptionStatusSummary( - SubscriptionStatusSummary subscriptionStatusSummary) { - this.subStatusSummary = subscriptionStatusSummary; - } - } - /** * Result class used internally to denote whether the user should be * prompted, and any result messages. @@ -335,18 +273,15 @@ public class SubscriptionService implements ISubscriptionService { * the subscription notification service * @param bandwidthService * the bandwidth service - * @param subscriptionOverlapService */ @VisibleForTesting SubscriptionService(ISubscriptionNotificationService notificationService, IBandwidthService bandwidthService, IPermissionsService permissionsService, - ISubscriptionOverlapService subscriptionOverlapService, IDisplayForceApplyPrompt displayForceApplyPrompt) { this.notificationService = notificationService; this.bandwidthService = bandwidthService; this.permissionsService = permissionsService; - this.subscriptionOverlapService = subscriptionOverlapService; this.forceApplyPrompt = displayForceApplyPrompt; } @@ -364,18 +299,16 @@ public class SubscriptionService implements ISubscriptionService { public static ISubscriptionService newInstance( ISubscriptionNotificationService notificationService, IBandwidthService bandwidthService, - IPermissionsService permissionsService, - ISubscriptionOverlapService subscriptionOverlapService) { + IPermissionsService permissionsService) { return new SubscriptionService(notificationService, bandwidthService, - permissionsService, subscriptionOverlapService, - new DisplayForceApplyPrompt()); + permissionsService, new DisplayForceApplyPrompt()); } /** * {@inheritDoc} */ @Override - public ISubscriptionServiceResult store(final Subscription subscription, + public SubscriptionServiceResult store(final Subscription subscription, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { @@ -383,7 +316,6 @@ public class SubscriptionService implements ISubscriptionService { final String successMessage = "Subscription " + subscription.getName() + " has been created."; final ServiceInteraction action = new ServiceInteraction() { - @Override public String call() throws RegistryHandlerException { DataDeliveryHandlers.getSubscriptionHandler().store( @@ -395,7 +327,7 @@ public class SubscriptionService implements ISubscriptionService { SubscriptionServiceResult result = performAction(subscriptions, action, displayTextStrategy); - if (!result.allowFurtherEditing) { + if (!result.isAllowFurtherEditing()) { result.setSubscriptionStatusSummary(bandwidthService .getSubscriptionStatusSummary(subscription)); } @@ -408,7 +340,7 @@ public class SubscriptionService implements ISubscriptionService { * */ @Override - public ISubscriptionServiceResult update(final Subscription subscription, + public SubscriptionServiceResult update(final Subscription subscription, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { @@ -432,7 +364,7 @@ public class SubscriptionService implements ISubscriptionService { * {@inheritDoc} */ @Override - public ISubscriptionServiceResult update(final List subs, + public SubscriptionServiceResult update(final List subs, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { @@ -455,7 +387,7 @@ public class SubscriptionService implements ISubscriptionService { * {@inheritDoc} */ @Override - public ISubscriptionServiceResult updateWithPendingCheck( + public SubscriptionServiceResult updateWithPendingCheck( final List subscriptions, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { @@ -558,7 +490,7 @@ public class SubscriptionService implements ISubscriptionService { * {@inheritDoc} */ @Override - public ISubscriptionServiceResult store(final AdhocSubscription sub, + public SubscriptionServiceResult store(final AdhocSubscription sub, IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { @@ -568,24 +500,21 @@ public class SubscriptionService implements ISubscriptionService { final ServiceInteraction action = new ServiceInteraction() { @Override public String call() throws RegistryHandlerException { - DataDeliveryHandlers.getSubscriptionHandler().store( - sub); + DataDeliveryHandlers.getSubscriptionHandler().store(sub); return successMessage; } }; SubscriptionServiceResult result = performAction(subscriptions, action, displayTextStrategy); - if (!result.allowFurtherEditing) { + if (!result.isAllowFurtherEditing()) { Date date = bandwidthService.getEstimatedCompletionTime(sub); if (date != null) { SimpleDateFormat sdf = new SimpleDateFormat( "MM/dd/yyyy HH:mm zzz"); sdf.setTimeZone(TimeZone.getTimeZone("GMT")); - result = new SubscriptionServiceResult( - result.getMessageToDisplay() - + "\n\nEstimated completion time:" - + sdf.format(date)); + result = new SubscriptionServiceResult(result.getMessage() + + "\n\nEstimated completion time:" + sdf.format(date)); } } @@ -610,40 +539,28 @@ public class SubscriptionService implements ISubscriptionService { final IForceApplyPromptDisplayText displayTextStrategy) throws RegistryHandlerException { - for (Subscription subscription : subscriptions) { - if (!(subscription instanceof AdhocSubscription)) { - final ISubscriptionHandler subscriptionHandler = DataDeliveryHandlers - .getSubscriptionHandler(); - final List potentialDuplicates = subscriptionHandler - .getActiveByDataSetAndProvider( - subscription.getDataSetName(), - subscription.getProvider()); - List overlappingSubscriptions = Lists.newArrayList(); - for (Subscription potentialDuplicate : potentialDuplicates) { - final ISubscriptionOverlapResponse overlapResponse = subscriptionOverlapService - .isOverlapping(potentialDuplicate, subscription); - final String potentialDuplicateName = potentialDuplicate - .getName(); - if (overlapResponse.isDuplicate()) { - return new SubscriptionServiceResult(true, - "This subscription would be an exact duplicate of " - + potentialDuplicateName); - } - if (overlapResponse.isOverlapping()) { - overlappingSubscriptions.add(potentialDuplicateName); - } - } - if (!overlappingSubscriptions.isEmpty()) { - Collections.sort(overlappingSubscriptions); - forceApplyPrompt - .displayMessage( - displayTextStrategy, - StringUtil - .createMessage( - ISubscriptionOverlapService.OVERLAPPING_SUBSCRIPTIONS, - overlappingSubscriptions)); - } + SubscriptionOverlapRequest request = new SubscriptionOverlapRequest( + subscriptions); + + SubscriptionOverlapResponse response = null; + try { + response = (SubscriptionOverlapResponse) RequestRouter.route( + request, DataDeliveryConstants.DATA_DELIVERY_SERVER); + if (response.isDuplicate()) { + return new SubscriptionServiceResult(true, + StringUtil.createMessage(DUPLICATE_SUBSCRIPTIONS, + response.getSubscriptionNameList())); } + + if (response.isOverlap()) { + List subNames = response.getSubscriptionNameList(); + Collections.sort(subNames); + forceApplyPrompt.displayMessage(displayTextStrategy, StringUtil + .createMessage(OVERLAPPING_SUBSCRIPTIONS, subNames)); + } + } catch (Exception e) { + statusHandler.error("Error checking subscription overlapping", e); + return new SubscriptionServiceResult(false); } try { diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceResult.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceResult.java new file mode 100644 index 0000000000..b30b049065 --- /dev/null +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceResult.java @@ -0,0 +1,142 @@ +/** + * 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.datadelivery.subscription; + +import com.raytheon.uf.common.datadelivery.bandwidth.data.SubscriptionStatusSummary; + +/** + * Subscription service result object. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 25, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class SubscriptionServiceResult { + /** Edit flag */ + private boolean allowFurtherEditing; + + /** Response message */ + private String message; + + /** The subscription status */ + private SubscriptionStatusSummary subscriptionStatusSummary; + + /** + * Constructor. + * + * @param message + */ + public SubscriptionServiceResult(String message) { + this(false, message); + } + + /** + * @param allowFurtherEditing + * @param message + */ + public SubscriptionServiceResult(boolean allowFurtherEditing, String message) { + this.allowFurtherEditing = allowFurtherEditing; + this.message = message; + } + + /** + * Constructor + * + * @param allowFurtherEditing + */ + public SubscriptionServiceResult(boolean allowFurtherEditing) { + this(allowFurtherEditing, null); + } + + /** + * Constructor + * + * @param message + * @param subscriptionStatusSummary + */ + public SubscriptionServiceResult(String message, + SubscriptionStatusSummary subscriptionStatusSummary) { + this.message = message; + this.subscriptionStatusSummary = subscriptionStatusSummary; + } + + /** + * @return the allowFurtherEditing + */ + public boolean isAllowFurtherEditing() { + return allowFurtherEditing; + } + + /** + * @param allowFurtherEditing + * the allowFurtherEditing to set + */ + public void setAllowFurtherEditing(boolean allowFurtherEditing) { + this.allowFurtherEditing = allowFurtherEditing; + } + + /** + * @return the message + */ + public String getMessage() { + return message; + } + + /** + * @param message + * the message to set + */ + public void setMessage(String message) { + this.message = message; + } + + /** + * @return the subStatusSummary + */ + public SubscriptionStatusSummary getSubscriptionStatusSummary() { + return subscriptionStatusSummary; + } + + /** + * @param subscriptionStatusSummary + * the subStatusSummary to set + */ + public void setSubscriptionStatusSummary( + SubscriptionStatusSummary subscriptionStatusSummary) { + this.subscriptionStatusSummary = subscriptionStatusSummary; + } + + /** + * @return true if message is not null + */ + public boolean hasMessageToDisplay() { + return message != null; + } +} diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/approve/SubscriptionApprovalDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/approve/SubscriptionApprovalDlg.java index cde4346a0d..084d73d57c 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/approve/SubscriptionApprovalDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/approve/SubscriptionApprovalDlg.java @@ -60,8 +60,8 @@ import com.raytheon.uf.viz.datadelivery.help.HelpManager; import com.raytheon.uf.viz.datadelivery.services.DataDeliveryServices; import com.raytheon.uf.viz.datadelivery.subscription.CancelForceApplyAndIncreaseLatencyDisplayText; import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.ForceApplyPromptResponse; +import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils; import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils.TABLE_TYPE; import com.raytheon.viz.ui.dialogs.CaveSWTDialog; @@ -94,6 +94,7 @@ import com.raytheon.viz.ui.presenter.IDisplay; * Jun 06, 2013 2030 mpduff Refactored help. * Jul 26, 2013 2232 mpduff Refactored Data Delivery permissions. * Sep 03, 2013 2315 mpduff Add subscription name to denied approval message. + * Oct 23, 2013 2292 mpduff Move subscription overlap checks to edex. * * * @@ -530,13 +531,12 @@ public class SubscriptionApprovalDlg extends CaveSWTDialog implements String exceptionMessage = "Unable to update subscription."; try { - ISubscriptionServiceResult result = subscriptionService + SubscriptionServiceResult result = subscriptionService .update(s, new ApproveSubscriptionForceApplyPromptDisplayText()); if (result.hasMessageToDisplay()) { DataDeliveryUtils.showMessage(getShell(), SWT.OK, - "Subscription Approved.", - result.getMessageToDisplay()); + "Subscription Approved.", result.getMessage()); } if (!result.isAllowFurtherEditing()) { diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/subset/SubsetManagerDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/subset/SubsetManagerDlg.java index 47cfd9c828..621442a3a5 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/subset/SubsetManagerDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/subset/SubsetManagerDlg.java @@ -68,9 +68,9 @@ import com.raytheon.uf.viz.datadelivery.filter.MetaDataManager; import com.raytheon.uf.viz.datadelivery.services.DataDeliveryServices; import com.raytheon.uf.viz.datadelivery.subscription.CreateSubscriptionDlg; import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.ForceApplyPromptResponse; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceApplyPromptDisplayText; +import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.subset.xml.SubsetXML; import com.raytheon.uf.viz.datadelivery.subscription.subset.xml.TimeXML; import com.raytheon.uf.viz.datadelivery.subscription.subset.xml.VerticalXML; @@ -132,6 +132,7 @@ import com.raytheon.viz.ui.presenter.IDisplay; * Oct 11, 2013 2386 mpduff Refactor DD Front end. * Oct 15, 2013 2477 mpduff Remove debug code. * Oct 23, 2013 2484 dhladky Unique ID for subscriptions updated. + * Oct 25, 2013 2292 mpduff Move overlap processing to edex. * * * @author mpduff @@ -505,12 +506,12 @@ public abstract class SubsetManagerDlg extends CaveSWTDialog implements return; } try { - ISubscriptionServiceResult result = subscriptionService.store( + SubscriptionServiceResult result = subscriptionService.store( as, this); if (result.hasMessageToDisplay()) { DataDeliveryUtils.showMessage(getShell(), SWT.OK, - "Query Scheduled", result.getMessageToDisplay()); + "Query Scheduled", result.getMessage()); } } catch (RegistryHandlerException e) { statusHandler.handle(Priority.PROBLEM, @@ -540,7 +541,8 @@ public abstract class SubsetManagerDlg extends CaveSWTDialog implements sub.setOwner((create) ? LocalizationManager.getInstance() .getCurrentUser() : this.subscription.getOwner()); - sub.setOriginatingSite(LocalizationManager.getInstance().getCurrentSite()); + sub.setOriginatingSite(LocalizationManager.getInstance() + .getCurrentSite()); return setupCommonSubscriptionAttributes(sub, defaultRoute); } diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.registry/src/com/raytheon/uf/common/datadelivery/registry/handlers/AdhocSubscriptionHandler.java b/edexOsgi/com.raytheon.uf.common.datadelivery.registry/src/com/raytheon/uf/common/datadelivery/registry/handlers/AdhocSubscriptionHandler.java index d297c6906e..b3d469e316 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.registry/src/com/raytheon/uf/common/datadelivery/registry/handlers/AdhocSubscriptionHandler.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.registry/src/com/raytheon/uf/common/datadelivery/registry/handlers/AdhocSubscriptionHandler.java @@ -20,19 +20,9 @@ package com.raytheon.uf.common.datadelivery.registry.handlers; -import java.util.ArrayList; -import java.util.List; - -import com.google.common.collect.Lists; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; -import com.raytheon.uf.common.datadelivery.registry.InitialPendingSubscription; - import com.raytheon.uf.common.datadelivery.registry.ebxml.AdhocSubscriptionQuery; -import com.raytheon.uf.common.datadelivery.registry.ebxml.SubscriptionFilterableQuery; - -import com.raytheon.uf.common.registry.RegistryQueryResponse; import com.raytheon.uf.common.registry.handler.IRegistryObjectHandler; -import com.raytheon.uf.common.registry.handler.RegistryHandlerException; /** * {@link IRegistryObjectHandler} implementation for {@link AdhocSubscription}. @@ -45,6 +35,7 @@ import com.raytheon.uf.common.registry.handler.RegistryHandlerException; * ------------ ---------- ----------- -------------------------- * Oct 05, 2012 1241 djohnson Initial creation. * Oct 12, 2013 2460 dhladky restored. + * Oct 25, 2013 2292 mpduff Removed unused imports. * * * @@ -60,22 +51,18 @@ public class AdhocSubscriptionHandler extends */ @Override - protected AdhocSubscriptionQuery getQuery() { return new AdhocSubscriptionQuery(); } /** - + * * {@inheritDoc} - */ @Override - protected Class getRegistryObjectClass() { return AdhocSubscription.class; } - -} +} diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/res/spring/datadelivery-service.xml b/edexOsgi/com.raytheon.uf.common.datadelivery.service/res/spring/datadelivery-service.xml index 67e0b5d076..0b99b7fa6d 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/res/spring/datadelivery-service.xml +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/res/spring/datadelivery-service.xml @@ -5,12 +5,8 @@ - - - \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapConfig.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapConfig.java index 31de80602d..4da6f39b00 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapConfig.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapConfig.java @@ -4,6 +4,7 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; + /** * Configuration for the {@link ISubscriptionOverlapService}. * @@ -13,7 +14,8 @@ import javax.xml.bind.annotation.XmlRootElement; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Sept 24, 2013 2386 dhladky Grid Subscription Overlap + * Sep 24, 2013 2386 dhladky Grid Subscription Overlap + * Oct 21, 2013 2292 mpduff Change overlap rules * * * @@ -23,7 +25,7 @@ import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement @XmlAccessorType(XmlAccessType.NONE) public class GridSubscriptionOverlapConfig extends SubscriptionOverlapConfig { - + @XmlElement(required = true) private int maxAllowedForecastHourDuplication; @@ -34,7 +36,7 @@ public class GridSubscriptionOverlapConfig extends SubscriptionOverlapConfig { * Constructor. */ public GridSubscriptionOverlapConfig() { - + } /** @@ -50,7 +52,7 @@ public class GridSubscriptionOverlapConfig extends SubscriptionOverlapConfig { int maxAllowedForecastHourDuplication, int maxAllowedCycleDuplication, int maxAllowedSpatialDuplication, SubscriptionOverlapMatchStrategy matchStrategy) { - + this.maxAllowedParameterDuplication = maxAllowedParameterDuplication; this.maxAllowedForecastHourDuplication = maxAllowedForecastHourDuplication; this.maxAllowedCycleDuplication = maxAllowedCycleDuplication; @@ -90,32 +92,15 @@ public class GridSubscriptionOverlapConfig extends SubscriptionOverlapConfig { } /** - * Check whether the given duplication percents indicate an overlapping - * subscription. - * - * @param parameterDuplicationPercent - * @param forecastHourDuplicationPercent - * @param cycleDuplicationPercent - * @param spatialDuplicationPercent - * @return true if the subscription should be considered overlapping + * {@inheritDoc} */ - public boolean isOverlapping(int parameterDuplicationPercent, - int forecastHourDuplicationPercent, int cycleDuplicationPercent, - int spatialDuplicationPercent) { - - // Pass through to the match strategy - return this.matchStrategy.isOverlapping(this, - parameterDuplicationPercent, forecastHourDuplicationPercent, - cycleDuplicationPercent, spatialDuplicationPercent); - } - + @Override public SubscriptionOverlapConfig getNeverOverlaps() { return new GridSubscriptionOverlapConfig( - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, SubscriptionOverlapMatchStrategy.MATCH_ALL); } - } diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionDuplicateChecker.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionDuplicateChecker.java deleted file mode 100644 index a85b86d45a..0000000000 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionDuplicateChecker.java +++ /dev/null @@ -1,99 +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.datadelivery.service.subscription; - -import com.raytheon.uf.common.datadelivery.registry.Coverage; -import com.raytheon.uf.common.datadelivery.registry.Subscription; -import com.raytheon.uf.common.datadelivery.registry.Time; - -/** - * Checks for duplication among subscriptions. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 02, 2013 2000       djohnson     Initial creation
- * Sept 24, 2013 2386      dhladky      Added a method
- * Oct 2, 2013   1797      dhladky      More Generics
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ -public interface ISubscriptionDuplicateChecker { - - /** - * Returns the percent, 0-100, of how many parameters from sub2 are - * satisfied by sub1. - * - * @param sub1 - * @param sub2 - * - * @return 0-100 - */ - int getParameterDuplicationPercent(Subscription sub1, Subscription sub2); - - /** - * Returns the percent, 0-100, of how many forecast hours from sub2 are - * satisfied by sub1. - * - * @param sub1 - * @param sub2 - * - * @return 0-100 - */ - int getForecastHourDuplicationPercent(Subscription sub1, Subscription sub2); - - /** - * Returns the percent, 0-100, of how similar the time is from sub2 to sub1. - * - * @param sub1 - * @param sub2 - * - * @return 0-100 - */ - int getTimeDuplicationPercent(Subscription sub1, Subscription sub2); - - /** - * Returns the percent, 0-100, of how many cycle hours from sub2 are - * satisfied by sub1. - * - * @param sub1 - * @param sub2 - * - * @return 0-100 - */ - int getCycleDuplicationPercent(Subscription sub2, Subscription sub1); - - /** - * Returns the percent, 0-100, of how much spatial coverage from sub2 is - * satisfied by sub1. - * - * @param sub1 - * @param sub2 - * - * @return 0-100 - */ - int getSpatialDuplicationPercent(Subscription sub1, Subscription sub2); -} diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionOverlapService.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionOverlapService.java index e9105e98d9..1f76a76efb 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionOverlapService.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/ISubscriptionOverlapService.java @@ -19,16 +19,13 @@ **/ package com.raytheon.uf.common.datadelivery.service.subscription; -import java.util.Map; - import com.raytheon.uf.common.datadelivery.registry.Coverage; import com.raytheon.uf.common.datadelivery.registry.DataType; -import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.Time; import com.raytheon.uf.common.localization.exception.LocalizationException; /** - * Checks subscriptions to see if they would be considered duplicates. + * Reads and writes overlap config files for code in common. * *
  * 
@@ -36,54 +33,19 @@ import com.raytheon.uf.common.localization.exception.LocalizationException;
  * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
- * May 09, 2013 2000       djohnson     Initial creation
- * Oct 1, 2013  1797       dhladky      More Generics
+ * May 09, 2013  2000      djohnson     Initial creation
+ * Oct  1, 2013  1797      dhladky      More Generics
+ * Oct 21, 2013  2292      mpduff       Changed service to read/write config files.
  * 
  * 
* * @author djohnson * @version 1.0 + * @param + * @param */ public interface ISubscriptionOverlapService { - - int ONE_HUNDRED_PERCENT = 100; - - String OVERLAPPING_SUBSCRIPTIONS = "The following subscriptions overlap with this one " - + "and are candidates for a shared subscription: "; - - /** - * Response interface for a subscription overlap check. - */ - public static interface ISubscriptionOverlapResponse { - /** - * Check whether the two subscriptions were exact duplicates. - * - * @return true if the subscriptions are duplicates - */ - boolean isDuplicate(); - - /** - * Check whether the two subscriptions were determined to overlap. - * - * @return true if the subscriptions should be considered as overlapping - * according to the configuration - */ - boolean isOverlapping(); - }; - - /** - * Returns whether sub2 exceeds configured overlap criteria to sub1 - * according to the configuration. - * - * @param sub1 - * @param sub2 - * - * @return the overlap check response - */ - ISubscriptionOverlapResponse isOverlapping(Subscription sub1, - Subscription sub2); - /** * Writes a new configuration file. * @@ -96,11 +58,11 @@ public interface ISubscriptionOverlapService throws LocalizationException; /** - * Read the configuration. + * Get the overlap config file for this data type. * - * @return the configurations - * @throws LocalizationException - * on error reading the configuration + * @param type + * The data type + * @return the config file for the data type */ - Map readConfig() throws LocalizationException; + SubscriptionOverlapConfig getConfigFile(DataType type); } \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapConfig.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapConfig.java index 22309b63e5..e92da0f0ad 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapConfig.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapConfig.java @@ -5,6 +5,7 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; + /** * Configuration for the {@link ISubscriptionOverlapService}. * @@ -14,7 +15,8 @@ import javax.xml.bind.annotation.XmlRootElement; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Sept 24, 2013 2386 dhladky Point Subscription Overlap + * Sep 24, 2013 2386 dhladky Point Subscription Overlap + * Oct 21, 2013 2292 mpduff Changes for new implementation of point rules * * * @@ -32,7 +34,7 @@ public class PointSubscriptionOverlapConfig extends SubscriptionOverlapConfig { * Constructor. */ public PointSubscriptionOverlapConfig() { - + } /** @@ -40,13 +42,11 @@ public class PointSubscriptionOverlapConfig extends SubscriptionOverlapConfig { * * @param maxAllowedParameterDuplication * @param maxAllowedTimeDuplication - * @param notUsed * @param maxAllowedSpatialDuplication * @param matchStrategy */ public PointSubscriptionOverlapConfig(int maxAllowedParameterDuplication, - int maxAllowedTimeDuplication, int notUsed, - int maxAllowedSpatialDuplication, + int maxAllowedTimeDuplication, int maxAllowedSpatialDuplication, SubscriptionOverlapMatchStrategy matchStrategy) { this.maxAllowedParameterDuplication = maxAllowedParameterDuplication; @@ -63,42 +63,22 @@ public class PointSubscriptionOverlapConfig extends SubscriptionOverlapConfig { } /** - * @param maxAllowedForecastHourDuplication - * the maxAllowedForecastHourDuplication to set + * @param maxAllowedTimeDuplication + * the maxAllowedTimeDuplication to set */ public void setMaxAllowedTimeDuplication(int maxAllowedTimeDuplication) { this.maxAllowedTimeDuplication = maxAllowedTimeDuplication; } /** - * Check whether the given duplication percents indicate an overlapping - * subscription. - * - * @param parameterDuplicationPercent - * @param timeDuplicationPercent - * @param notUsed - * @param spatialDuplicationPercent - * @return true if the subscription should be considered overlapping + * {@inheritDoc} */ - public boolean isOverlapping(int parameterDuplicationPercent, - int timeDuplicationPercent, int notUsed, - int spatialDuplicationPercent) { - - // Pass through to the match strategy - return this.matchStrategy.isOverlapping(this, - parameterDuplicationPercent, timeDuplicationPercent, notUsed, - spatialDuplicationPercent); - } - @Override public SubscriptionOverlapConfig getNeverOverlaps() { return new PointSubscriptionOverlapConfig( - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, - ISubscriptionOverlapService.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, + SubscriptionOverlapConfig.ONE_HUNDRED_PERCENT, SubscriptionOverlapMatchStrategy.MATCH_ALL); - } - } diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateChecker.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateChecker.java deleted file mode 100644 index daf7b21897..0000000000 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateChecker.java +++ /dev/null @@ -1,181 +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.datadelivery.service.subscription; - -import java.util.Collection; - -import org.geotools.geometry.jts.ReferencedEnvelope; -import org.opengis.referencing.operation.TransformException; - -import com.raytheon.uf.common.datadelivery.registry.Coverage; -import com.raytheon.uf.common.datadelivery.registry.GriddedTime; -import com.raytheon.uf.common.datadelivery.registry.PointTime; -import com.raytheon.uf.common.datadelivery.registry.Subscription; -import com.raytheon.uf.common.datadelivery.registry.Time; -import com.raytheon.uf.common.geospatial.MapUtil; -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.util.CollectionUtil; - -/** - * Checks for duplication among subscriptions. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 02, 2013 2000       djohnson     Initial creation
- * Sept 24, 2013 2386       dhladky     Made multi-data type
- * Sept 25, 2013 1797       dhladky     separated time from griddedtime
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ -public class SubscriptionDuplicateChecker implements - ISubscriptionDuplicateChecker { - - private static final IUFStatusHandler statusHandler = UFStatus - .getHandler(SubscriptionDuplicateChecker.class); - - private static final String UNABLE_TO_DETERMINE_SPATIAL_OVERLAP = "Unable to determine spatial overlap. " - + "Subscriptions will not be considered to be overlapping spatially."; - - /** - * {@inheritDoc} - */ - @Override - public int getParameterDuplicationPercent(Subscription sub1, - Subscription sub2) { - return getDuplicationPercent(sub1.getParameter(), sub2.getParameter()); - } - - /** - * {@inheritDoc} - */ - @Override - public int getForecastHourDuplicationPercent(Subscription sub1, - Subscription sub2) { - - if (sub1.getTime() instanceof GriddedTime) { - - GriddedTime gtime1 = (GriddedTime) sub1.getTime(); - GriddedTime gtime2 = (GriddedTime) sub2.getTime(); - - return getDuplicationPercent(gtime1.getSelectedTimeIndices(), - gtime2.getSelectedTimeIndices()); - } else { - throw new IllegalArgumentException(sub1.getTime().getClass() - + " Config not yet Implemented!"); - } - } - - /** - * {@inheritDoc} - */ - @Override - public int getCycleDuplicationPercent(Subscription sub1, - Subscription sub2) { - - if (sub1.getTime() instanceof GriddedTime) { - - GriddedTime gtime1 = (GriddedTime) sub1.getTime(); - GriddedTime gtime2 = (GriddedTime) sub2.getTime(); - - return getDuplicationPercent(gtime1.getCycleTimes(), - gtime2.getCycleTimes()); - } else { - throw new IllegalArgumentException(sub1.getTime().getClass() - + " Config not yet Implemented!"); - } - } - - /** - * {@inheritDoc} - */ - @Override - public int getTimeDuplicationPercent(Subscription sub1, - Subscription sub2) { - - if (sub1.getTime() instanceof PointTime) { - - PointTime ptime1 = (PointTime) sub1.getTime(); - PointTime ptime2 = (PointTime) sub2.getTime(); - - return getDuplicationPercent(ptime1.getTimes(), ptime2.getTimes()); - } else { - return 0; - } - } - - /** - * {@inheritDoc} - */ - @Override - public int getSpatialDuplicationPercent(Subscription sub1, Subscription sub2) { - - final Coverage sub1Coverage = sub1.getCoverage(); - final Coverage sub2Coverage = sub2.getCoverage(); - - if (sub1Coverage != null && sub2Coverage != null) { - final ReferencedEnvelope sub1Envelope = sub1Coverage - .getRequestEnvelope(); - final ReferencedEnvelope sub2Envelope = sub2Coverage - .getRequestEnvelope(); - - if (sub1Envelope != null && sub2Envelope != null) { - try { - ReferencedEnvelope intersection = MapUtil - .reprojectAndIntersect(sub1Envelope, sub2Envelope); - final double intersectionArea = intersection.getArea(); - return (int) ((intersectionArea * 100) / sub2Envelope - .getArea()); - } catch (TransformException e) { - statusHandler.handle(Priority.PROBLEM, - UNABLE_TO_DETERMINE_SPATIAL_OVERLAP, e); - } - } - } - return 0; - } - - private int getDuplicationPercent(Collection coll1, - Collection coll2) { - - int numberSatisfiedByFirstCollection = 0; - if (!CollectionUtil.isNullOrEmpty(coll1) - && !CollectionUtil.isNullOrEmpty(coll2)) { - for (M entry : coll2) { - if (coll1.contains(entry)) { - numberSatisfiedByFirstCollection++; - } - } - // Convert percent to 0-100 - return (numberSatisfiedByFirstCollection * 100) / (coll2.size()); - } - - return 0; - } - -} diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapConfig.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapConfig.java index 8d6164d73a..a5e9332712 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapConfig.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapConfig.java @@ -33,8 +33,9 @@ import javax.xml.bind.annotation.XmlRootElement; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 08, 2013 2000 djohnson Initial creation - * Sept 24, 2013 2386 dhladky Abstracted for more types + * May 08, 2013 2000 djohnson Initial creation + * Sep 24, 2013 2386 dhladky Abstracted for more types + * Oct 21, 2013 2292 mpduff Changes for point type implementation * * * @@ -44,13 +45,14 @@ import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement @XmlAccessorType(XmlAccessType.NONE) public abstract class SubscriptionOverlapConfig { - + public final static transient int ONE_HUNDRED_PERCENT = 100; + @XmlElement(required = true) protected int maxAllowedParameterDuplication; @XmlElement(required = true) protected int maxAllowedSpatialDuplication; - + @XmlElement(required = true) protected SubscriptionOverlapMatchStrategy matchStrategy; @@ -107,20 +109,6 @@ public abstract class SubscriptionOverlapConfig { this.matchStrategy = matchStrategy; } - /** - * Check whether the given duplication percents indicate an overlapping - * subscription. - * - * @param parameterDuplicationPercent - * @param forecastHourOrTimeDuplicationPercent - * @param cycleOrNotUsedDuplicationPercent - * @param spatialDuplicationPercent - * @return true if the subscription should be considered overlapping - */ - public abstract boolean isOverlapping(int parameterDuplicationPercent, - int forecastHourOrTimeDuplicationPercent, int cycleOrNotUsedDuplicationPercent, - int spatialDuplicationPercent); - /** * setup a default never overlapping config */ diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapMatchStrategy.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapMatchStrategy.java index de47ddc4fb..9023db42b8 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapMatchStrategy.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapMatchStrategy.java @@ -31,8 +31,10 @@ import javax.xml.bind.annotation.XmlEnum; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 14, 2013 2000 djohnson Initial creation - * Sept 24, 2013 2386 dhladky Added impl for other types besides grid + * May 14, 2013 2000 djohnson Initial creation + * Sep 24, 2013 2386 dhladky Added impl for other types besides grid + * Oct 21, 2013 2292 mpduff Moved overlap calculation logic out + * * * * @@ -41,195 +43,16 @@ import javax.xml.bind.annotation.XmlEnum; */ @XmlEnum public enum SubscriptionOverlapMatchStrategy { - AT_LEAST_HALF { - @Override - public boolean isOverlapping(SubscriptionOverlapConfig config, - int parameterDuplicationPercent, - int forecastHourDuplicationPercent, - int cycleDuplicationPercent, int spatialDuplicationPercent) { - - boolean[] toCheck = null; + AT_LEAST_HALF("At Least Half"), MATCH_ALL("Match All"), MATCH_ANY( + "Match Any"); - final boolean exceedsAllowedParameterDuplication = parameterDuplicationPercent > config - .getMaxAllowedParameterDuplication(); - final boolean exceedsAllowedSpatialDuplication = spatialDuplicationPercent > config - .getMaxAllowedSpatialDuplication(); + private final String displayString; - // gridded products - if (config instanceof GridSubscriptionOverlapConfig) { - - GridSubscriptionOverlapConfig gconfig = (GridSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedForecastHourDuplication = forecastHourDuplicationPercent > gconfig - .getMaxAllowedForecastHourDuplication(); - final boolean exceedsAllowedCycleDuplication = cycleDuplicationPercent > gconfig - .getMaxAllowedCycleDuplication(); - - toCheck = new boolean[] { exceedsAllowedParameterDuplication, - exceedsAllowedForecastHourDuplication, - exceedsAllowedCycleDuplication, - exceedsAllowedSpatialDuplication }; - } - // point products - else if (config instanceof PointSubscriptionOverlapConfig) { - PointSubscriptionOverlapConfig pconfig = (PointSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedTimeDuplication = forecastHourDuplicationPercent > pconfig - .getMaxAllowedTimeDuplication(); - - toCheck = new boolean[] { exceedsAllowedParameterDuplication, - exceedsAllowedTimeDuplication, - exceedsAllowedSpatialDuplication }; - } else { - throw new IllegalArgumentException("Data type "+config.getClass()+" has no implementation"); - } - - final int numBooleans = toCheck.length; - final int halfNumBooleans = numBooleans / 2; - - int exceeded = 0; - for (boolean check : toCheck) { - if (check) { - exceeded++; - if (exceeded >= halfNumBooleans) { - return true; - } - } - } - return false; - } - - @Override - public String getDisplayString() { - return "At Least Half"; - } - }, - MATCH_ALL { - @Override - public boolean isOverlapping(SubscriptionOverlapConfig config, - int parameterDuplicationPercent, - int forecastHourDuplicationPercent, - int cycleDuplicationPercent, int spatialDuplicationPercent) { - - boolean response = false; - - final boolean exceedsAllowedParameterDuplication = parameterDuplicationPercent > config - .getMaxAllowedParameterDuplication(); - - final boolean exceedsAllowedSpatialDuplication = spatialDuplicationPercent > config - .getMaxAllowedSpatialDuplication(); - - // gridded products - if (config instanceof GridSubscriptionOverlapConfig) { - - GridSubscriptionOverlapConfig gconfig = (GridSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedForecastHourDuplication = forecastHourDuplicationPercent > gconfig - .getMaxAllowedForecastHourDuplication(); - final boolean exceedsAllowedCycleDuplication = cycleDuplicationPercent > gconfig - .getMaxAllowedCycleDuplication(); - - response = exceedsAllowedParameterDuplication - && exceedsAllowedForecastHourDuplication - && exceedsAllowedCycleDuplication - && exceedsAllowedSpatialDuplication; - - // point products - } else if (config instanceof PointSubscriptionOverlapConfig) { - PointSubscriptionOverlapConfig pconfig = (PointSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedTimeDuplication = forecastHourDuplicationPercent > pconfig - .getMaxAllowedTimeDuplication(); - - response = exceedsAllowedParameterDuplication - && exceedsAllowedTimeDuplication - && exceedsAllowedSpatialDuplication; - } else { - throw new IllegalArgumentException("Data type "+config.getClass()+" has no implementation"); - } - - - return response; - } - - @Override - public String getDisplayString() { - return "Match All"; - } - }, - MATCH_ANY { - @Override - public boolean isOverlapping(SubscriptionOverlapConfig config, - int parameterDuplicationPercent, - int forecastHourDuplicationPercent, - int cycleDuplicationPercent, int spatialDuplicationPercent) { - - boolean response = false; - - final boolean exceedsAllowedParameterDuplication = parameterDuplicationPercent > config - .getMaxAllowedParameterDuplication(); - - final boolean exceedsAllowedSpatialDuplication = spatialDuplicationPercent > config - .getMaxAllowedSpatialDuplication(); - - // gridded products - if (config instanceof GridSubscriptionOverlapConfig) { - GridSubscriptionOverlapConfig gconfig = (GridSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedForecastHourDuplication = forecastHourDuplicationPercent > gconfig - .getMaxAllowedForecastHourDuplication(); - final boolean exceedsAllowedCycleDuplication = cycleDuplicationPercent > gconfig - .getMaxAllowedCycleDuplication(); - - response = exceedsAllowedParameterDuplication - || exceedsAllowedForecastHourDuplication - || exceedsAllowedCycleDuplication - || exceedsAllowedSpatialDuplication; - } - // point products - else if (config instanceof PointSubscriptionOverlapConfig) { - PointSubscriptionOverlapConfig pconfig = (PointSubscriptionOverlapConfig) config; - - final boolean exceedsAllowedTimeDuplication = forecastHourDuplicationPercent > pconfig - .getMaxAllowedTimeDuplication(); - - response = exceedsAllowedParameterDuplication - || exceedsAllowedTimeDuplication - || exceedsAllowedSpatialDuplication; - } else { - throw new IllegalArgumentException("Data type "+config.getClass()+" has no implementation"); - } - - return response; - } - - @Override - public String getDisplayString() { - return "Match Any"; - } - }; - - /** - * Check whether the given duplication percents indicate an overlapping - * subscription. - * - * @param config - * @param parameterDuplicationPercent - * @param forecastHourDuplicationPercent or timeDuplicatePercent - * @param cycleDuplicationPercent or notUsed - * @param spatialDuplicationPercent - * @return true if the subscription should be considered overlapping - */ - public abstract boolean isOverlapping(SubscriptionOverlapConfig config, - int parameterDuplicationPercent, - int forecastHourDuplicationPercent, int cycleDuplicationPercent, - int spatialDuplicationPercent); - - /** - * Get the display string. - * - * @return the display string - */ - public abstract String getDisplayString(); -} + private SubscriptionOverlapMatchStrategy(String displayString) { + this.displayString = displayString; + } + public String getDisplayString() { + return displayString; + } +}; diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapRequest.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapRequest.java new file mode 100644 index 0000000000..d3f5fe6f97 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapRequest.java @@ -0,0 +1,86 @@ +/** + * 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.datadelivery.service.subscription; + +import java.util.List; + +import com.google.common.collect.Lists; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; +import com.raytheon.uf.common.serialization.comm.IServerRequest; + +/** + * Subscription overlap request object. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 24, 2013   2292      mpduff     Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ +@DynamicSerialize +public class SubscriptionOverlapRequest implements IServerRequest { + + @DynamicSerializeElement + private List subscriptionList; + + /** + * Constructor. + */ + public SubscriptionOverlapRequest() { + + } + + /** + * Constructor. + * + * @param subscriptionList + * - list of subscriptions + */ + public SubscriptionOverlapRequest(List subscriptionList) { + this.subscriptionList = subscriptionList; + } + + /** + * @return the subscriptionList + */ + public List getSubscriptionList() { + if (subscriptionList == null) { + subscriptionList = Lists.newArrayListWithCapacity(0); + } + return subscriptionList; + } + + /** + * @param subscriptionList + * the subscriptionList to set + */ + public void setSubscriptionList(List subscriptionList) { + this.subscriptionList = subscriptionList; + } +} diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapResponse.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapResponse.java new file mode 100644 index 0000000000..e3c6b289a2 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapResponse.java @@ -0,0 +1,114 @@ +/** + * 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.datadelivery.service.subscription; + +import java.util.List; + +import com.google.common.collect.Lists; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; + +/** + * Subscription overlap response object. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 24, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ +@DynamicSerialize +public class SubscriptionOverlapResponse { + @DynamicSerializeElement + private boolean overlap; + + @DynamicSerializeElement + private boolean duplicate; + + @DynamicSerializeElement + private List subscriptionNameList; + + /** + * @return the overlap + */ + public boolean isOverlap() { + return overlap; + } + + /** + * @param overlap + * the overlap to set + */ + public void setOverlap(boolean overlap) { + this.overlap = overlap; + } + + /** + * @return the duplicate + */ + public boolean isDuplicate() { + return duplicate; + } + + /** + * @param duplicate + * the duplicate to set + */ + public void setDuplicate(boolean duplicate) { + this.duplicate = duplicate; + } + + /** + * @return the subscriptionNameList + */ + public List getSubscriptionNameList() { + if (subscriptionNameList == null) { + subscriptionNameList = Lists.newArrayListWithCapacity(0); + } + + return subscriptionNameList; + } + + /** + * @param subscriptionNameList + * the subscriptionNameList to set + */ + public void setSubscriptionNameList(List subscriptionNameList) { + this.subscriptionNameList = subscriptionNameList; + } + + /** + * @param name + */ + public void addSubscriptionName(String name) { + if (subscriptionNameList == null) { + subscriptionNameList = Lists.newArrayList(); + } + + this.subscriptionNameList.add(name); + } +} diff --git a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapService.java b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapService.java index 191a88da6a..84f48fd056 100644 --- a/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapService.java +++ b/edexOsgi/com.raytheon.uf.common.datadelivery.service/src/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionOverlapService.java @@ -19,15 +19,13 @@ **/ package com.raytheon.uf.common.datadelivery.service.subscription; -import java.util.HashMap; -import java.util.Map; +import java.io.File; import java.util.MissingResourceException; import javax.xml.bind.JAXBException; import com.raytheon.uf.common.datadelivery.registry.Coverage; import com.raytheon.uf.common.datadelivery.registry.DataType; -import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.Time; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; @@ -43,7 +41,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; /** - * Checks subscriptions to see if they would be considered duplicates. + * Read/Write subscription overlap config files. * *
  * 
@@ -55,7 +53,7 @@ import com.raytheon.uf.common.util.FileUtil;
  * Jun 04, 2013  223       mpduff       Get base file if site doesn't exist.
  * Sept 23, 2013 2283      dhladky      Updated for multiple configs
  * Oct 03, 2013  2386      mpduff       Moved the subscription overlap rules files into the rules directory.
- * 
+ * Oct 25, 2013  2292      mpduff       Move overlap checks to edex.
  * 
* * @author djohnson @@ -64,47 +62,6 @@ import com.raytheon.uf.common.util.FileUtil; public class SubscriptionOverlapService implements ISubscriptionOverlapService { - - /** - * Base response object implementing {@link ISubscriptionOverlapResponse}. - */ - public class SubscriptionOverlapResponse implements - ISubscriptionOverlapResponse { - - private final boolean duplicate; - - private final boolean overlapping; - - /** - * Constructor. - * - * @param duplicate - * @param overlapping - */ - public SubscriptionOverlapResponse(boolean duplicate, - boolean overlapping) { - this.duplicate = duplicate; - this.overlapping = overlapping; - } - - /** - * {@inheritDoc} - */ - @Override - public boolean isDuplicate() { - return duplicate; - } - - /** - * {@inheritDoc} - */ - @Override - public boolean isOverlapping() { - return overlapping; - } - - } - private static final IUFStatusHandler statusHandler = UFStatus .getHandler(SubscriptionOverlapService.class); @@ -114,9 +71,7 @@ public class SubscriptionOverlapService private static final String SUBSCRIPTION_OVERLAP_CONFIG_FILE_ROOT = "SubscriptionOverlapRules.xml"; private static final String SUBSCRIPTION_OVERLAP_CONFIG_FILE_PATH = FileUtil - .join("datadelivery", "systemManagement", "rules"); - - private final ISubscriptionDuplicateChecker duplicateChecker; + .join("datadelivery", "systemManagement", "rules", File.separator); private final JAXBManager jaxbManager; @@ -125,10 +80,7 @@ public class SubscriptionOverlapService * * @param duplicateChecker */ - public SubscriptionOverlapService( - ISubscriptionDuplicateChecker duplicateChecker) { - this.duplicateChecker = duplicateChecker; - + public SubscriptionOverlapService() { try { @SuppressWarnings("rawtypes") Class[] clazzes = new Class[] { SubscriptionOverlapConfig.class, @@ -140,27 +92,6 @@ public class SubscriptionOverlapService } } - /** - * {@inheritDoc} - */ - @Override - public ISubscriptionOverlapResponse isOverlapping(Subscription sub1, - Subscription sub2) { - // Ignore requests to compare with itself - if (sub1.getName().equals(sub2.getName())) { - return new SubscriptionOverlapResponse(false, false); - } - - // Ignore requests where the two subscriptions are of different types - if (!sub1.getDataSetType().equals(sub2.getDataSetType())) { - return new SubscriptionOverlapResponse(false, false); - } - - SubscriptionOverlapConfig config = getConfigFile(sub1.getDataSetType()); - - return getOverlap(config, sub1, sub2); - } - /** * {@inheritDoc} */ @@ -191,95 +122,14 @@ public class SubscriptionOverlapService configFile.jaxbMarshal(config, jaxbManager); } - /** - * {@inheritDoc} - * - * @throws LocalizationException - */ - @Override - public Map readConfig() - throws LocalizationException { - - HashMap configs = new HashMap(); - - for (DataType type : DataType.values()) { - SubscriptionOverlapConfig config = getConfigFile(type); - if (config != null) { - configs.put(type, config); - } - } - - return configs; - } - - /** - * Process a set of Gridded subscriptions for duplication; - * - * @param config - * @param sub1 - * @param sub2 - * @return - */ - private SubscriptionOverlapResponse processGriddedSubscriptionOverlap( - GridSubscriptionOverlapConfig config, Subscription sub1, - Subscription sub2) { - final int parameterDuplicationPercent = duplicateChecker - .getParameterDuplicationPercent(sub1, sub2); - final int forecastHourDuplicationPercent = duplicateChecker - .getForecastHourDuplicationPercent(sub1, sub2); - final int cycleDuplicationPercent = duplicateChecker - .getCycleDuplicationPercent(sub1, sub2); - final int spatialDuplicationPercent = duplicateChecker - .getSpatialDuplicationPercent(sub1, sub2); - - final boolean overlaps = config.isOverlapping( - parameterDuplicationPercent, forecastHourDuplicationPercent, - cycleDuplicationPercent, spatialDuplicationPercent); - - final boolean duplicate = (parameterDuplicationPercent == ONE_HUNDRED_PERCENT) - && (forecastHourDuplicationPercent == ONE_HUNDRED_PERCENT) - && (cycleDuplicationPercent == ONE_HUNDRED_PERCENT) - && (spatialDuplicationPercent == ONE_HUNDRED_PERCENT); - - return new SubscriptionOverlapResponse(duplicate, overlaps); - } - - /*** - * Process a set of Point subscriptions for duplication - * - * @param config - * @param sub1 - * @param sub2 - * @return - */ - private SubscriptionOverlapResponse processPointSubscriptionOverlap( - PointSubscriptionOverlapConfig config, Subscription sub1, - Subscription sub2) { - final int parameterDuplicationPercent = duplicateChecker - .getParameterDuplicationPercent(sub1, sub2); - final int timeDuplicationPercent = duplicateChecker - .getTimeDuplicationPercent(sub1, sub2); - final int spatialDuplicationPercent = duplicateChecker - .getSpatialDuplicationPercent(sub1, sub2); - - final boolean overlaps = config.isOverlapping( - parameterDuplicationPercent, timeDuplicationPercent, 0, - spatialDuplicationPercent); - - final boolean duplicate = (parameterDuplicationPercent == ONE_HUNDRED_PERCENT) - && (timeDuplicationPercent == ONE_HUNDRED_PERCENT) - && (spatialDuplicationPercent == ONE_HUNDRED_PERCENT); - - return new SubscriptionOverlapResponse(duplicate, overlaps); - } - /** * Gets the overlap config file by type * * @param type * @return */ - private SubscriptionOverlapConfig getConfigFile(DataType type) { + @Override + public SubscriptionOverlapConfig getConfigFile(DataType type) { final IPathManager pathManager = PathManagerFactory.getPathManager(); LocalizationFile localizationFile = null; @@ -321,31 +171,4 @@ public class SubscriptionOverlapService return config; } - /** - * Gets the SubscriptionOverlapResponse by type - * - * @param config - * @param sub1 - * @param sub2 - * @return - */ - private SubscriptionOverlapResponse getOverlap( - SubscriptionOverlapConfig config, Subscription sub1, - Subscription sub2) { - SubscriptionOverlapResponse response = null; - DataType type = sub1.getDataSetType(); - - if (type == DataType.GRID) { - response = processGriddedSubscriptionOverlap( - (GridSubscriptionOverlapConfig) config, sub1, sub2); - } else if (type == DataType.POINT) { - response = processPointSubscriptionOverlap( - (PointSubscriptionOverlapConfig) config, sub1, sub2); - } else { - throw new IllegalArgumentException(type - + " Config not yet Implemented!"); - } - - return response; - } } diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/META-INF/MANIFEST.MF index 820a81cb7b..e1e4fe8d2c 100644 --- a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/META-INF/MANIFEST.MF @@ -30,4 +30,7 @@ Require-Bundle: com.raytheon.uf.common.auth;bundle-version="1.12.1174", com.raytheon.uf.edex.pointdata;bundle-version="1.12.1174", com.raytheon.uf.common.dataquery;bundle-version="1.0.0", com.raytheon.uf.edex.database;bundle-version="1.0.0", - com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174" + com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", + org.geotools;bundle-version="2.6.4", + com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", + com.raytheon.edex.common;bundle-version="1.12.1174" diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/res/spring/datadelivery-service-handlers.xml b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/res/spring/datadelivery-service-handlers.xml index 256b205f33..b99a3c9616 100644 --- a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/res/spring/datadelivery-service-handlers.xml +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/res/spring/datadelivery-service-handlers.xml @@ -39,4 +39,14 @@
+ + + + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/GridOverlapData.java b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/GridOverlapData.java new file mode 100644 index 0000000000..75dba826d5 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/GridOverlapData.java @@ -0,0 +1,177 @@ +/** + * 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.edex.datadelivery.service.services.overlap; + +import java.util.ArrayList; +import java.util.List; + +import com.raytheon.uf.common.datadelivery.registry.GriddedCoverage; +import com.raytheon.uf.common.datadelivery.registry.GriddedTime; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.datadelivery.service.subscription.GridSubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy; + +/** + * Gridded overlap data object. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 17, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + * @param + */ + +public class GridOverlapData + extends OverlapData { + /** Number of grid attributes */ + private final int numberOfGridAttributes = 2; + + /** Forecast hour duplication percent */ + private int fcstHrDuplication = -999; + + /** Cycle time duplication percetn */ + private int cycleDuplication = -999; + + /** Forecast hour pass flag */ + private boolean fcstHrPass = false; + + /** Cycle time pass flag */ + private boolean cyclePass = false; + + /** + * Constructor. + * + * @param sub1 + * @param sub2 + * @param config + */ + public GridOverlapData(Subscription sub1, Subscription sub2, + SubscriptionOverlapConfig config) { + super(sub1, sub2, config); + } + + /** + * Calculates the percent, 0-100, of how many cycle hours from sub2 are + * satisfied by sub1. + * + * @param sub1 + * @param sub2 + */ + public void calculateCycleDuplicationPercent( + Subscription sub1, + Subscription sub2) { + + GriddedTime gtime1 = sub1.getTime(); + GriddedTime gtime2 = sub2.getTime(); + + cycleDuplication = this.getDuplicationPercent(gtime1.getCycleTimes(), + gtime2.getCycleTimes()); + } + + /** + * Calculates the percent, 0-100, of how many forecast hours from sub2 are + * satisfied by sub1. + * + * @param sub1 + * @param sub2 + */ + public void calculateForecastHourDuplicationPercent( + Subscription sub1, + Subscription sub2) { + GriddedTime gtime1 = sub1.getTime(); + GriddedTime gtime2 = sub2.getTime(); + + fcstHrDuplication = getDuplicationPercent( + gtime1.getSelectedTimeIndices(), + gtime2.getSelectedTimeIndices()); + } + + /** + * {@inheritDoc} + */ + @Override + protected void determineOverlapping() { + super.determineOverlapping(); + calculateCycleDuplicationPercent(sub1, sub2); + calculateForecastHourDuplicationPercent(sub1, sub2); + GridSubscriptionOverlapConfig config = (GridSubscriptionOverlapConfig) this.config; + + fcstHrPass = fcstHrDuplication > config + .getMaxAllowedForecastHourDuplication(); + + cyclePass = cycleDuplication > config.getMaxAllowedCycleDuplication(); + } + + /** + * {@inheritDoc} + */ + @Override + public boolean isOverlapping() { + determineOverlapping(); + boolean response = false; + + if (matchStrategy == SubscriptionOverlapMatchStrategy.MATCH_ALL) { + response = cyclePass && fcstHrPass && parameterPass && spatialPass; + } else if (matchStrategy == SubscriptionOverlapMatchStrategy.MATCH_ANY) { + response = cyclePass || fcstHrPass || parameterPass || spatialPass; + } else if (matchStrategy == SubscriptionOverlapMatchStrategy.AT_LEAST_HALF) { + int halfNumAttrs = (numberOfGridAttributes + numberOfCommonAttributes) / 2; + List toCheck = new ArrayList(); + toCheck.add(cyclePass); + toCheck.add(fcstHrPass); + toCheck.add(parameterPass); + toCheck.add(spatialPass); + + int exceeded = 0; + for (boolean check : toCheck) { + if (check) { + exceeded++; + if (exceeded >= halfNumAttrs) { + response = true; + break; + } + } + } + } + + return response; + } + + /** + * {@inheritDoc} + */ + @Override + public boolean isDuplicate() { + determineOverlapping(); + return cycleDuplication == ONE_HUNDRED_PERCENT + && fcstHrDuplication == ONE_HUNDRED_PERCENT + && parameterDuplication == ONE_HUNDRED_PERCENT + && spatialDuplication == ONE_HUNDRED_PERCENT; + } +} diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapData.java b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapData.java new file mode 100644 index 0000000000..6c7b660a70 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapData.java @@ -0,0 +1,209 @@ +/** + * 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.edex.datadelivery.service.services.overlap; + +import java.util.Collection; + +import org.geotools.geometry.jts.ReferencedEnvelope; +import org.opengis.referencing.operation.TransformException; + +import com.raytheon.uf.common.datadelivery.registry.Coverage; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.datadelivery.registry.Time; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy; +import com.raytheon.uf.common.geospatial.MapUtil; +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.util.CollectionUtil; + +/** + * Parent Overlap Data Object. This object holds the data needed to calculate + * overlapping of subscriptions. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 17, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + * @param + * @param + */ + +public abstract class OverlapData { + private final IUFStatusHandler statusHandler = UFStatus + .getHandler(OverlapData.class); + + protected final int ONE_HUNDRED_PERCENT = 100; + + private final String UNABLE_TO_DETERMINE_SPATIAL_OVERLAP = "Unable to determine spatial overlap. " + + "Subscriptions will not be considered to be overlapping spatially."; + + /** The number of common attributes (in this class) */ + protected final int numberOfCommonAttributes = 2; + + /** Spatial duplication percent */ + protected int spatialDuplication = -999; + + /** parameter duplication percent */ + protected int parameterDuplication = -999; + + /** Spatial pass flag */ + protected boolean spatialPass = false; + + /** Parameter pass flag */ + protected boolean parameterPass = false; + + /** The subscription match strategy */ + protected SubscriptionOverlapMatchStrategy matchStrategy; + + /** The subscription overlap config object */ + protected SubscriptionOverlapConfig config; + + /** Subscription 1 */ + protected Subscription sub1; + + /** Subscription 2 */ + protected Subscription sub2; + + /** + * Constructor. + * + * @param sub1 + * @param sub2 + * @param config + */ + public OverlapData(Subscription sub1, Subscription sub2, + SubscriptionOverlapConfig config) { + this.sub1 = sub1; + this.sub2 = sub2; + this.config = config; + this.matchStrategy = config.getMatchStrategy(); + } + + /** + * Calculates the percent, 0-100, of how much spatial coverage from sub2 is + * satisfied by sub1. + * + * @param sub1 + * @param sub2 + */ + protected void calculateSpatialDuplicationPercent(Subscription sub1, + Subscription sub2) { + + final Coverage sub1Coverage = sub1.getCoverage(); + final Coverage sub2Coverage = sub2.getCoverage(); + + if (sub1Coverage != null && sub2Coverage != null) { + final ReferencedEnvelope sub1Envelope = sub1Coverage + .getRequestEnvelope(); + final ReferencedEnvelope sub2Envelope = sub2Coverage + .getRequestEnvelope(); + + if (sub1Envelope != null && sub2Envelope != null) { + // try { + ReferencedEnvelope intersection; + try { + intersection = MapUtil.reprojectAndIntersect(sub1Envelope, + sub2Envelope); + final double intersectionArea = intersection.getArea(); + spatialDuplication = (int) ((intersectionArea * 100) / sub2Envelope + .getArea()); + } catch (TransformException e) { + statusHandler.handle(Priority.PROBLEM, + UNABLE_TO_DETERMINE_SPATIAL_OVERLAP, e); + } + } + } + } + + /** + * Calculates the percent, 0-100, of how many parameters from sub2 are + * satisfied by sub1. + * + * @param sub1 + * @param sub2 + */ + protected void calculateParameterDuplicationPercent( + Subscription sub1, Subscription sub2) { + parameterDuplication = getDuplicationPercent(sub1.getParameter(), + sub2.getParameter()); + } + + /** + * Determine the overlap values + */ + protected void determineOverlapping() { + calculateParameterDuplicationPercent(sub1, sub2); + calculateSpatialDuplicationPercent(sub1, sub2); + this.parameterPass = this.parameterDuplication > config + .getMaxAllowedParameterDuplication(); + + this.spatialPass = this.spatialDuplication > config + .getMaxAllowedSpatialDuplication(); + } + + /** + * Calculate the duplication percent of the two collections. + * + * @param coll1 + * @param coll2 + * @return + */ + protected int getDuplicationPercent(Collection coll1, + Collection coll2) { + + int numberSatisfiedByFirstCollection = 0; + if (!CollectionUtil.isNullOrEmpty(coll1) + && !CollectionUtil.isNullOrEmpty(coll2)) { + for (M entry : coll2) { + if (coll1.contains(entry)) { + numberSatisfiedByFirstCollection++; + } + } + // Convert percent to 0-100 + return (numberSatisfiedByFirstCollection * 100) / (coll2.size()); + } + + return 0; + } + + /** + * Are the two subscriptions considered overlapping + * + * @return true if overlapping + */ + public abstract boolean isOverlapping(); + + /** + * Are the two subscriptions duplicates + * + * @return true if duplicates + */ + public abstract boolean isDuplicate(); +} diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapDataFactory.java b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapDataFactory.java new file mode 100644 index 0000000000..ae72fb4e28 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/OverlapDataFactory.java @@ -0,0 +1,82 @@ +/** + * 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.edex.datadelivery.service.services.overlap; + +import com.raytheon.uf.common.datadelivery.registry.Coverage; +import com.raytheon.uf.common.datadelivery.registry.DataType; +import com.raytheon.uf.common.datadelivery.registry.GriddedCoverage; +import com.raytheon.uf.common.datadelivery.registry.GriddedTime; +import com.raytheon.uf.common.datadelivery.registry.PointTime; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.datadelivery.registry.Time; +import com.raytheon.uf.common.datadelivery.service.subscription.ISubscriptionOverlapService; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapService; + +/** + * Overlap data factory + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 22, 2013    2292    mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + * @param + * @param + */ + +public class OverlapDataFactory { + private static SubscriptionOverlapConfig config; + + /** + * Get the overlap data object. + * + * @param sub1 + * @param sub2 + * @return + */ + public static OverlapData getOverlapData(Subscription sub1, + Subscription sub2) { + if (sub1.getDataSetType() != sub2.getDataSetType()) { + throw new IllegalArgumentException( + "Subscriptions must be of the same data type."); + } + ISubscriptionOverlapService overlapService = new SubscriptionOverlapService(); + DataType dt = sub1.getDataSetType(); + config = overlapService.getConfigFile(dt); + if (dt == DataType.GRID) { + return new GridOverlapData(sub1, + sub2, config); + } else if (dt == DataType.POINT) { + return new PointOverlapData(sub1, sub2, config); + } + + throw new IllegalArgumentException("Invalid Data Type: " + + sub1.getDataSetType()); + } + +} diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/PointOverlapData.java b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/PointOverlapData.java new file mode 100644 index 0000000000..a2b28c18b9 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/PointOverlapData.java @@ -0,0 +1,150 @@ +/** + * 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.edex.datadelivery.service.services.overlap; + +import java.util.ArrayList; +import java.util.List; + +import com.raytheon.uf.common.datadelivery.registry.Coverage; +import com.raytheon.uf.common.datadelivery.registry.PointTime; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.datadelivery.service.subscription.PointSubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapConfig; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy; + +/** + * Point overlap data object. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 17, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class PointOverlapData extends + OverlapData { + /** Number of point attributes */ + private final int numberOfPointAttributes = 1; + + /** Time duplication percent */ + private int timeDuplication = -999; + + /** Time duplication pass flag */ + private boolean timeDuplicationPass = false; + + /** + * Constructor. + * + * @param sub1 + * @param sub2 + * @param config + */ + public PointOverlapData(Subscription sub1, Subscription sub2, + SubscriptionOverlapConfig config) { + super(sub1, sub2, config); + } + + /** + * Calculates the percent, 0-100, of how similar the time is from sub2 to + * sub1. + * + * @param sub1 + * @param sub2 + */ + private void calculateTimeDuplicationPercent( + Subscription sub1, + Subscription sub2) { + PointTime ptime1 = sub1.getTime(); + PointTime ptime2 = sub2.getTime(); + + List intervalList1 = new ArrayList(); + intervalList1.add(ptime1.getInterval()); + List intervalList2 = new ArrayList(); + intervalList2.add(ptime2.getInterval()); + + timeDuplication = getDuplicationPercent(intervalList1, intervalList2); + } + + /** + * {@inheritDoc} + */ + @Override + protected void determineOverlapping() { + super.determineOverlapping(); + PointSubscriptionOverlapConfig config = (PointSubscriptionOverlapConfig) this.config; + calculateTimeDuplicationPercent(sub1, sub2); + this.timeDuplicationPass = this.timeDuplication > config + .getMaxAllowedTimeDuplication(); + } + + /** + * {@inheritDoc} + */ + @Override + public boolean isOverlapping() { + determineOverlapping(); + boolean response = false; + + if (this.matchStrategy == SubscriptionOverlapMatchStrategy.MATCH_ALL) { + response = this.parameterPass && this.spatialPass + && this.timeDuplicationPass; + } else if (matchStrategy == SubscriptionOverlapMatchStrategy.MATCH_ANY) { + response = this.parameterPass || this.spatialPass + || this.timeDuplicationPass; + } else if (matchStrategy == SubscriptionOverlapMatchStrategy.AT_LEAST_HALF) { + int halfNumAttrs = (numberOfPointAttributes + numberOfCommonAttributes) / 2; + List toCheck = new ArrayList(3); + toCheck.add(timeDuplicationPass); + toCheck.add(spatialPass); + toCheck.add(parameterPass); + + int exceeded = 0; + for (boolean check : toCheck) { + if (check) { + exceeded++; + if (exceeded >= halfNumAttrs) { + response = true; + } + } + } + } + + return response; + } + + /** + * {@inheritDoc} + */ + @Override + public boolean isDuplicate() { + determineOverlapping(); + return timeDuplication == ONE_HUNDRED_PERCENT + && parameterDuplication == ONE_HUNDRED_PERCENT + && spatialDuplication == ONE_HUNDRED_PERCENT; + } +} diff --git a/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/SubscriptionOverlapHandler.java b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/SubscriptionOverlapHandler.java new file mode 100644 index 0000000000..de479effba --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.datadelivery.service/src/com/raytheon/uf/edex/datadelivery/service/services/overlap/SubscriptionOverlapHandler.java @@ -0,0 +1,115 @@ +/** + * 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.edex.datadelivery.service.services.overlap; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Set; + +import com.raytheon.edex.site.SiteUtil; +import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; +import com.raytheon.uf.common.datadelivery.registry.DataType; +import com.raytheon.uf.common.datadelivery.registry.Subscription; +import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; +import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapRequest; +import com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapResponse; +import com.raytheon.uf.common.serialization.comm.IRequestHandler; + +/** + * Edex handler for subscription overlap requests. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 24, 2013    2292    mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class SubscriptionOverlapHandler implements + IRequestHandler { + + /** + * {@inheritDoc} + */ + @Override + public Object handleRequest(SubscriptionOverlapRequest request) + throws Exception { + String siteId = SiteUtil.getSite(); + List subscriptions = request.getSubscriptionList(); + List duplicateList = new LinkedList(); + SubscriptionOverlapResponse response = new SubscriptionOverlapResponse(); + + for (Subscription subscription : subscriptions) { + if (!(subscription instanceof AdhocSubscription)) { + final ISubscriptionHandler subscriptionHandler = DataDeliveryHandlers + .getSubscriptionHandler(); + final List potentialDuplicates = subscriptionHandler + .getActiveByDataSetAndProvider( + subscription.getDataSetName(), + subscription.getProvider()); + DataType dataType = subscription.getDataSetType(); + Set overlappingSubscriptions = new HashSet(); + for (Subscription potentialDuplicate : potentialDuplicates) { + OverlapData od = OverlapDataFactory.getOverlapData( + subscription, potentialDuplicate); + + if (od.isDuplicate()) { + // If the subscription is local then it is flagged + // as a duplicate, otherwise it is marked as overlap. + if (potentialDuplicate.getOfficeIDs().contains(siteId)) { + duplicateList.add(potentialDuplicate.getName()); + } else { + overlappingSubscriptions.add(potentialDuplicate + .getName()); + } + } + + if (od.isOverlapping()) { + overlappingSubscriptions.add(potentialDuplicate + .getName()); + } + } + + if (!overlappingSubscriptions.isEmpty()) { + List overlapList = new ArrayList( + overlappingSubscriptions); + Collections.sort(overlapList); + response.setSubscriptionNameList(overlapList); + } + + response.setDuplicate(!duplicateList.isEmpty()); + response.setOverlap(!overlappingSubscriptions.isEmpty()); + } + } + + return response; + } +} diff --git a/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/PendingSubscriptionHandlerTest.java b/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/PendingSubscriptionHandlerTest.java index 45b3119856..012a3e107b 100644 --- a/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/PendingSubscriptionHandlerTest.java +++ b/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/PendingSubscriptionHandlerTest.java @@ -28,6 +28,7 @@ import java.util.List; import org.junit.Test; import com.google.common.collect.Lists; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.InitialPendingSubscription; import com.raytheon.uf.common.datadelivery.registry.PendingSharedSubscription; import com.raytheon.uf.common.datadelivery.registry.PendingSharedSubscriptionFixture; @@ -45,7 +46,8 @@ import com.raytheon.uf.edex.registry.ebxml.dao.AbstractRegistryTest; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 29, 2013 1650 djohnson Initial creation + * May 29, 2013 1650 djohnson Initial creation + * Oct 22, 2013 2292 mpduff Implement multiple data types. * * * @@ -59,9 +61,9 @@ public class PendingSubscriptionHandlerTest extends AbstractRegistryTest { throws RegistryHandlerException { final PendingSiteSubscription siteSubscription = PendingSiteSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final PendingSharedSubscription sharedSubscription = PendingSharedSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); storeSubscriptionsForPendingAssociations(siteSubscription, sharedSubscription); @@ -85,9 +87,9 @@ public class PendingSubscriptionHandlerTest extends AbstractRegistryTest { throws RegistryHandlerException { final PendingSiteSubscription siteSubscription = PendingSiteSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final PendingSharedSubscription sharedSubscription = PendingSharedSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); storeSubscriptionsForPendingAssociations(siteSubscription, sharedSubscription); diff --git a/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/SubscriptionHandlerTest.java b/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/SubscriptionHandlerTest.java index d4cfba21f3..16e308f0b0 100644 --- a/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/SubscriptionHandlerTest.java +++ b/tests/integration/com/raytheon/uf/common/datadelivery/registry/handlers/SubscriptionHandlerTest.java @@ -29,6 +29,7 @@ import java.util.List; import org.junit.Test; import com.google.common.collect.Lists; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.SharedSubscription; import com.raytheon.uf.common.datadelivery.registry.SharedSubscriptionFixture; import com.raytheon.uf.common.datadelivery.registry.SiteSubscription; @@ -48,6 +49,7 @@ import com.raytheon.uf.edex.registry.ebxml.dao.AbstractRegistryTest; * ------------ ---------- ----------- -------------------------- * May 29, 2013 1650 djohnson Initial creation * May 31, 2013 1650 djohnson Fix ability to get shared subscriptions by id. + * Oct 21, 2013 2292 mpduff Implemented point data type * * * @@ -60,9 +62,9 @@ public class SubscriptionHandlerTest extends AbstractRegistryTest { public void canDeleteMixedSiteAndSharedSubscriptions() throws RegistryHandlerException { final SiteSubscription siteSubscription = SiteSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final SharedSubscription sharedSubscription = SharedSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final ISubscriptionHandler subscriptionHandler = DataDeliveryHandlers .getSubscriptionHandler(); @@ -81,9 +83,9 @@ public class SubscriptionHandlerTest extends AbstractRegistryTest { public void canDeleteMixedSiteAndSharedSubscriptionsWithUsername() throws RegistryHandlerException { final SiteSubscription siteSubscription = SiteSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final SharedSubscription sharedSubscription = SharedSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final ISubscriptionHandler subscriptionHandler = DataDeliveryHandlers .getSubscriptionHandler(); @@ -102,7 +104,7 @@ public class SubscriptionHandlerTest extends AbstractRegistryTest { public void getByIdReturnsSharedSubscription() throws RegistryHandlerException { final SharedSubscription sharedSubscription = SharedSubscriptionFixture.INSTANCE - .get(); + .get(DataType.GRID); final ISubscriptionHandler subscriptionHandler = DataDeliveryHandlers .getSubscriptionHandler(); diff --git a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthManagerIntTest.java b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthManagerIntTest.java index af88eb200a..23987cf067 100644 --- a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthManagerIntTest.java +++ b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthManagerIntTest.java @@ -78,7 +78,8 @@ import com.raytheon.uf.edex.datadelivery.bandwidth.util.BandwidthUtil; * Jun 03, 2013 2095 djohnson Move getPointDataSet in from subclass. * Jul 09, 2013 2106 djohnson Add datadelivery handlers, since they are now dependency injected. * Sep 17, 2013 2383 bgonzale Added "thrift.stream.maxsize" System property to setup. - * Sept 25, 2013 1797 dhladky separated time from gridded time + * Sep 25, 2013 1797 dhladky separated time from gridded time + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -101,7 +102,7 @@ public abstract class AbstractBandwidthManagerIntTest bandwidthManager; + protected EdexBandwidthManager bandwidthManager; @Autowired protected RetrievalManager retrievalManager; @@ -188,7 +189,7 @@ public abstract class AbstractBandwidthManagerIntTest createSubscriptionThatFillsUpABucket() { + protected SiteSubscription createSubscriptionThatFillsUpABucket() { return createSubscriptionWithDataSetSizeInBytes(fullBucketSize); } @@ -197,7 +198,7 @@ public abstract class AbstractBandwidthManagerIntTest createSubscriptionThatFillsUpTenBuckets() { + protected SiteSubscription createSubscriptionThatFillsUpTenBuckets() { return createSubscriptionWithDataSetSizeInBytes(fullBucketSize * 10); } @@ -206,7 +207,7 @@ public abstract class AbstractBandwidthManagerIntTest createSubscriptionThatFillsHalfABucket() { + protected SiteSubscription createSubscriptionThatFillsHalfABucket() { return createSubscriptionWithDataSetSizeInBytes(halfBucketSize); } @@ -215,7 +216,7 @@ public abstract class AbstractBandwidthManagerIntTest createSubscriptionThatFillsAThirdOfABucket() { + protected SiteSubscription createSubscriptionThatFillsAThirdOfABucket() { return createSubscriptionWithDataSetSizeInBytes(thirdBucketSizeInBytes); } @@ -224,14 +225,14 @@ public abstract class AbstractBandwidthManagerIntTest createSubscriptionThatFillsUpTwoBuckets() { + protected SiteSubscription createSubscriptionThatFillsUpTwoBuckets() { return createSubscriptionWithDataSetSizeInBytes(fullBucketSize * 2); } - protected SiteSubscription createSubscriptionWithDataSetSizeInBytes( + protected SiteSubscription createSubscriptionWithDataSetSizeInBytes( long bytes) { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE - .get(subscriptionSeed++); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(subscriptionSeed++, DataType.GRID); subscription.setDataSetSize(BandwidthUtil .convertBytesToKilobytes(bytes)); subscription.setRoute(getRouteToUseForSubscription()); @@ -245,11 +246,12 @@ public abstract class AbstractBandwidthManagerIntTest getPointDataSubscription(int retrievalInterval) { + protected Subscription getPointDataSubscription(int retrievalInterval) { final PointTime pointTime = new PointTime(); pointTime.setInterval(retrievalInterval); - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); subscription.setTime(pointTime); subscription.setDataSetType(DataType.POINT); subscription.setLatencyInMinutes(retrievalInterval); diff --git a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthManagerIntTest.java b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthManagerIntTest.java index fcba792cff..69a9ed5c8d 100644 --- a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthManagerIntTest.java +++ b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthManagerIntTest.java @@ -47,6 +47,7 @@ import java.util.concurrent.CountDownLatch; import org.junit.Test; import com.raytheon.uf.common.datadelivery.registry.DataDeliveryRegistryObjectTypes; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.GriddedDataSetMetaData; import com.raytheon.uf.common.datadelivery.registry.GriddedTime; import com.raytheon.uf.common.datadelivery.registry.Network; @@ -105,6 +106,7 @@ import com.raytheon.uf.edex.datadelivery.retrieval.RetrievalManagerNotifyEvent; * Jul 11, 2013 2106 djohnson Use SubscriptionPriority enum. * Sept 25, 2013 1797 dhladky separated time from gridded time * Oct 10, 2013 1797 bgonzale Refactored registry Time objects. + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -153,7 +155,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest @Test public void testDataSetMetaDataUpdateSetsSubscriptionRetrievalsToReady() throws SerializationException, ParseException { - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); bandwidthManager.subscriptionUpdated(subscription); OpenDapGriddedDataSetMetaData metadata = OpenDapGriddedDataSetMetaDataFixture.INSTANCE @@ -233,7 +236,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest @Test public void testDataSetMetaDataUpdateSetsCorrectTimeOnSubscription() throws SerializationException, ParseException { - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); bandwidthManager.subscriptionUpdated(subscription); OpenDapGriddedDataSetMetaData metadata = OpenDapGriddedDataSetMetaDataFixture.INSTANCE @@ -271,7 +275,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws RegistryHandlerException, ParseException, SerializationException { // Store the original subscription - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); DataDeliveryHandlers.getSubscriptionHandler().store(subscription); // The dataset metadata update @@ -309,8 +314,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest public void testDailyProductSubscriptionIsSetToReadyStatus() throws RegistryHandlerException, ParseException { // Store the original subscription - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Collections. emptyList()); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); + ((GriddedTime) subscription.getTime()).setCycleTimes(Collections + . emptyList()); subscription.setLatencyInMinutes(3); DataDeliveryHandlers.getSubscriptionHandler().store(subscription); @@ -343,7 +350,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws RegistryHandlerException, ParseException { // Store the original subscription - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); subscription.setLatencyInMinutes(5); DataDeliveryHandlers.getSubscriptionHandler().store(subscription); @@ -378,10 +386,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); List unscheduled = bandwidthManager .schedule(subscription); @@ -425,10 +433,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest subscription2.setPriority(SubscriptionPriority.HIGH); // they conflict for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); List unscheduled = bandwidthManager .schedule(subscription); @@ -463,10 +471,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest subscription2.setPriority(SubscriptionPriority.HIGH); // they conflict for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); bandwidthManager.schedule(subscription); bandwidthManager.schedule(subscription2); @@ -559,10 +567,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest subscription2.setPriority(SubscriptionPriority.HIGH); // they conflict for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); List unscheduled = bandwidthManager .schedule(subscription); @@ -596,10 +604,10 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest subscription2.setPriority(SubscriptionPriority.HIGH); // they conflict for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); bandwidthManager.schedule(subscription); bandwidthManager.schedule(subscription2); @@ -623,7 +631,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest // Subscription starts out too big Subscription subscription = createSubscriptionThatFillsUpTwoBuckets(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(Integer.valueOf(6))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(6))); List unscheduled = bandwidthManager .subscriptionUpdated(subscription); @@ -660,7 +669,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws SerializationException { Subscription subscription = createSubscriptionThatFillsUpTenBuckets(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(Integer.valueOf(0))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(0))); subscription.setLatencyInMinutes(0); int requiredLatency = bandwidthManager @@ -685,7 +695,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest // Subscription starts out too big Subscription subscription = createSubscriptionThatFillsUpABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(Integer.valueOf(0))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(0))); subscription.setLatencyInMinutes(0); bandwidthManager.subscriptionUpdated(subscription); @@ -724,7 +735,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws Exception { Subscription subscription = createSubscriptionThatFillsUpABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList(0, + 12)); bandwidthManager.schedule(subscription); @@ -753,7 +765,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws Exception { Subscription subscription = createSubscriptionThatFillsUpABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList(0, + 12)); bandwidthManager.schedule(subscription); @@ -794,7 +807,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest .getDataSetSize() / numberOfSubscriptionsWithSameProviderDataSet); - ((GriddedTime)templateSubscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) templateSubscription.getTime()).setCycleTimes(Arrays + .asList(0, 12)); int lastKnownNumberOfBandwidthAllocations = 0; final Subscription[] subscriptions = new Subscription[numberOfSubscriptionsWithSameProviderDataSet]; @@ -860,7 +874,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws Exception { Subscription subscription = createSubscriptionThatFillsUpABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList(0, + 12)); final Network network = subscription.getRoute(); final List bandwidthAllocationsOrig = getRetrievalManagerAllocationsForNetwork(network); @@ -892,7 +907,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws Exception { Subscription subscription = createSubscriptionThatFillsUpTwoBuckets(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList(0, + 12)); subscription.setLatencyInMinutes(0); final List unableToSchedule = bandwidthManager @@ -925,7 +941,8 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest throws Exception { Subscription subscription = createSubscriptionThatFillsUpTwoBuckets(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(0, 12)); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList(0, + 12)); subscription.setLatencyInMinutes(0); final List unableToSchedule = bandwidthManager @@ -969,8 +986,9 @@ public class BandwidthManagerIntTest extends AbstractWfoBandwidthManagerIntTest private void testSubscriptionCyclesAreAllocatedOncePerCyclePerPlanDay( List cycles) throws SerializationException { - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); - ((GriddedTime)subscription.getTime()).setCycleTimes(cycles); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); + ((GriddedTime) subscription.getTime()).setCycleTimes(cycles); bandwidthManager.subscriptionUpdated(subscription); assertEquals("Incorrect number of bandwidth allocations made!", diff --git a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthServiceIntTest.java b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthServiceIntTest.java index 14887f712c..a0d4415a87 100644 --- a/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthServiceIntTest.java +++ b/tests/integration/com/raytheon/uf/edex/datadelivery/bandwidth/BandwidthServiceIntTest.java @@ -49,6 +49,7 @@ import com.raytheon.uf.common.datadelivery.bandwidth.data.TimeWindowData; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscriptionFixture; import com.raytheon.uf.common.datadelivery.registry.Coverage; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.GriddedTime; import com.raytheon.uf.common.datadelivery.registry.Network; import com.raytheon.uf.common.datadelivery.registry.Subscription; @@ -87,12 +88,14 @@ import com.raytheon.uf.edex.datadelivery.bandwidth.util.BandwidthUtil; * Jul 11, 2013 2106 djohnson Use SubscriptionPriority enum. * Jul 18, 2013 1653 mpduff Added test for sub status summary. * Sept 25, 2013 1797 dhladky separated time from gridded time + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @author djohnson * @version 1.0 */ -public class BandwidthServiceIntTest extends AbstractWfoBandwidthManagerIntTest { +public class BandwidthServiceIntTest + extends AbstractWfoBandwidthManagerIntTest { private static final int ONE_HUNDRED = 100; @@ -216,10 +219,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsHalfABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); @SuppressWarnings("unchecked") Set unscheduledSubscriptions = service.schedule(Arrays.asList( @@ -235,10 +238,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); @SuppressWarnings("unchecked") Set unscheduledSubscriptions = service.schedule(Arrays.asList( @@ -254,10 +257,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -275,10 +278,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsHalfABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); @SuppressWarnings("unchecked") IProposeScheduleResponse response = service.proposeSchedule(Arrays @@ -295,10 +298,10 @@ public class BandwidthServiceIntTest extends Subscription subscription = createSubscriptionThatFillsHalfABucket(); Subscription subscription2 = createSubscriptionThatFillsHalfABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); @SuppressWarnings("unchecked") IProposeScheduleResponse response = service.proposeSchedule(Arrays @@ -316,10 +319,10 @@ public class BandwidthServiceIntTest extends Subscription subscription = createSubscriptionThatFillsHalfABucket(); Subscription subscription2 = createSubscriptionThatFillsHalfABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); @SuppressWarnings("unchecked") IProposeScheduleResponse response = service.proposeSchedule(Arrays @@ -340,10 +343,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); @SuppressWarnings("unchecked") Set unscheduledSubscriptions = service.proposeSchedule( @@ -360,10 +363,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -382,10 +385,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -404,10 +407,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpTenBuckets(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -426,8 +429,8 @@ public class BandwidthServiceIntTest extends public void testProposeScheduleSubscriptionsSecondDoesntFitReturnsRequiredSizeForSubscriptionUpdate() { Subscription subscription = createSubscriptionThatFillsHalfABucket(); - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -454,10 +457,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(3), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(3), Integer.valueOf(8))); Set unscheduledSubscriptions = service.schedule(subscription); verifyNoSubscriptionsWereUnscheduled(unscheduledSubscriptions); @@ -488,8 +491,9 @@ public class BandwidthServiceIntTest extends @SuppressWarnings("unchecked") AdhocSubscription subscription = (AdhocSubscription) AdhocSubscriptionFixture.INSTANCE - .get(); - ((GriddedTime)subscription.getTime()).setCycleTimes(Arrays.asList(Integer.valueOf(0))); + .get(DataType.GRID); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(0))); subscription.setDataSetSize(createSubscriptionThatFillsUpABucket() .getDataSetSize()); @@ -511,10 +515,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()) - .setCycleTimes(Arrays.asList(Integer.valueOf(3))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(3))); service.schedule(subscription); service.schedule(subscription2); @@ -533,10 +537,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()) - .setCycleTimes(Arrays.asList(Integer.valueOf(3))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(3))); service.schedule(subscription); service.schedule(subscription2); @@ -545,8 +549,7 @@ public class BandwidthServiceIntTest extends RetrievalPlan opsnetPlan = retrievalManager.getPlan(Network.OPSNET); assertEquals("Incorrect number of subscriptions returned!", - opsnetPlan.getBucketMinutes(), - graphData.getBinTimeInMinutes()); + opsnetPlan.getBucketMinutes(), graphData.getBinTimeInMinutes()); SortedSet descs = graphData .getNetworkBucketMap().get(Network.OPSNET); long earliestTime = descs.first().getBucketStartTime(); @@ -644,10 +647,10 @@ public class BandwidthServiceIntTest extends Subscription subscription2 = createSubscriptionThatFillsUpABucket(); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()) - .setCycleTimes(Arrays.asList(Integer.valueOf(3))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(3))); service.schedule(subscription); service.schedule(subscription2); @@ -679,10 +682,10 @@ public class BandwidthServiceIntTest extends subscription.setPriority(SubscriptionPriority.HIGH); // subscription2 will not be able to schedule for cycle hour 8 - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); - ((GriddedTime)subscription2.getTime()) - .setCycleTimes(Arrays.asList(Integer.valueOf(3))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription2.getTime()).setCycleTimes(Arrays + .asList(Integer.valueOf(3))); service.schedule(subscription); service.schedule(subscription2); @@ -702,8 +705,8 @@ public class BandwidthServiceIntTest extends public void testProposeScheduleSubscriptionsReturnsStatusSummary() { Subscription subscription = createSubscriptionThatFillsUpTwoBuckets(); - ((GriddedTime)subscription.getTime()).setCycleTimes( - Arrays.asList(Integer.valueOf(6), Integer.valueOf(8))); + ((GriddedTime) subscription.getTime()).setCycleTimes(Arrays.asList( + Integer.valueOf(6), Integer.valueOf(8))); subscription.setLatencyInMinutes(3); IProposeScheduleResponse response = service @@ -820,7 +823,8 @@ public class BandwidthServiceIntTest extends * the subscription */ private static void verifySubscriptionWasNotAbleToBeFullyScheduled( - Set unscheduledSubscriptions, @SuppressWarnings("rawtypes") Subscription subscription) { + Set unscheduledSubscriptions, @SuppressWarnings("rawtypes") + Subscription subscription) { assertEquals( "One and only one subscription should not have been able to fully schedule", 1, unscheduledSubscriptions.size()); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSharedSubscriptionFixture.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSharedSubscriptionFixture.java index f78ded8f6c..8cee94aef7 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSharedSubscriptionFixture.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSharedSubscriptionFixture.java @@ -34,6 +34,7 @@ import com.raytheon.uf.common.registry.ebxml.RegistryUtil; * ------------ ---------- ----------- -------------------------- * May 29, 2013 1650 djohnson Initial creation * Oct 1, 2013 1797 dhladky Updated to work with generic changes + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -55,8 +56,8 @@ public abstract class BaseSharedSubscriptionFixture * @@ -48,8 +49,8 @@ public abstract class BaseSiteSubscriptionFixture * {@inheritDoc} */ @Override - public M getInstance(long seedValue, Random random) { - M subscription = super.getInstance(seedValue, random); + public M getInstance(long seedValue, Random random, DataType dataType) { + M subscription = super.getInstance(seedValue, random, dataType); subscription.setOwner("owner" + random.nextInt()); subscription.setId(RegistryUtil.getRegistryObjectKey(subscription)); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSubscriptionFixture.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSubscriptionFixture.java index 00583e7840..4644d01ec7 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSubscriptionFixture.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/BaseSubscriptionFixture.java @@ -25,7 +25,6 @@ import java.util.Random; import com.raytheon.uf.common.datadelivery.registry.Subscription.SubscriptionPriority; import com.raytheon.uf.common.registry.ebxml.RegistryUtil; import com.raytheon.uf.common.time.util.TimeUtil; -import com.raytheon.uf.common.util.AbstractFixture; /** * Move in reusable code from {@link SiteSubscriptionFixture}. @@ -43,6 +42,7 @@ import com.raytheon.uf.common.util.AbstractFixture; * Apr 08, 2013 1826 djohnson Remove delivery options. * May 15, 2013 1040 mpduff Office Ids are now a list. * Oct 2 2013 1797 dhladky subscription and time generics + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -50,26 +50,53 @@ import com.raytheon.uf.common.util.AbstractFixture; * @version 1.0 */ -public abstract class BaseSubscriptionFixture extends - AbstractFixture { +public abstract class BaseSubscriptionFixture { + private static long DEFAULT_SEED = 1L; /** - * {@inheritDoc} + * Retrieve an instance using the default seed value. + * + * @return the instance */ - @Override - public M getInstance(long seedValue, Random random) { + public final M get(DataType dataType) { + return get(DEFAULT_SEED, dataType); + } + + /** + * Retrieve an instance based on the specified seed value. + * + * @param seedValue + * the seed value + * @return the instance based on the seed value + */ + public final M get(long seedValue, DataType dataType) { + Random random = new Random(seedValue); + + return getInstance(seedValue, random, dataType); + } + + public M getInstance(long seedValue, Random random, DataType dataType) { M subscription = getSubscription(); subscription.setActive(random.nextBoolean()); subscription.setActivePeriodStart(TimeUtil.newDate()); subscription.setActivePeriodEnd(new Date(subscription .getActivePeriodStart().getTime() + seedValue)); - subscription - .setCoverage(GriddedCoverageFixture.INSTANCE.get(seedValue)); - subscription - .setDataSetName(OpenDapGriddedDataSetMetaDataFixture.INSTANCE - .get(seedValue).getDataSetName()); + if (dataType == DataType.GRID) { + subscription.setCoverage(GriddedCoverageFixture.INSTANCE + .get(seedValue)); + subscription + .setDataSetName(OpenDapGriddedDataSetMetaDataFixture.INSTANCE + .get(seedValue).getDataSetName()); + subscription.setDataSetType(DataType.GRID); + subscription.setTime(GriddedTimeFixture.INSTANCE.get(seedValue)); + } else if (dataType == DataType.POINT) { + subscription.setDataSetType(DataType.POINT); + subscription.setCoverage(CoverageFixture.INSTANCE.get(seedValue)); + subscription.setDataSetName(PointDataSetMetaDataFixture.INSTANCE + .get(seedValue).getDataSetName()); + subscription.setTime(PointTimeFixture.INSTANCE.get(seedValue)); + } subscription.setDataSetSize(seedValue); - subscription.setDataSetType(DataType.GRID); subscription.setDeleted(random.nextBoolean()); subscription.setDescription("description" + random.nextInt()); subscription.setFullDataSet(random.nextBoolean()); @@ -85,7 +112,6 @@ public abstract class BaseSubscriptionFixture extends subscription.setSubscriptionStart(subscription.getActivePeriodStart()); subscription.setSubscriptionEnd(null); subscription.setSubscriptionId("subscriptionId" + random.nextInt()); - subscription.setTime(GriddedTimeFixture.INSTANCE.get(seedValue)); subscription.setUrl("http://someurl/" + random.nextInt()); subscription.setId(RegistryUtil.getRegistryObjectKey(subscription)); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/CoverageFixture.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/CoverageFixture.java new file mode 100644 index 0000000000..ee67315de0 --- /dev/null +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/CoverageFixture.java @@ -0,0 +1,69 @@ +/** + * 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.datadelivery.registry; + +import java.util.Random; + +import org.geotools.geometry.jts.ReferencedEnvelope; + +import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.common.util.AbstractFixture; + +/** + * Fixture for {@link Coverage}s. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 21, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class CoverageFixture extends AbstractFixture { + public static final CoverageFixture INSTANCE = new CoverageFixture(); + + /** + * Prevent construction. + */ + private CoverageFixture() { + + } + + /** + * {@inheritDoc} + */ + @Override + public Coverage getInstance(long seedValue, Random random) { + Coverage coverage = new Coverage(); + + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + coverage.setEnvelope(env); + coverage.setRequestEnvelope(env); + return coverage; + } +} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSharedSubscriptionFixture.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSharedSubscriptionFixture.java index 1c058c5f2a..9e81e01196 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSharedSubscriptionFixture.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSharedSubscriptionFixture.java @@ -21,7 +21,6 @@ package com.raytheon.uf.common.datadelivery.registry; import java.util.Random; - /** * Fixture for {@link PendingSharedSubscription} objects. * @@ -32,7 +31,8 @@ import java.util.Random; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * May 29, 2013 1650 djohnson Initial creation - * oct 2, 2013 1797 dhladky Updated to work with generics + * Oct 2, 2013 1797 dhladky Updated to work with generics + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -40,7 +40,8 @@ import java.util.Random; * @version 1.0 */ -public class PendingSharedSubscriptionFixture extends +public class PendingSharedSubscriptionFixture + extends BaseSharedSubscriptionFixture> { public static final PendingSharedSubscriptionFixture INSTANCE = new PendingSharedSubscriptionFixture(); @@ -55,8 +56,10 @@ public class PendingSharedSubscriptionFixture extends * {@inheritDoc} */ @Override - public PendingSharedSubscription getInstance(long seedValue, Random random) { - PendingSharedSubscription sub = super.getInstance(seedValue, random); + public PendingSharedSubscription getInstance( + long seedValue, Random random, DataType dataType) { + PendingSharedSubscription sub = super.getInstance( + seedValue, random, dataType); sub.setChangeReqId("change" + seedValue); return sub; diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSiteSubscriptionFixture.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSiteSubscriptionFixture.java index b173e7f5d6..a4a4694947 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSiteSubscriptionFixture.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSiteSubscriptionFixture.java @@ -35,6 +35,7 @@ import com.raytheon.uf.common.util.AbstractFixture; * ------------ ---------- ----------- -------------------------- * Sep 28, 2012 1187 djohnson Initial creation * Oct 2, 2013 1797 dhladky Generics + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -57,8 +58,10 @@ public class PendingSiteSubscriptionFixture extends * {@inheritDoc} */ @Override - public PendingSiteSubscription getInstance(long seedValue, Random random) { - PendingSiteSubscription sub = super.getInstance(seedValue, random); + public PendingSiteSubscription getInstance(long seedValue, + Random random, DataType dataType) { + PendingSiteSubscription sub = super.getInstance( + seedValue, random, dataType); sub.setChangeReqId("change" + seedValue); return sub; diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSubscriptionTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSubscriptionTest.java index 5c0ec9bd41..a89e719e61 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSubscriptionTest.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/PendingSubscriptionTest.java @@ -35,6 +35,7 @@ import org.junit.Test; * Aug 27, 2012 0743 djohnson Initial creation * Mar 28, 2013 1841 djohnson Subscription is now UserSubscription. * May 15, 2013 1040 mpduff Changed to handle the list of office ids. + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -46,7 +47,8 @@ public class PendingSubscriptionTest { @Test public void testCopyConstructorSetsOriginalSubNameAsName() { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); PendingSiteSubscription pendingSubscription = new PendingSiteSubscription( subscription, "djohnson"); @@ -57,7 +59,8 @@ public class PendingSubscriptionTest { @Test public void testCopyConstructorSetsSubscriptionValuesOnPendingSubscription() { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); PendingSiteSubscription copied = new PendingSiteSubscription( subscription, "djohnson"); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/SiteSubscriptionTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/SiteSubscriptionTest.java index 2df0d8352b..d276a2d0d1 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/SiteSubscriptionTest.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/SiteSubscriptionTest.java @@ -54,6 +54,7 @@ import com.raytheon.uf.common.time.util.TimeUtilTest; * Jan 11, 2013 1453 djohnson Add test for active period crossing year boundary. * Mar 28, 2013 1841 djohnson Subscription is now UserSubscription. * May 15, 2013 1040 mpduff Office Id now a set. + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -78,7 +79,8 @@ public class SiteSubscriptionTest { @Test public void testCopyConstructorSetsSpecifiedName() throws Exception { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); Subscription copied = new SiteSubscription(subscription, "newName"); @@ -89,7 +91,8 @@ public class SiteSubscriptionTest { @Test public void testCopyConstructorSetsValuesFromSourceSubscription() throws Exception { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); Subscription copied = new SiteSubscription(subscription, "newName"); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/registry/SubscriptionBuilder.java b/tests/unit/com/raytheon/uf/common/datadelivery/registry/SubscriptionBuilder.java index c9d151c955..0d1691938a 100644 --- a/tests/unit/com/raytheon/uf/common/datadelivery/registry/SubscriptionBuilder.java +++ b/tests/unit/com/raytheon/uf/common/datadelivery/registry/SubscriptionBuilder.java @@ -39,6 +39,7 @@ import com.raytheon.uf.common.time.util.TimeUtil; * Mar 28, 2013 1841 djohnson Subscription is now UserSubscription. * Apr 08, 2013 1826 djohnson Remove delivery options. * May 15, 2013 1040 mpduff Office Id now a set. + * Oct 21, 2013 2292 mpduff Implement multiple data types * * * @@ -94,11 +95,9 @@ public class SubscriptionBuilder { public SubscriptionBuilder() { } - /** - * {@inheritDoc} - */ public SiteSubscription build() { - SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + SiteSubscription subscription = SiteSubscriptionFixture.INSTANCE + .get(dataType); subscription.setActive(active); subscription.setActivePeriodStart(activePeriodStart); subscription.setActivePeriodEnd(activePeriodEnd); diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridOverlapDataTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridOverlapDataTest.java new file mode 100644 index 0000000000..2f75c63e47 --- /dev/null +++ b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridOverlapDataTest.java @@ -0,0 +1,247 @@ +/** + * 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.datadelivery.service.subscription; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.List; + +import org.geotools.geometry.jts.ReferencedEnvelope; +import org.junit.Test; + +import com.raytheon.uf.common.datadelivery.registry.DataType; +import com.raytheon.uf.common.datadelivery.registry.GriddedCoverage; +import com.raytheon.uf.common.datadelivery.registry.GriddedTime; +import com.raytheon.uf.common.datadelivery.registry.ParameterFixture; +import com.raytheon.uf.common.datadelivery.registry.SiteSubscription; +import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; +import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.edex.datadelivery.service.services.overlap.GridOverlapData; + +/** + * GridOverlapData object test class. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 18, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class GridOverlapDataTest { + private static final GridSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_ALL = new GridSubscriptionOverlapConfig( + 50, 50, 50, 50, SubscriptionOverlapMatchStrategy.MATCH_ALL); + + private static final GridSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_ANY = new GridSubscriptionOverlapConfig( + 50, 50, 50, 50, SubscriptionOverlapMatchStrategy.MATCH_ANY); + + private static final GridSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_HALF = new GridSubscriptionOverlapConfig( + 50, 50, 50, 50, SubscriptionOverlapMatchStrategy.AT_LEAST_HALF); + + /* + * Duplicate subs + */ + + @Test + public void testFiftyPercentMatchAllWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + GridOverlapData od = new GridOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_ALL); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + GridOverlapData od = new GridOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_ANY); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + GridOverlapData od = new GridOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_HALF); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + /* + * Non matching subs + */ + + @Test + public void testFiftyPercentMatchAllWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + GriddedTime time = new GriddedTime(); + time.addCycleTime(0); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ALL); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + GriddedTime time = new GriddedTime(); + time.addCycleTime(0); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ANY); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + GriddedTime time = new GriddedTime(); + time.addCycleTime(0); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_HALF); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + /* + * Half matching subs - match parameter and cycle times + */ + + @Test + public void testFiftyPercentMatchAllWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + GriddedTime time = new GriddedTime((GriddedTime) sub1.getTime()); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ALL); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + GriddedTime time = new GriddedTime((GriddedTime) sub1.getTime()); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ANY); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertTrue("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + GriddedTime time = new GriddedTime((GriddedTime) sub1.getTime()); + List indices = new ArrayList(1); + indices.add(50); + time.setSelectedTimeIndices(indices); + sub2.setTime(time); + + GridOverlapData od = new GridOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_HALF); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + private SiteSubscription getSubscription(int seed) { + SiteSubscription sub = SiteSubscriptionFixture.INSTANCE.get(seed, + DataType.GRID); + ReferencedEnvelope env = new ReferencedEnvelope(0, 15, 0, 15, + MapUtil.LATLON_PROJECTION); + + sub.getCoverage().setRequestEnvelope(env); + return sub; + } +} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapMatchStrategyTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapMatchStrategyTest.java deleted file mode 100644 index 5602cf6ce2..0000000000 --- a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapMatchStrategyTest.java +++ /dev/null @@ -1,129 +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.datadelivery.service.subscription; - -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.AT_LEAST_HALF; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ALL; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ANY; -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; - -import org.junit.Test; - -/** - * Test {@link GridSubscriptionOverlapMatchStrategy}. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 14, 2013 2000       djohnson     Initial creation
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ -public class GridSubscriptionOverlapMatchStrategyTest { - - private static final SubscriptionOverlapConfig MUST_EXCEED_FIFTY_PERCENT = new GridSubscriptionOverlapConfig( - 50, 50, 50, 50, null); - - @Test - public void matchAnyReturnsTrueIfAnyExceedMaxAllowed() { - - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 45, - 45, 45), is(true)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 55, - 45, 45), is(true)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 45, - 55, 45), is(true)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 45, - 45, 55), is(true)); - } - - @Test - public void matchAnyReturnsFalseIfNoneExceedMaxAllowed() { - - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 50, 50, - 50, 50), is(false)); - assertThat( - MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 0, 0, 0, 0), - is(false)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 25, 25, - 25, 25), is(false)); - } - - @Test - public void matchAllReturnsTrueIfAllExceedMaxAllowed() { - - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 55, 55), is(true)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 100, 100, - 100, 100), is(true)); - } - - @Test - public void matchAllReturnsFalseIfNotAllExceedMaxAllowed() { - - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 55, 45), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 45, 55), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 45, - 55, 55), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 55, - 55, 55), is(false)); - } - - @Test - public void atLeastHalfReturnsTrueIfAllExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 55, 55, 55), is(true)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 100, - 100, 100, 100), is(true)); - } - - @Test - public void atLeastHalfReturnsTrueIfHalfExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 45, 55, 55), is(true)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 55, 45, 45), is(true)); - } - - @Test - public void atLeastHalfReturnsFalseIfLessThanHalfExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 45, 45, 55), is(false)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 45, 55, 45), is(false)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 55, 45, 45), is(false)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 45, 45, 45), is(false)); - } - -} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapServiceTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapServiceTest.java deleted file mode 100644 index 66c91a77e3..0000000000 --- a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/GridSubscriptionOverlapServiceTest.java +++ /dev/null @@ -1,232 +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.datadelivery.service.subscription; - -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ALL; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ANY; -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; - -import org.junit.Before; -import org.junit.Test; -import org.opengis.referencing.operation.TransformException; - -import com.raytheon.uf.common.datadelivery.registry.GriddedCoverage; -import com.raytheon.uf.common.datadelivery.registry.GriddedTime; -import com.raytheon.uf.common.datadelivery.registry.Subscription; -import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; -import com.raytheon.uf.common.localization.PathManagerFactoryTest; -import com.raytheon.uf.common.localization.exception.LocalizationException; - -/** - * Test {@link SubscriptionOverlapService}. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 07, 2013 2000       djohnson     Initial creation
- * Oct 2,  2013  1797      dhladky      Some generics
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ - -public class GridSubscriptionOverlapServiceTest { - - private static final SubscriptionOverlapConfig ANY_MUST_EXCEED_65_PERCENT = new GridSubscriptionOverlapConfig( - 65, 65, 65, 65, MATCH_ANY); - - private static final SubscriptionOverlapConfig ALL_MUST_EXCEED_65_PERCENT = new GridSubscriptionOverlapConfig( - 65, 65, 65, 65, MATCH_ALL); - - private final ISubscriptionDuplicateChecker duplicateChecker = mock(ISubscriptionDuplicateChecker.class); - - private final SubscriptionOverlapService service = new SubscriptionOverlapService( - duplicateChecker); - - private final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - - private final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - @Before - public void setUp() { - PathManagerFactoryTest.initLocalization(); - } - - @Test - public void moreParametersInCommonThanAllowedOverlaps() { - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessParametersInCommonThanAllowedDoesNotOverlap() { - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void moreForecastHoursInCommonThanAllowedOverlaps() { - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessForecastHoursInCommonThanAllowedDoesNotOverlap() { - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void moreCyclesInCommonThanAllowedOverlaps() { - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessCyclesInCommonThanAllowedDoesNotOverlap() { - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void moreSpatialInCommonThanAllowedOverlaps() - throws TransformException { - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessSpatialInCommonThanAllowedDoesNotOverlap() - throws TransformException { - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void matchesAnyTrueWillConsiderOneExceededValueAsOverlaps() - throws LocalizationException { - service.writeConfig(ANY_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void matchesAnyFalseWillNotConsiderOneExceededValueAsOverlaps() - throws LocalizationException { - service.writeConfig(ALL_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void matchesAnyTrueWillConsiderAllExceededValuesAsOverlaps() - throws LocalizationException, TransformException { - service.writeConfig(ANY_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void matchesAnyFalseWillConsiderAllExceededValuesAsOverlaps() - throws LocalizationException, TransformException { - service.writeConfig(ALL_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void whenAllComparisonsReturnOneHundredPercentReturnsDuplicate() - throws LocalizationException, TransformException { - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(100); - - assertThat(service.isOverlapping(sub1, sub2).isDuplicate(), is(true)); - } - - @Test - public void whenAllComparisonsDontReturnOneHundredPercentReturnsNotDuplicate() - throws LocalizationException, TransformException { - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getForecastHourDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(99); - - assertThat(service.isOverlapping(sub1, sub2).isDuplicate(), is(false)); - } - -} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointOverlapDataTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointOverlapDataTest.java new file mode 100644 index 0000000000..6e55955cd7 --- /dev/null +++ b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointOverlapDataTest.java @@ -0,0 +1,202 @@ +package com.raytheon.uf.common.datadelivery.service.subscription; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import org.geotools.geometry.jts.ReferencedEnvelope; +import org.junit.Test; + +import com.raytheon.uf.common.datadelivery.registry.Coverage; +import com.raytheon.uf.common.datadelivery.registry.DataType; +import com.raytheon.uf.common.datadelivery.registry.ParameterFixture; +import com.raytheon.uf.common.datadelivery.registry.PointTime; +import com.raytheon.uf.common.datadelivery.registry.SiteSubscription; +import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; +import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.edex.datadelivery.service.services.overlap.PointOverlapData; + +/** + * PointOverlapData object test class. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 18, 2013   2292     mpduff      Initial creation
+ * 
+ * 
+ * + * @author mpduff + * @version 1.0 + */ + +public class PointOverlapDataTest { + private static final PointSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_ALL = new PointSubscriptionOverlapConfig( + 50, 50, 50, SubscriptionOverlapMatchStrategy.MATCH_ALL); + + private static final PointSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_ANY = new PointSubscriptionOverlapConfig( + 50, 50, 50, SubscriptionOverlapMatchStrategy.MATCH_ANY); + + private static final PointSubscriptionOverlapConfig FIFTY_PERCENT_MATCH_HALF = new PointSubscriptionOverlapConfig( + 50, 50, 50, SubscriptionOverlapMatchStrategy.AT_LEAST_HALF); + + /* + * Duplicate subs + */ + + @Test + public void testFiftyPercentMatchAllWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + PointOverlapData od = new PointOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_ALL); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + PointOverlapData od = new PointOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_ALL); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithDuplicates() { + SiteSubscription dupeSub1 = getSubscription(1); + SiteSubscription dupeSub2 = new SiteSubscription(dupeSub1); + dupeSub2.getCoverage().setRequestEnvelope( + dupeSub1.getCoverage().getRequestEnvelope()); + PointOverlapData od = new PointOverlapData( + dupeSub1, dupeSub2, FIFTY_PERCENT_MATCH_ALL); + assertTrue("These should be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + /* + * Non matching subs + */ + + @Test + public void testFiftyPercentMatchAllWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + PointTime time = new PointTime(); + time.setInterval(100); + sub2.setTime(time); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ALL); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + PointTime time = new PointTime(); + time.setInterval(100); + sub2.setTime(time); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ANY); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithNoMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + sub2.getParameter().clear(); + sub2.addParameter(ParameterFixture.INSTANCE.get(4)); + PointTime time = new PointTime(); + time.setInterval(100); + sub2.setTime(time); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_HALF); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + /* + * Half matching subs - match parameter and interval + */ + + @Test + public void testFiftyPercentMatchAllWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ALL); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertFalse("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchAnyWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_ANY); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertTrue("These should not overlap", od.isOverlapping()); + } + + @Test + public void testFiftyPercentMatchHalfWithHalfMatches() { + SiteSubscription sub1 = getSubscription(1); + SiteSubscription sub2 = getSubscription(2); + ReferencedEnvelope env = new ReferencedEnvelope(20, 25, 20, 25, + MapUtil.LATLON_PROJECTION); + sub2.getCoverage().setRequestEnvelope(env); + + PointOverlapData od = new PointOverlapData( + sub1, sub2, FIFTY_PERCENT_MATCH_HALF); + assertFalse("These should not be duplicates", od.isDuplicate()); + assertTrue("These should overlap", od.isOverlapping()); + } + + private SiteSubscription getSubscription(int seed) { + SiteSubscription sub = SiteSubscriptionFixture.INSTANCE.get(seed, + DataType.POINT); + ReferencedEnvelope env = new ReferencedEnvelope(0, 15, 0, 15, + MapUtil.LATLON_PROJECTION); + + sub.getCoverage().setRequestEnvelope(env); + return sub; + } + +} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapMatchStrategyTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapMatchStrategyTest.java deleted file mode 100644 index 3f3c4d202e..0000000000 --- a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapMatchStrategyTest.java +++ /dev/null @@ -1,128 +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.datadelivery.service.subscription; - -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.AT_LEAST_HALF; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ALL; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ANY; -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; - -import org.junit.Test; - -/** - * Test {@link PointSubscriptionOverlapMatchStrategy}. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 14, 2013 2000       djohnson     Initial creation
- * Sept 24, 2012 2386      dhladky      Made point specific
- * Sept 25, 2013 1797      dhladky      fixed test
- * 
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ -public class PointSubscriptionOverlapMatchStrategyTest { - - private static final SubscriptionOverlapConfig MUST_EXCEED_FIFTY_PERCENT = new PointSubscriptionOverlapConfig( - 50, 50, 50, 50, null); - - @Test - public void matchAnyReturnsTrueIfAnyExceedMaxAllowed() { - - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 45, - 45, 45), is(true)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 55, - 45, 45), is(true)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 45, - 45, 55), is(true)); - } - - @Test - public void matchAnyReturnsFalseIfNoneExceedMaxAllowed() { - - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 50, 50, - 50, 50), is(false)); - assertThat( - MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 0, 0, 0, 0), - is(false)); - assertThat(MATCH_ANY.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 25, 25, - 25, 25), is(false)); - } - - @Test - public void matchAllReturnsTrueIfAllExceedMaxAllowed() { - - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 55, 55), is(true)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 100, 100, - 100, 100), is(true)); - } - - @Test - public void matchAllReturnsFalseIfNotAllExceedMaxAllowed() { - - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 55, 45), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 55, - 45, 55), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, 45, - 55, 55), is(false)); - assertThat(MATCH_ALL.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, 55, - 55, 55), is(false)); - } - - @Test - public void atLeastHalfReturnsTrueIfAllExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 55, 55, 55), is(true)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 100, - 100, 100, 100), is(true)); - } - - @Test - public void atLeastHalfReturnsTrueIfHalfExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 45, 55, 55), is(true)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 55, 45, 45), is(true)); - } - - @Test - public void atLeastHalfReturnsFalseIfLessThanHalfExceedMaxAllowed() { - - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 45, 55, 45), is(false)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 45, - 55, 45, 45), is(false)); - assertThat(AT_LEAST_HALF.isOverlapping(MUST_EXCEED_FIFTY_PERCENT, 55, - 45, 45, 45), is(false)); - } - -} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapServiceTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapServiceTest.java deleted file mode 100644 index a1662967b0..0000000000 --- a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/PointSubscriptionOverlapServiceTest.java +++ /dev/null @@ -1,207 +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.datadelivery.service.subscription; - -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ALL; -import static com.raytheon.uf.common.datadelivery.service.subscription.SubscriptionOverlapMatchStrategy.MATCH_ANY; -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; - -import org.junit.Before; -import org.junit.Test; -import org.opengis.referencing.operation.TransformException; - -import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; -import com.raytheon.uf.common.datadelivery.registry.Subscription; -import com.raytheon.uf.common.localization.PathManagerFactoryTest; -import com.raytheon.uf.common.localization.exception.LocalizationException; - -/** - * Test {@link PointSubscriptionOverlapService}. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 07, 2013 2000       djohnson     Initial creation
- * Sept, 24 2013 2386      dhladky      Made point specific
- * Sept 25, 2013 1797      dhladky      fixed tests
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ - -public class PointSubscriptionOverlapServiceTest { - - private static final SubscriptionOverlapConfig ANY_MUST_EXCEED_65_PERCENT = new PointSubscriptionOverlapConfig( - 65, 65, 65, 65, MATCH_ANY); - - private static final SubscriptionOverlapConfig ALL_MUST_EXCEED_65_PERCENT = new PointSubscriptionOverlapConfig( - 65, 65, 65, 65, MATCH_ALL); - - private final ISubscriptionDuplicateChecker duplicateChecker = mock(ISubscriptionDuplicateChecker.class); - - private final SubscriptionOverlapService service = new SubscriptionOverlapService( - duplicateChecker); - - private final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - - private final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - @Before - public void setUp() { - PathManagerFactoryTest.initLocalization(); - } - - @Test - public void moreParametersInCommonThanAllowedOverlaps() { - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessParametersInCommonThanAllowedDoesNotOverlap() { - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void moreTimeInCommonThanAllowedOverlaps() { - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessTimeInCommonThanAllowedDoesNotOverlap() { - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void moreSpatialInCommonThanAllowedOverlaps() - throws TransformException { - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void lessSpatialInCommonThanAllowedDoesNotOverlap() - throws TransformException { - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(64); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void matchesAnyTrueWillConsiderOneExceededValueAsOverlaps() - throws LocalizationException { - service.writeConfig(ANY_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void matchesAnyFalseWillNotConsiderOneExceededValueAsOverlaps() - throws LocalizationException { - service.writeConfig(ALL_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getCycleDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(false)); - } - - @Test - public void matchesAnyTrueWillConsiderAllExceededValuesAsOverlaps() - throws LocalizationException, TransformException { - service.writeConfig(ANY_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void matchesAnyFalseWillConsiderAllExceededValuesAsOverlaps() - throws LocalizationException, TransformException { - service.writeConfig(ALL_MUST_EXCEED_65_PERCENT); - - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(66); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(66); - - assertThat(service.isOverlapping(sub1, sub2).isOverlapping(), is(true)); - } - - @Test - public void whenAllComparisonsReturnOneHundredPercentReturnsDuplicate() - throws LocalizationException, TransformException { - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(100); - - assertThat(service.isOverlapping(sub1, sub2).isDuplicate(), is(true)); - } - - @Test - public void whenAllComparisonsDontReturnOneHundredPercentReturnsNotDuplicate() - throws LocalizationException, TransformException { - when(duplicateChecker.getTimeDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getParameterDuplicationPercent(sub1, sub2)) - .thenReturn(100); - when(duplicateChecker.getSpatialDuplicationPercent(sub1, sub2)) - .thenReturn(99); - - assertThat(service.isOverlapping(sub1, sub2).isDuplicate(), is(false)); - } - -} diff --git a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateCheckerTest.java b/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateCheckerTest.java deleted file mode 100644 index 8e5887d5da..0000000000 --- a/tests/unit/com/raytheon/uf/common/datadelivery/service/subscription/SubscriptionDuplicateCheckerTest.java +++ /dev/null @@ -1,237 +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.datadelivery.service.subscription; - -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.geotools.geometry.jts.ReferencedEnvelope; -import org.junit.Test; -import org.opengis.referencing.operation.TransformException; - -import com.raytheon.uf.common.datadelivery.registry.GriddedCoverage; -import com.raytheon.uf.common.datadelivery.registry.GriddedTime; -import com.raytheon.uf.common.datadelivery.registry.Parameter; -import com.raytheon.uf.common.datadelivery.registry.ParameterFixture; -import com.raytheon.uf.common.datadelivery.registry.SiteSubscription; -import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; -import com.raytheon.uf.common.geospatial.MapUtil; -import com.vividsolutions.jts.geom.Coordinate; -import com.vividsolutions.jts.geom.Envelope; - -/** - * TesT {@link SubscriptionDuplicateChecker}. - * - *
- * 
- * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 02, 2013 2000       djohnson     Initial creation
- * Sept 25, 2013 1979      dhladky      separated time from gridded time
- * 
- * 
- * - * @author djohnson - * @version 1.0 - */ -public class SubscriptionDuplicateCheckerTest { - - private static final ISubscriptionDuplicateChecker dupeChecker = new SubscriptionDuplicateChecker(); - - @Test - public void returnsPercentOfParametersThatAreTheSame() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - sub1.getParameter().clear(); - sub1.addParameter(ParameterFixture.INSTANCE.get(1)); - - sub2.getParameter().clear(); - sub2.addParameter((Parameter)sub1.getParameter().iterator().next()); - sub2.addParameter(ParameterFixture.INSTANCE.get(2)); - - assertThat(dupeChecker.getParameterDuplicationPercent(sub1, sub2), - is(50)); - assertThat(dupeChecker.getParameterDuplicationPercent(sub2, sub1), - is(100)); - } - - @SuppressWarnings("unchecked") - @Test - public void returnsZeroPercentOfParametersForNullsOrEmpties() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - sub1.setParameter(null); - - sub2.getParameter().clear(); - sub2.addParameter(ParameterFixture.INSTANCE.get(2)); - - assertThat(dupeChecker.getParameterDuplicationPercent(sub1, sub2), - is(0)); - assertThat(dupeChecker.getParameterDuplicationPercent(sub2, sub1), - is(0)); - - sub1.setParameter(Collections. emptyList()); - assertThat(dupeChecker.getParameterDuplicationPercent(sub1, sub2), - is(0)); - assertThat(dupeChecker.getParameterDuplicationPercent(sub2, sub1), - is(0)); - } - - @Test - public void returnsPercentOfForecastHoursThatAreTheSame() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - final List sub1SelectedTimes = Arrays.asList(0, 1); - ((GriddedTime)sub1.getTime()).setSelectedTimeIndices(sub1SelectedTimes); - final List sub2SelectedTimes = Arrays.asList(0, 3, 4); - ((GriddedTime)sub2.getTime()).setSelectedTimeIndices(sub2SelectedTimes); - - assertThat(dupeChecker.getTimeDuplicationPercent(sub1, sub2), - is(33)); - assertThat(dupeChecker.getTimeDuplicationPercent(sub2, sub1), - is(50)); - } - - @Test - public void returnsZeroPercentOfForecastHoursForNullsOrEmpties() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - ((GriddedTime)sub1.getTime()).setSelectedTimeIndices(null); - final List sub2SelectedTimes = Arrays.asList(0, 3, 4); - ((GriddedTime)sub2.getTime()).setSelectedTimeIndices(sub2SelectedTimes); - - assertThat(dupeChecker.getForecastHourDuplicationPercent(sub1, sub2), - is(0)); - assertThat(dupeChecker.getForecastHourDuplicationPercent(sub2, sub1), - is(0)); - - ((GriddedTime)sub1.getTime()) - .setSelectedTimeIndices(Collections. emptyList()); - assertThat(dupeChecker.getForecastHourDuplicationPercent(sub1, sub2), - is(0)); - assertThat(dupeChecker.getForecastHourDuplicationPercent(sub2, sub1), - is(0)); - } - - @Test - public void returnsPercentOfCyclesThatAreTheSame() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - final List sub1CycleTimes = Arrays.asList(0, 6); - ((GriddedTime)sub1.getTime()).setCycleTimes(sub1CycleTimes); - final List sub2CycleTimes = Arrays.asList(0, 12, 18); - ((GriddedTime)sub2.getTime()).setCycleTimes(sub2CycleTimes); - - assertThat(dupeChecker.getCycleDuplicationPercent(sub1, sub2), - is(33)); - assertThat(dupeChecker.getCycleDuplicationPercent(sub2, sub1), - is(50)); - } - - @Test - public void returnsZeroPercentOfCyclesForNullsOrEmpties() { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - ((GriddedTime)sub1.getTime()).setCycleTimes(null); - final List cycleTimes = Arrays.asList(0, 3, 4); - ((GriddedTime)sub2.getTime()).setCycleTimes(cycleTimes); - - assertThat(dupeChecker.getCycleDuplicationPercent(sub1, sub2), is(0)); - assertThat(dupeChecker.getCycleDuplicationPercent(sub2, sub1), is(0)); - - ((GriddedTime)sub1.getTime()).setCycleTimes(Collections. emptyList()); - assertThat(dupeChecker.getCycleDuplicationPercent(sub1, sub2), is(0)); - assertThat(dupeChecker.getCycleDuplicationPercent(sub2, sub1), is(0)); - } - - @Test - public void returnsPercentOfSpatialThatIsTheSame() - throws TransformException { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - ReferencedEnvelope envelope1 = new ReferencedEnvelope(new Envelope( - new Coordinate(-5, 0), new Coordinate(0, 5)), - MapUtil.LATLON_PROJECTION); - - // dx = 6, dy = 3, area = 18 - ReferencedEnvelope envelope2 = new ReferencedEnvelope(new Envelope( - new Coordinate(-3, 3), new Coordinate(3, 6)), - MapUtil.LATLON_PROJECTION); - - // The intersection should have coordinates: (-3, 3) (0, 5) - // dx = 3, dy = 2, area = 6 - - sub1.getCoverage().setRequestEnvelope(envelope1); - sub2.getCoverage().setRequestEnvelope(envelope2); - - // The expected percent overlap: 6 / 18 = .33 - assertThat(dupeChecker.getSpatialDuplicationPercent(sub1, sub2), is(33)); - } - - @Test - public void returnsZeroPercentOfSpatialWhenNoOverlap() - throws TransformException { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - ReferencedEnvelope envelope1 = new ReferencedEnvelope(new Envelope( - new Coordinate(-5, 0), new Coordinate(0, 5)), - MapUtil.LATLON_PROJECTION); - - ReferencedEnvelope envelope2 = new ReferencedEnvelope(new Envelope( - new Coordinate(-10, -20), new Coordinate(-6, -15)), - MapUtil.LATLON_PROJECTION); - - sub1.getCoverage().setRequestEnvelope(envelope1); - sub2.getCoverage().setRequestEnvelope(envelope2); - - assertThat(dupeChecker.getSpatialDuplicationPercent(sub1, sub2), is(0)); - } - - @Test - public void returnsZeroPercentOfSpatialForNulls() throws TransformException { - final SiteSubscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); - final SiteSubscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); - - sub1.setCoverage(null); - - assertThat(dupeChecker.getSpatialDuplicationPercent(sub1, sub2), is(0)); - assertThat(dupeChecker.getSpatialDuplicationPercent(sub2, sub1), is(0)); - - // No envelope set - sub1.setCoverage(new GriddedCoverage()); - assertThat(dupeChecker.getSpatialDuplicationPercent(sub1, sub2), is(0)); - assertThat(dupeChecker.getSpatialDuplicationPercent(sub2, sub1), is(0)); - } - -} diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthDaoTest.java b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthDaoTest.java index ac41df9323..e28e7db08c 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthDaoTest.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/AbstractBandwidthDaoTest.java @@ -42,6 +42,7 @@ import org.junit.Test; import com.google.common.collect.Lists; import com.raytheon.uf.common.datadelivery.registry.Coverage; import com.raytheon.uf.common.datadelivery.registry.DataSetMetaData; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.Network; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSetMetaData; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSetMetaDataFixture; @@ -75,6 +76,7 @@ import com.raytheon.uf.edex.datadelivery.bandwidth.util.BandwidthUtil; * ------------ ---------- ----------- -------------------------- * Nov 12, 2012 1286 djohnson Initial creation * Jun 03, 2013 2038 djohnson Add test getting retrievals by dataset, provider, and status. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -326,9 +328,9 @@ public abstract class AbstractBandwidthDaoTest results = dao.getBandwidthSubscriptions(); assertEquals(1, results.size()); @@ -515,15 +514,15 @@ public abstract class AbstractBandwidthDaoTest results = dao.getBandwidthSubscriptions( entity3.getProvider(), entity3.getDataSetName(), three); @@ -538,7 +537,6 @@ public abstract class AbstractBandwidthDaoTest results = dao .querySubscriptionRetrievals(entity2.getSubscriptionRetrieval() - .getBandwidthSubscription() - .getId()); + .getBandwidthSubscription().getId()); assertEquals( "Should have returned one entity for the subscriptionDao id!", 1, results.size()); @@ -592,15 +589,11 @@ public abstract class AbstractBandwidthDaoTest * * @author djohnson @@ -60,7 +61,8 @@ public class SubscriptionDaoFixture extends */ @Override public BandwidthSubscription getInstance(long seedValue, Random random) { - Subscription sub = SiteSubscriptionFixture.INSTANCE.get(seedValue); + Subscription sub = SiteSubscriptionFixture.INSTANCE.get(seedValue, + DataType.GRID); return BandwidthUtil.getSubscriptionDaoForSubscription(sub, BandwidthUtil.now()); } diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/dao/SubscriptionRetrievalAttributesFixture.java b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/dao/SubscriptionRetrievalAttributesFixture.java index 3229803859..75abe64c7e 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/dao/SubscriptionRetrievalAttributesFixture.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/dao/SubscriptionRetrievalAttributesFixture.java @@ -21,6 +21,7 @@ package com.raytheon.uf.edex.datadelivery.bandwidth.dao; import java.util.Random; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.util.AbstractFixture; @@ -35,6 +36,7 @@ import com.raytheon.uf.common.util.AbstractFixture; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 11, 2013 2106 djohnson Initial creation + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -66,8 +68,8 @@ public class SubscriptionRetrievalAttributesFixture extends SubscriptionRetrievalAttributes entity = new SubscriptionRetrievalAttributes(); entity.setSubscriptionRetrieval(retrieval); try { - entity.setSubscription(SiteSubscriptionFixture.INSTANCE - .get(seedValue)); + entity.setSubscription(SiteSubscriptionFixture.INSTANCE.get( + seedValue, DataType.GRID)); } catch (SerializationException e) { throw new RuntimeException(e); } diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/hibernate/HibernateBandwidthInitializerTest.java b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/hibernate/HibernateBandwidthInitializerTest.java index a129dad4b0..8aeb5f9537 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/hibernate/HibernateBandwidthInitializerTest.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/bandwidth/hibernate/HibernateBandwidthInitializerTest.java @@ -27,6 +27,7 @@ import org.junit.Before; import org.junit.Test; import com.google.common.collect.Sets; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.edex.core.props.EnvAttributePropertyInjector; @@ -47,6 +48,7 @@ import com.raytheon.uf.edex.datadelivery.bandwidth.retrieval.RetrievalManager; * Apr 18, 2013 1914 djohnson Fix broken test. * Jun 25, 2013 2106 djohnson init() now takes a {@link RetrievalManager}. * Sep 06, 2013 2344 bgonzale Added property injection of valid test value. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -65,7 +67,8 @@ public class HibernateBandwidthInitializerTest { @Test public void testSchedulesAllSubscriptionReturnedFromIFindSubscriptions() throws Exception { - final Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); + final Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); subscription.addOfficeID("OAX"); IFindSubscriptionsForScheduling strategy = mock(IFindSubscriptionsForScheduling.class); @@ -75,7 +78,8 @@ public class HibernateBandwidthInitializerTest { IBandwidthManager bandwidthManager = mock(IBandwidthManager.class); IBandwidthDbInit dbInit = mock(IBandwidthDbInit.class); - final HibernateBandwidthInitializer initializer = new HibernateBandwidthInitializer(strategy); + final HibernateBandwidthInitializer initializer = new HibernateBandwidthInitializer( + strategy); initializer .init(bandwidthManager, dbInit, mock(RetrievalManager.class)); initializer.executeAfterRegistryInit(); diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/retrieval/handlers/RetrievalRequestRecordFixture.java b/tests/unit/com/raytheon/uf/edex/datadelivery/retrieval/handlers/RetrievalRequestRecordFixture.java index 96e4eae863..7e2f8967d1 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/retrieval/handlers/RetrievalRequestRecordFixture.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/retrieval/handlers/RetrievalRequestRecordFixture.java @@ -21,6 +21,7 @@ package com.raytheon.uf.edex.datadelivery.retrieval.handlers; import java.util.Random; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.GriddedCoverageFixture; import com.raytheon.uf.common.datadelivery.registry.Provider; import com.raytheon.uf.common.datadelivery.registry.ProviderFixture; @@ -51,6 +52,7 @@ import com.raytheon.uf.edex.datadelivery.retrieval.opendap.MockOpenDapServiceFac * Jan 30, 2013 1543 djohnson Initial creation * Feb 15, 2013 1543 djohnson Set coverage on retrieval attributes. * Jul 11, 2013 2106 djohnson Use SubscriptionPriority enum. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -74,7 +76,8 @@ public class RetrievalRequestRecordFixture extends */ @Override public RetrievalRequestRecord getInstance(long seedValue, Random random) { - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(seedValue); + Subscription subscription = SiteSubscriptionFixture.INSTANCE.get( + seedValue, DataType.GRID); final Provider provider = ProviderFixture.INSTANCE.get(seedValue); SubscriptionBundle bundle = new SubscriptionBundle(); @@ -114,5 +117,4 @@ public class RetrievalRequestRecordFixture extends return rec; } - } diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/BaseSubscriptionVerifierTest.java b/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/BaseSubscriptionVerifierTest.java index c8132d0cfd..f697357992 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/BaseSubscriptionVerifierTest.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/BaseSubscriptionVerifierTest.java @@ -28,12 +28,13 @@ import java.util.Map; import org.junit.Before; import org.junit.Test; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSet; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSetFixture; import com.raytheon.uf.common.datadelivery.registry.Parameter; import com.raytheon.uf.common.datadelivery.registry.ParameterFixture; -import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; +import com.raytheon.uf.common.datadelivery.registry.Subscription; /** * Test {@link BaseSubscriptionVerifier}. @@ -45,6 +46,7 @@ import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Dec 10, 2012 1104 djohnson Initial creation + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -60,8 +62,7 @@ public class BaseSubscriptionVerifierTest { .get(); private final Subscription subscription = SiteSubscriptionFixture.INSTANCE - .get(); - + .get(DataType.GRID); @Before public void setUp() { diff --git a/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/SubscriptionIntegrityVerifierTest.java b/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/SubscriptionIntegrityVerifierTest.java index eb36d240b8..1c816b729c 100644 --- a/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/SubscriptionIntegrityVerifierTest.java +++ b/tests/unit/com/raytheon/uf/edex/datadelivery/service/verify/SubscriptionIntegrityVerifierTest.java @@ -36,9 +36,10 @@ import org.junit.Test; import com.raytheon.uf.common.datadelivery.registry.DataDeliveryRegistryObjectTypes; import com.raytheon.uf.common.datadelivery.registry.DataSet; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSet; -import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; +import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; import com.raytheon.uf.common.event.EventBus; @@ -60,6 +61,7 @@ import com.raytheon.uf.edex.datadelivery.service.verify.SubscriptionIntegrityVer * ------------ ---------- ----------- -------------------------- * Dec 07, 2012 1104 djohnson Initial creation * Feb 05, 2013 1580 mpduff EventBus refactor. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -72,9 +74,11 @@ public class SubscriptionIntegrityVerifierTest { private final OpenDapGriddedDataSet dataSet = new OpenDapGriddedDataSet(); - private final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); + private final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1, + DataType.GRID); - private final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); + private final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2, + DataType.GRID); private final List subscriptions = Arrays.asList(sub1, sub2); diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceSingleSubscriptionTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceSingleSubscriptionTest.java index e5d83d74e4..594f665cbc 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceSingleSubscriptionTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceSingleSubscriptionTest.java @@ -30,7 +30,6 @@ import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandler import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; import com.raytheon.uf.common.registry.handler.RegistryObjectHandlersUtil; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.ForceApplyPromptResponse; /** @@ -107,8 +106,7 @@ public abstract class AbstractSubscriptionServiceSingleSubscriptionTest extends returnZeroSubscriptionNamesWhenScheduleCalled(); String expectedMessage = getSuccessfulServiceInteractionMessage(); - String actualMessage = performServiceInteraction() - .getMessageToDisplay(); + String actualMessage = performServiceInteraction().getMessage(); assertEquals("Incorrect message returned", expectedMessage, actualMessage); @@ -125,7 +123,7 @@ public abstract class AbstractSubscriptionServiceSingleSubscriptionTest extends whenForceApplyPromptedUserSelectsIncreaseLatency(); returnZeroSubscriptionNamesWhenScheduleCalled(); - ISubscriptionServiceResult result = performServiceInteraction(); + SubscriptionServiceResult result = performServiceInteraction(); assertFalse("No further edits should be requested", result.isAllowFurtherEditing()); } @@ -134,8 +132,7 @@ public abstract class AbstractSubscriptionServiceSingleSubscriptionTest extends * When the force apply prompt is displayed, the user selects yes. */ private void whenForceApplyPromptedUserSelectsIncreaseLatency() { - when(mockDisplay.getForceApplyPromptResponse()) - .thenReturn( + when(mockDisplay.getForceApplyPromptResponse()).thenReturn( ForceApplyPromptResponse.INCREASE_LATENCY); } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceTest.java index 299c3f7347..270a9c57fe 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/AbstractSubscriptionServiceTest.java @@ -48,17 +48,16 @@ import com.raytheon.uf.common.datadelivery.bandwidth.IBandwidthService; import com.raytheon.uf.common.datadelivery.bandwidth.IProposeScheduleResponse; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscription; import com.raytheon.uf.common.datadelivery.registry.AdhocSubscriptionFixture; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; import com.raytheon.uf.common.datadelivery.service.ISubscriptionNotificationService; import com.raytheon.uf.common.datadelivery.service.subscription.ISubscriptionOverlapService; -import com.raytheon.uf.common.datadelivery.service.subscription.ISubscriptionOverlapService.ISubscriptionOverlapResponse; import com.raytheon.uf.common.localization.PathManagerFactoryTest; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; import com.raytheon.uf.common.registry.handler.RegistryObjectHandlersUtil; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.ForceApplyPromptResponse; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IDisplayForceApplyPrompt; import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceApplyPromptDisplayText; @@ -79,6 +78,7 @@ import com.raytheon.uf.viz.datadelivery.subscription.SubscriptionService.IForceA * Jan 02, 2012 1345 djohnson Fix broken tests from using VizApp to move work off the UI thread. * May 08, 2000 2013 djohnson Allow checks for duplicate subscriptions. * Jul 26, 2031 2232 mpduff Refactored Data Delivery permissions. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -92,13 +92,16 @@ public abstract class AbstractSubscriptionServiceTest { protected static final long REQUIRED_DATASET_SIZE = 1024l; - final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1); + final Subscription sub1 = SiteSubscriptionFixture.INSTANCE.get(1, + DataType.GRID); - final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2); + final Subscription sub2 = SiteSubscriptionFixture.INSTANCE.get(2, + DataType.GRID); final List subs = Arrays.asList(sub1, sub2); - final AdhocSubscription adhoc = AdhocSubscriptionFixture.INSTANCE.get(); + final AdhocSubscription adhoc = AdhocSubscriptionFixture.INSTANCE + .get(DataType.GRID); final String sub1Name = sub1.getName(); @@ -122,7 +125,7 @@ public abstract class AbstractSubscriptionServiceTest { final SubscriptionService service = new SubscriptionService( notificationService, mockBandwidthService, permissionsService, - subscriptionOverlapService, mockDisplay); + mockDisplay); final IProposeScheduleResponse mockProposeScheduleResponse = mock(IProposeScheduleResponse.class); @@ -140,14 +143,6 @@ public abstract class AbstractSubscriptionServiceTest { when(mockBandwidthService.proposeSchedule(any(Subscription.class))) .thenReturn(mockProposeScheduleResponse); - // By default all tests will not find duplicate/overlapping - // subscriptions - final ISubscriptionOverlapResponse response = mock(ISubscriptionOverlapResponse.class); - when( - subscriptionOverlapService.isOverlapping( - any(Subscription.class), any(Subscription.class))) - .thenReturn(response); - setupForceApplyPromptDisplayTextValues(); } @@ -196,7 +191,7 @@ public abstract class AbstractSubscriptionServiceTest { throws RegistryHandlerException { returnZeroSubscriptionNamesWhenProposeScheduleCalled(); - String message = performServiceInteraction().getMessageToDisplay(); + String message = performServiceInteraction().getMessage(); assertEquals("Incorrect response message returned!", getSuccessfulServiceInteractionMessage(), message); @@ -271,8 +266,7 @@ public abstract class AbstractSubscriptionServiceTest { returnSub2NameWhenScheduleCalled(); String expectedMessage = getExpectedSuccessfulForceApplyMessageWithSub2Unscheduled(); - String actualMessage = performServiceInteraction() - .getMessageToDisplay(); + String actualMessage = performServiceInteraction().getMessage(); assertEquals("Incorrect message returned", expectedMessage, actualMessage); @@ -289,7 +283,7 @@ public abstract class AbstractSubscriptionServiceTest { whenForceApplyPromptedUserSelectsForceApply(); returnSub2NameWhenScheduleCalled(); - ISubscriptionServiceResult result = performServiceInteraction(); + SubscriptionServiceResult result = performServiceInteraction(); assertFalse("No further edits should be requested", result.isAllowFurtherEditing()); } @@ -324,7 +318,7 @@ public abstract class AbstractSubscriptionServiceTest { returnTwoSubscriptionNamesWhenProposeScheduleCalled(); whenForceApplyPromptedUserSelectsCancel(); - final ISubscriptionServiceResult result = performServiceInteraction(); + final SubscriptionServiceResult result = performServiceInteraction(); assertTrue("The service should request that further edits be made", result.isAllowFurtherEditing()); @@ -419,7 +413,7 @@ public abstract class AbstractSubscriptionServiceTest { * @return the response * @throws RegistryHandlerException */ - abstract ISubscriptionServiceResult performServiceInteraction() + abstract SubscriptionServiceResult performServiceInteraction() throws RegistryHandlerException; /** diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceMassUpdateTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceMassUpdateTest.java index 9ee9619227..2e915f17f8 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceMassUpdateTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceMassUpdateTest.java @@ -47,7 +47,6 @@ import com.raytheon.uf.common.registry.handler.RegistryHandlerException; import com.raytheon.uf.common.registry.handler.RegistryObjectHandlersUtil; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.viz.core.exception.VizException; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; /** * Test @@ -117,13 +116,13 @@ public class SubscriptionServiceMassUpdateTest extends subscriptionAlreadyHasPendingChanges(sub1); - final ISubscriptionServiceResult response = service + final SubscriptionServiceResult response = service .updateWithPendingCheck(subs, mockPromptDisplayText); final String expectedMessage = "The subscriptions have been updated.\n\nThe following subscriptions already had pending changes and were not modified:\n" + sub1.getName(); - assertThat(response.getMessageToDisplay(), is(equalTo(expectedMessage))); + assertThat(response.getMessage(), is(equalTo(expectedMessage))); } @Test @@ -135,13 +134,13 @@ public class SubscriptionServiceMassUpdateTest extends subscriptionThrowsErrorOnUpdate(sub2); - final ISubscriptionServiceResult response = service + final SubscriptionServiceResult response = service .updateWithPendingCheck(subs, mockPromptDisplayText); final String expectedMessage = "The subscriptions have been updated.\n\nThe following subscriptions were unable to be modified:\n" + sub2.getName(); - assertThat(response.getMessageToDisplay(), is(equalTo(expectedMessage))); + assertThat(response.getMessage(), is(equalTo(expectedMessage))); } @Test @@ -153,13 +152,13 @@ public class SubscriptionServiceMassUpdateTest extends subscriptionCantBeChangedByUser(sub2); - final ISubscriptionServiceResult response = service + final SubscriptionServiceResult response = service .updateWithPendingCheck(subs, mockPromptDisplayText); final String expectedMessage = "The subscriptions have been updated.\n\nThe following subscriptions have pending changes awaiting approval:\n" + sub2.getName(); - assertThat(response.getMessageToDisplay(), is(equalTo(expectedMessage))); + assertThat(response.getMessage(), is(equalTo(expectedMessage))); } /** @@ -200,7 +199,7 @@ public class SubscriptionServiceMassUpdateTest extends * {@inheritDoc} */ @Override - ISubscriptionServiceResult performServiceInteraction() + SubscriptionServiceResult performServiceInteraction() throws RegistryHandlerException { return service.update(subs, mockPromptDisplayText); } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreAdhocTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreAdhocTest.java index 63a9353e6e..4c2e7fcde4 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreAdhocTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreAdhocTest.java @@ -32,7 +32,6 @@ import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandler import com.raytheon.uf.common.datadelivery.registry.handlers.ISubscriptionHandler; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; import com.raytheon.uf.common.util.CollectionUtil; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; /** * Test @@ -63,7 +62,7 @@ public class SubscriptionServiceStoreAdhocTest extends * {@inheritDoc} */ @Override - ISubscriptionServiceResult performServiceInteraction() + SubscriptionServiceResult performServiceInteraction() throws RegistryHandlerException { return service.store(adhoc, mockPromptDisplayText); } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreTest.java index f63e31f167..e5065d0387 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceStoreTest.java @@ -31,7 +31,6 @@ import com.raytheon.uf.common.datadelivery.registry.Subscription; import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; import com.raytheon.uf.common.util.CollectionUtil; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; /** * Test @@ -66,7 +65,7 @@ public class SubscriptionServiceStoreTest extends * {@inheritDoc} */ @Override - ISubscriptionServiceResult performServiceInteraction() + SubscriptionServiceResult performServiceInteraction() throws RegistryHandlerException { return service.store(sub1, mockPromptDisplayText); } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceUpdateTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceUpdateTest.java index 202b09e4ba..ea3a809e98 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceUpdateTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionServiceUpdateTest.java @@ -24,7 +24,6 @@ import static org.mockito.Mockito.verify; import com.raytheon.uf.common.datadelivery.registry.handlers.DataDeliveryHandlers; import com.raytheon.uf.common.registry.handler.RegistryHandlerException; -import com.raytheon.uf.viz.datadelivery.subscription.ISubscriptionService.ISubscriptionServiceResult; /** * Test @@ -48,7 +47,7 @@ public class SubscriptionServiceUpdateTest extends SubscriptionServiceStoreTest * {@inheritDoc} */ @Override - ISubscriptionServiceResult performServiceInteraction() + SubscriptionServiceResult performServiceInteraction() throws RegistryHandlerException { return service.update(sub1, mockPromptDisplayText); } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/xml/LatencyRuleXMLTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/xml/LatencyRuleXMLTest.java index 7d6238dda4..ca8fce57b7 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/xml/LatencyRuleXMLTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/subscription/xml/LatencyRuleXMLTest.java @@ -23,6 +23,7 @@ import javax.xml.bind.JAXBException; import org.junit.Test; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.SiteSubscriptionFixture; import com.raytheon.uf.common.units.DataSizeUnit; import com.raytheon.uf.common.util.CollectionUtil; @@ -41,6 +42,7 @@ import com.raytheon.uf.viz.datadelivery.system.OpsNetFieldNames; * ------------ ---------- ----------- -------------------------- * Jan 14, 2013 1286 djohnson Initial creation * Jan 17, 2013 1357 mpduff DataSizeUnits was moved. + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -66,7 +68,7 @@ public class LatencyRuleXMLTest { ruleXml.setRuleUnit(DataSizeUnit.BYTE.getUnit()); ruleXml.setRuleValue("10"); - ruleXml.matches(SiteSubscriptionFixture.INSTANCE.get(), + ruleXml.matches(SiteSubscriptionFixture.INSTANCE.get(DataType.GRID), CollectionUtil.asSet(1, 2)); } @@ -80,7 +82,7 @@ public class LatencyRuleXMLTest { ruleXml.setRuleUnit(FreqUnitOptions.MIN.getOperation()); ruleXml.setRuleValue("10"); - ruleXml.matches(SiteSubscriptionFixture.INSTANCE.get(), + ruleXml.matches(SiteSubscriptionFixture.INSTANCE.get(DataType.GRID), CollectionUtil.asSet(1, 2)); } } diff --git a/tests/unit/com/raytheon/uf/viz/datadelivery/utils/DataDeliveryUtilsTest.java b/tests/unit/com/raytheon/uf/viz/datadelivery/utils/DataDeliveryUtilsTest.java index 5b12d7de2d..5d5a7cc562 100644 --- a/tests/unit/com/raytheon/uf/viz/datadelivery/utils/DataDeliveryUtilsTest.java +++ b/tests/unit/com/raytheon/uf/viz/datadelivery/utils/DataDeliveryUtilsTest.java @@ -29,6 +29,7 @@ import java.util.concurrent.TimeUnit; import org.junit.Test; +import com.raytheon.uf.common.datadelivery.registry.DataType; import com.raytheon.uf.common.datadelivery.registry.GriddedTime; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSet; import com.raytheon.uf.common.datadelivery.registry.OpenDapGriddedDataSetFixture; @@ -47,6 +48,7 @@ import com.raytheon.uf.common.datadelivery.registry.Subscription; * Jan 14, 2013 1286 djohnson Initial creation * Jan 22, 2013 1519 djohnson Add tests for getMaxLatency calculations. * Sept 25, 2013 1797 dhladky separated time from gridded time + * Oct 21, 2013 2292 mpduff Implement multiple data types. * * * @@ -69,8 +71,9 @@ public class DataDeliveryUtilsTest { cycleTimes.add(1); cycleTimes.add(4); - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); - GriddedTime subTime = (GriddedTime)subscription.getTime(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); + GriddedTime subTime = (GriddedTime) subscription.getTime(); subTime.setCycleTimes(cycleTimes); assertEquals(THREE_HOURS_AS_MINUTES, @@ -82,8 +85,9 @@ public class DataDeliveryUtilsTest { List cycleTimes = newArrayList(); cycleTimes.add(0); - Subscription subscription = SiteSubscriptionFixture.INSTANCE.get(); - GriddedTime subTime = (GriddedTime)subscription.getTime(); + Subscription subscription = SiteSubscriptionFixture.INSTANCE + .get(DataType.GRID); + GriddedTime subTime = (GriddedTime) subscription.getTime(); subTime.setCycleTimes(cycleTimes); assertEquals(MINUTES_PER_DAY, From 2b4809ead73be53076861ce15b426f33830cd843 Mon Sep 17 00:00:00 2001 From: Ron Anderson Date: Thu, 31 Oct 2013 11:40:00 -0500 Subject: [PATCH 4/5] Issue #2508 Added DiscreteGridSlice.getKeys(), deprecated getKey() Change-Id: I5d47498c2056de1c217927102770092bb57a372c Former-commit-id: f0529e0eee4ebfd19f82d6ef0dfd897412528c2b [formerly b61ccc1609257fcbc87eed215bc6a04909ec559c] [formerly 38e33092a2ec57522ad0588ff61c7f149771c41d] [formerly f0529e0eee4ebfd19f82d6ef0dfd897412528c2b [formerly b61ccc1609257fcbc87eed215bc6a04909ec559c] [formerly 38e33092a2ec57522ad0588ff61c7f149771c41d] [formerly 42e924e0216e64e163881f674ace876364b9de37 [formerly 38e33092a2ec57522ad0588ff61c7f149771c41d [formerly 19246ae601e292bd26ba8ba6b9446ef8d82ee663]]]] Former-commit-id: 42e924e0216e64e163881f674ace876364b9de37 Former-commit-id: dd1b50d116cc341b432834b02981a88afc718d3c [formerly 2f23072e4193b1f4dfc12f3aa2ef19fdc02c98b6] [formerly e573e83de25a263065e03ab739ab5d58c0ca7fb1 [formerly eef9d2dfb0f78d3c26a395e5e839549c41ae41cb]] Former-commit-id: 6420457c498cf2f6184538b3831ba133f0623c15 [formerly e3a0440825793ec71248dca78422ce0c56e2267d] Former-commit-id: 49ea9c0444c201330fa59f3667917f2ba4b9792b --- .../gfe/userPython/utilities/SmartScript.py | 5 +- .../gfe/core/griddata/DiscreteGridData.java | 45 ++--- .../viz/gfe/core/internal/ISCDataAccess.java | 26 ++- .../com/raytheon/viz/gfe/core/parm/Parm.java | 139 +++++++------- .../core/parm/vcparm/CalcVcModGridArg.java | 5 +- .../viz/gfe/interpolation/DiscreteInterp.java | 134 ++++++------- .../com/raytheon/viz/gfe/rsc/GFEResource.java | 42 ++-- .../gfe/rsc/colorbar/DiscreteColorbar.java | 25 +-- .../raytheon/viz/gfe/sampler/HistSample.java | 180 +++++++++--------- .../smarttool/script/SmartToolController.java | 5 +- .../edex/plugin/gfe/ifpAG/ASCIIGrid.java | 5 +- .../gfe/server/database/IFPGridDatabase.java | 3 +- .../server/handler/GetPointDataHandler.java | 5 +- .../edex_static/base/gfe/isc/ifpnetCDF.py | 9 +- .../edex_static/base/gfe/isc/iscMosaic.py | 9 +- .../gfe/dataaccess/GFEGridFactory.java | 6 +- .../gfe/slice/DiscreteGridSlice.java | 130 +++++++------ 17 files changed, 404 insertions(+), 369 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/localization/gfe/userPython/utilities/SmartScript.py b/cave/com.raytheon.viz.gfe/localization/gfe/userPython/utilities/SmartScript.py index 93797c1dc7..3eddd1542f 100644 --- a/cave/com.raytheon.viz.gfe/localization/gfe/userPython/utilities/SmartScript.py +++ b/cave/com.raytheon.viz.gfe/localization/gfe/userPython/utilities/SmartScript.py @@ -51,6 +51,7 @@ # (e.g. grid[mask] = value) # Oct 07, 2013 2424 randerso remove use of pytz # Oct 29, 2013 2476 njensen Improved getting wx/discrete keys in _getGridResults +# Oct 31, 2013 2508 randerso Change to use DiscreteGridSlice.getKeys() # ######################################################################## import types, string, time, sys @@ -484,7 +485,7 @@ class SmartScript(BaseTool.BaseTool): if result[0].dtype != numpy.int8: # scalar result = result[0] - else: + else: # discrete or weather keys = JUtil.javaObjToPyVal(slice.getKeyList()) result.append(keys) @@ -650,7 +651,7 @@ class SmartScript(BaseTool.BaseTool): slice = DiscreteGridSlice() bits = self.__dataMgr.getIscDataAccess().getCompositeGrid(gid, exactMatch, slice) keys = [] - for k in slice.getKey(): + for k in slice.getKeys(): keys.append(str(k)) args = (bits.__numpy__[0], slice.getDiscreteGrid().__numpy__[0], keys) return args diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/griddata/DiscreteGridData.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/griddata/DiscreteGridData.java index ad1dbe8e5a..5ffaa186c7 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/griddata/DiscreteGridData.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/griddata/DiscreteGridData.java @@ -72,6 +72,7 @@ import com.vividsolutions.jts.geom.MultiPolygon; * 30Jan2013 #15719 jdynina Fixed allowed field size to accept more * than 128 characters * 02/19/2013 1637 randerso Added throws declarations to translateDataFrom + * 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -102,8 +103,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { DiscreteGridSlice thisSlice = getDiscreteSlice(); Grid2DByte grid = thisSlice.getDiscreteGrid(); - if (grid.getXdim() != pointsToSmooth.getXdim() - || grid.getYdim() != pointsToSmooth.getYdim()) { + if ((grid.getXdim() != pointsToSmooth.getXdim()) + || (grid.getYdim() != pointsToSmooth.getYdim())) { statusHandler.handle( Priority.ERROR, "Dimension mismatch in doSmooth: " + getGrid().getXdim() @@ -121,7 +122,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { getISCGrid(time, slice); } originalGrid = slice.getDiscreteGrid(); - originalKey = slice.getKey(); + originalKey = slice.getKeys(); } catch (CloneNotSupportedException e) { originalGrid = new Grid2DByte(); originalKey = new DiscreteKey[0]; @@ -155,8 +156,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { // uses fewer than nine points if near grid edge, // but always has at least four values to average. Arrays.fill(histo, (short) 0); - for (int newx = i - ss; newx <= i + ss; newx++) { - for (int newy = j - ss; newy <= j + ss; newy++) { + for (int newx = i - ss; newx <= (i + ss); newx++) { + for (int newy = j - ss; newy <= (j + ss); newy++) { // if inside grid limits, make a smoothed value if (originalGrid.isValid(newx, newy)) { histo[0xFF & originalGrid.get(newx, newy)]++; @@ -234,7 +235,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { // complex case - translation is necessary else { // copy the key from the source to the destination - setKey(((DiscreteGridSlice) sourceGrid.getGridSlice()).getKey()); + setKey(((DiscreteGridSlice) sourceGrid.getGridSlice()).getKeys()); // find no discrete key, which is always the 1st one int nowx = 0; @@ -340,8 +341,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { protected Grid2DBit doPencilStretch(Date time, WxValue value, Coordinate[] path, Grid2DBit editArea) { Grid2DByte grid = getGrid(); - if (grid.getXdim() != editArea.getXdim() - || grid.getYdim() != editArea.getYdim()) { + if ((grid.getXdim() != editArea.getXdim()) + || (grid.getYdim() != editArea.getYdim())) { statusHandler.handle(Priority.ERROR, "Dimension mismatch in doPencilStretch: " + grid.getXdim() + ',' + grid.getYdim() + ' ' + editArea.getXdim() @@ -675,8 +676,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { protected Grid2DBit doCopy(Date time, Grid2DBit pointsToCopy, Point delta) { DiscreteGridSlice thisSlice = getDiscreteSlice(); Grid2DByte sliceGrid = thisSlice.getDiscreteGrid(); - if (sliceGrid.getXdim() != pointsToCopy.getXdim() - || sliceGrid.getYdim() != pointsToCopy.getYdim()) { + if ((sliceGrid.getXdim() != pointsToCopy.getXdim()) + || (sliceGrid.getYdim() != pointsToCopy.getYdim())) { throw new IllegalArgumentException("Dimension mismatch in doCopy: " + sliceGrid.getXdim() + ',' + sliceGrid.getYdim() + ' ' + pointsToCopy.getXdim() + ',' + pointsToCopy.getYdim()); @@ -695,7 +696,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { getISCGrid(time, slice); } originalGrid = slice.getDiscreteGrid(); - originalKey = slice.getKey(); + originalKey = slice.getKeys(); } catch (CloneNotSupportedException e) { originalGrid = new Grid2DByte(); originalKey = new DiscreteKey[0]; @@ -751,8 +752,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { @Override protected Grid2DBit doFillIn(Date time, Grid2DBit pointsToFillIn) { Grid2DByte grid = getGrid(); - if (grid.getXdim() != pointsToFillIn.getXdim() - || grid.getYdim() != pointsToFillIn.getYdim()) { + if ((grid.getXdim() != pointsToFillIn.getXdim()) + || (grid.getYdim() != pointsToFillIn.getYdim())) { statusHandler.handle(Priority.ERROR, "Dimension mismatch in doFillIn: " + grid.getXdim() + ',' + grid.getYdim() + ' ' + pointsToFillIn.getXdim() @@ -814,8 +815,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { boolean done = false; while (!done) { // Check for bounds - if (coord.x < 0 || coord.x >= gridCells.getXdim() - || coord.y < 0 || coord.y >= gridCells.getYdim()) { + if ((coord.x < 0) || (coord.x >= gridCells.getXdim()) + || (coord.y < 0) || (coord.y >= gridCells.getYdim())) { done = true; } // Check for bit set @@ -882,8 +883,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { Grid2DBit points) { Grid2DByte grid = getGrid(); Point dim = new Point(grid.getXdim(), grid.getYdim()); - if (values.getXdim() != dim.x || values.getYdim() != dim.y - || points.getXdim() != dim.x || points.getYdim() != dim.y) { + if ((values.getXdim() != dim.x) || (values.getYdim() != dim.y) + || (points.getXdim() != dim.x) || (points.getYdim() != dim.y)) { throw new IllegalArgumentException( "bad values/points dimensions for grid for: " + this.getParm().getParmID() + " gridDim=" @@ -903,7 +904,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { int numValues = values.getXdim() * values.getYdim(); byte[] bp = values.getBuffer().array(); for (int i = 0; i < numValues; i++) { - if ((0xFF & bp[i]) > key.size() - 1) { + if ((0xFF & bp[i]) > (key.size() - 1)) { throw new IllegalArgumentException( "Illegal discrete grid (bad values) in gridSet()"); } @@ -915,7 +916,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { parmId.getCompositeName()); // REPLACE mode is easy - if (parm.getParmState().getCombineMode() == ParmState.CombineMode.REPLACE + if ((parm.getParmState().getCombineMode() == ParmState.CombineMode.REPLACE) || !overlapping) { // create remap array byte[] remap = new byte[256]; @@ -1019,7 +1020,7 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { } private DiscreteKey[] getKey() { - return ((DiscreteGridSlice) getGridSlice()).getKey(); + return ((DiscreteGridSlice) getGridSlice()).getKeys(); } private void setKey(DiscreteKey[] key) { @@ -1034,8 +1035,8 @@ public class DiscreteGridData extends AbstractGridData implements INumpyable { protected boolean doValid() { String emsg = "Grid contains data which exceeds limits for this parm. "; - if (!getGridTime().isValid() || getParm() == null - || getGridSlice() == null) { + if (!getGridTime().isValid() || (getParm() == null) + || (getGridSlice() == null)) { statusHandler.handle(Priority.PROBLEM, "Invalid grid time, bad parm or data slice"); return false; // time, parm, or data slice not valid diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/internal/ISCDataAccess.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/internal/ISCDataAccess.java index abdc0f9aef..e1104df6bf 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/internal/ISCDataAccess.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/internal/ISCDataAccess.java @@ -74,6 +74,7 @@ import com.vividsolutions.jts.geom.Coordinate; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 07/14/09 1995 bphillip Initial release + * 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -105,6 +106,7 @@ public class ISCDataAccess implements IISCDataAccess { } // returns corresponding ISC gridid, parm, grid + @Override public GridID getISCGridID(GridID id, boolean exactMatch) { Parm p = this.getISCParm(id.getParm()); @@ -150,10 +152,12 @@ public class ISCDataAccess implements IISCDataAccess { } } + @Override public ParmID getISCParmID(ParmID parmID) { return dataMgr.getParmManager().getISCParmID(parmID); } + @Override public Parm getISCParm(Parm p) { if (p == null) { @@ -185,6 +189,7 @@ public class ISCDataAccess implements IISCDataAccess { return iscP; } + @Override public String getISCSite(Point loc, GridID gid) { String empty = ""; String officeType = gid.getParm().getOfficeType(); @@ -202,6 +207,7 @@ public class ISCDataAccess implements IISCDataAccess { } } + @Override public boolean inOurSite(Point loc, GridID gid) { // must be our office type to be inOurSite if (!dataMgr.getOfficeType().equals(gid.getParm().getOfficeType())) { @@ -216,12 +222,14 @@ public class ISCDataAccess implements IISCDataAccess { } + @Override public WxValue getDataPoint(GridID gridID, Coordinate worldLoc) throws GFEServerException { Coordinate gloc = new Coordinate(); return getDataPoint(gridID, worldLoc, gloc); } + @Override public WxValue getDataPoint(GridID gridID, Coordinate worldLoc, Coordinate gloc) throws GFEServerException { if (gridID.getParm() == null) { @@ -233,8 +241,8 @@ public class ISCDataAccess implements IISCDataAccess { boolean inGrid = false; gloc = MapUtil.latLonToGridCoordinate(worldLoc, PixelOrientation.UPPER_RIGHT, location); - inGrid = gloc.x >= 0 && gloc.x < location.getNx() && gloc.y >= 0 - && gloc.y < location.getNy(); + inGrid = (gloc.x >= 0) && (gloc.x < location.getNx()) && (gloc.y >= 0) + && (gloc.y < location.getNy()); if (!inGrid) { return WxValue.defaultValue(gridID.getParm()); } @@ -263,6 +271,7 @@ public class ISCDataAccess implements IISCDataAccess { } + @Override public Grid2DBit getCompositeGrid(GridID gid, boolean exactMatch, ScalarGridSlice slice) { @@ -333,6 +342,7 @@ public class ISCDataAccess implements IISCDataAccess { return getCompositeGrid(gid, exactMatch, slice); } + @Override public Grid2DBit getCompositeGrid(GridID gid, boolean exactMatch, VectorGridSlice slice) { @@ -397,6 +407,7 @@ public class ISCDataAccess implements IISCDataAccess { } + @Override public Grid2DBit getCompositeGrid(GridID gid, boolean exactMatch, WeatherGridSlice slice) { @@ -484,6 +495,7 @@ public class ISCDataAccess implements IISCDataAccess { return siteMask.or(ourSiteMask); } + @Override public Grid2DBit getCompositeGrid(GridID gid, boolean exactMatch, DiscreteGridSlice slice) { @@ -519,9 +531,9 @@ public class ISCDataAccess implements IISCDataAccess { slice.setDiscreteGrid(primary.getDiscreteSlice().getDiscreteGrid() .clone()); DiscreteKey[] keys = new DiscreteKey[primary.getDiscreteSlice() - .getKey().length]; + .getKeys().length]; for (int i = 0; i < keys.length; i++) { - keys[i] = new DiscreteKey(primary.getDiscreteSlice().getKey()[i]); + keys[i] = new DiscreteKey(primary.getDiscreteSlice().getKeys()[i]); } slice.setKey(keys); @@ -544,9 +556,9 @@ public class ISCDataAccess implements IISCDataAccess { // blend the isc grid into the grid/key for those points set Grid2DByte iscGrid = iscGridData.getDiscreteSlice().getDiscreteGrid(); - DiscreteKey[] iscKey = iscGridData.getDiscreteSlice().getKey(); + DiscreteKey[] iscKey = iscGridData.getDiscreteSlice().getKeys(); - DiscreteKey[] keyList = slice.getKey(); + DiscreteKey[] keyList = slice.getKeys(); Map keyIndexMap = new HashMap( keyList.length); for (int i = 0; i < keyList.length; i++) { @@ -595,7 +607,7 @@ public class ISCDataAccess implements IISCDataAccess { for (int i = 0; i < available.size(); i++) { String name = available.get(i).getName(); - if (name.length() >= 5 && name.startsWith("ISC_") + if ((name.length() >= 5) && name.startsWith("ISC_") && (name.indexOf('_', 4) == -1)) { String site = name.substring(4); if (knownSites.contains(site)) { diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/Parm.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/Parm.java index 795a4f62f5..04304a4b6a 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/Parm.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/Parm.java @@ -184,6 +184,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ant time weighted average. * Apr 02, 2013 #1774 randerso Fixed a possible deadlock issue. * Aug 27, 2013 #2302 randerso Fix simultaneous save issue + * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -593,7 +594,8 @@ public abstract class Parm implements Comparable { this.grids.acquireReadLock(); try { - if (this.grids.size() > 0 && !getGridInfo().isTimeIndependentParm()) { + if ((this.grids.size() > 0) + && !getGridInfo().isTimeIndependentParm()) { return new TimeRange( this.grids.get(0).getGridTime().getStart(), this.grids .get(this.grids.size() - 1).getGridTime() @@ -965,7 +967,7 @@ public abstract class Parm implements Comparable { Date[] dateArray = { absTime }; IGridData[] gridData = startParmEdit(dateArray); - if (gridData != null && gridData.length == 1) { + if ((gridData != null) && (gridData.length == 1)) { return gridData[0]; } @@ -1029,7 +1031,7 @@ public abstract class Parm implements Comparable { IGridData grid = null; grid = overlappingGrid(absTime); - if (grid != null && isOkToEdit(grid.getGridTime())) { + if ((grid != null) && isOkToEdit(grid.getGridTime())) { retGrids.add(grid); affectedTimes.add(grid.getGridTime()); saveUndoTimes.add(grid.getGridTime()); @@ -1245,7 +1247,7 @@ public abstract class Parm implements Comparable { boolean invChanged = false; IGridData leftGrid = overlappingGrid(splitTimeRange.getStart()); - if (leftGrid != null + if ((leftGrid != null) && !leftGrid.getGridTime().getStart() .equals(splitTimeRange.getStart())) { IGridData newGrid = null; @@ -1266,7 +1268,7 @@ public abstract class Parm implements Comparable { IGridData rightGrid = overlappingGrid(new Date(splitTimeRange.getEnd() .getTime() - 1000)); - if (rightGrid != null + if ((rightGrid != null) && !rightGrid.getGridTime().getEnd() .equals(splitTimeRange.getEnd())) { IGridData newGrid; @@ -1355,10 +1357,10 @@ public abstract class Parm implements Comparable { // in some cases, you can end up with an invalid TR if (!expTR.isValid() - || orgTR.getStart().getTime() < replaceRange.getStart() - .getTime() - || orgTR.getEnd().getTime() > replaceRange.getEnd() - .getTime()) { + || (orgTR.getStart().getTime() < replaceRange.getStart() + .getTime()) + || (orgTR.getEnd().getTime() > replaceRange.getEnd() + .getTime())) { continue; } @@ -1461,8 +1463,8 @@ public abstract class Parm implements Comparable { // add proportional value to existing grid float timeRatio = (float) intersect.getDuration() / (float) orgTR.getDuration(); - if (grids.get(j).getGridSlice() instanceof IContinuousSlice - && grid.getGridSlice() instanceof IContinuousSlice) { + if ((grids.get(j).getGridSlice() instanceof IContinuousSlice) + && (grid.getGridSlice() instanceof IContinuousSlice)) { IGridSlice copy; try { @@ -1656,8 +1658,8 @@ public abstract class Parm implements Comparable { e); } - if (copy instanceof IContinuousSlice - && newgrid.getGridSlice() instanceof IContinuousSlice) { + if ((copy instanceof IContinuousSlice) + && (newgrid.getGridSlice() instanceof IContinuousSlice)) { ((IContinuousSlice) copy).operateEquals(Op.MULTIPLY, timeRatio, dataManager.getRefManager().fullRefSet().getGrid()); ((IContinuousSlice) newgrid.getGridSlice()).operateEquals( @@ -2068,8 +2070,8 @@ public abstract class Parm implements Comparable { ParmID parmId = getParmID(); String siteId = parmId.getDbId().getSiteId(); - if (grids.length == 1 - && getGridInfo().getGridType() != GridType.WEATHER) { + if ((grids.length == 1) + && (getGridInfo().getGridType() != GridType.WEATHER)) { // nothing to average so we're done, except in the weather case try { gridSlice = grids[0].getGridSlice().clone(); @@ -2119,8 +2121,8 @@ public abstract class Parm implements Comparable { float dur = gridTR.get(k).getDuration(); for (int i = 0; i < ge.getSpan(0); i++) { for (int j = 0; j < ge.getSpan(1); j++) { - uSum.set(i, j, uSum.get(i, j) + uGrid.get(i, j) * dur); - vSum.set(i, j, vSum.get(i, j) + vGrid.get(i, j) * dur); + uSum.set(i, j, uSum.get(i, j) + (uGrid.get(i, j) * dur)); + vSum.set(i, j, vSum.get(i, j) + (vGrid.get(i, j) * dur)); } } } @@ -2184,7 +2186,7 @@ public abstract class Parm implements Comparable { // values that exceed the configured percentage ArrayList weightedKeys = new ArrayList(); for (int k = 0; k < subKeys.size(); k++) { - if ((float) wcount.get(k) / totalDuration > significantPercent) { + if (((float) wcount.get(k) / totalDuration) > significantPercent) { weightedKeys.add(subKeys.get(k)); } } @@ -2237,7 +2239,7 @@ public abstract class Parm implements Comparable { Map values = new HashMap(); for (int k = 0; k < gridCount; k++) { DiscreteKey key1[] = ((DiscreteGridSlice) grids[k] - .getGridSlice()).getKey(); + .getGridSlice()).getKeys(); Grid2DByte grid1 = ((DiscreteGridSlice) grids[k] .getGridSlice()).getDiscreteGrid(); // TextString kv = key1[grid1(i, j)].keyAsString(); @@ -2323,8 +2325,8 @@ public abstract class Parm implements Comparable { public void adjust(float deltaValue, final Date time, final ReferenceData refData) { // Can't adjust weather or discrete - if (getGridInfo().getGridType() == GridType.WEATHER - || getGridInfo().getGridType() == GridType.DISCRETE) { + if ((getGridInfo().getGridType() == GridType.WEATHER) + || (getGridInfo().getGridType() == GridType.DISCRETE)) { return; } @@ -2348,7 +2350,7 @@ public abstract class Parm implements Comparable { Date[] dateArray = { absTime }; IGridData[] gridData = extendParmEdit(dateArray); - if (gridData != null && gridData.length == 1) { + if ((gridData != null) && (gridData.length == 1)) { return gridData[0]; } @@ -2434,8 +2436,8 @@ public abstract class Parm implements Comparable { */ public boolean timeShiftTR(TimeRange tr, int secondsToShift, boolean copyOnly) { - if (Math.abs(secondsToShift) - % this.gridInfo.getTimeConstraints().getRepeatInterval() != 0) { + if ((Math.abs(secondsToShift) % this.gridInfo.getTimeConstraints() + .getRepeatInterval()) != 0) { throw new IllegalArgumentException("timeShiftSelectedTR of " + secondsToShift + " not an interval of " + this.gridInfo.getTimeConstraints().getRepeatInterval() @@ -2443,15 +2445,15 @@ public abstract class Parm implements Comparable { } // Make sure the given timeRange is valid and there is something to do - if (!tr.isValid() || secondsToShift == 0) { + if (!tr.isValid() || (secondsToShift == 0)) { return false; } // calculate source and destination timeRanges TimeRange sourceTR = new TimeRange(tr.getStart(), tr.getEnd()); TimeRange destinationTR = new TimeRange(tr.getStart().getTime() - + secondsToShift * 1000, tr.getEnd().getTime() + secondsToShift - * 1000); + + (secondsToShift * 1000), tr.getEnd().getTime() + + (secondsToShift * 1000)); // Create a combinedTR that includes the all blocks it touches TimeRange combinedTR = destinationTR; @@ -2502,27 +2504,28 @@ public abstract class Parm implements Comparable { for (int i = 0; i < destGrids.length; i++) { TimeRange tr2 = destGrids[i].getGridTime(); - tr2 = new TimeRange(tr2.getStart().getTime() + secondsToShift - * 1000, tr2.getEnd().getTime() + secondsToShift * 1000); + tr2 = new TimeRange(tr2.getStart().getTime() + + (secondsToShift * 1000), tr2.getEnd().getTime() + + (secondsToShift * 1000)); destGrids[i].changeValidTime(tr2, true); destGrids[i].updateHistoryToModified(this.dataManager.getWsId()); } // Trim the start of the first copied grid, if necessary - if (destGrids[0].getGridTime().getStart().getTime() < sourceTR - .getStart().getTime() + secondsToShift * 1000) { + if (destGrids[0].getGridTime().getStart().getTime() < (sourceTR + .getStart().getTime() + (secondsToShift * 1000))) { TimeRange newTR = new TimeRange(sourceTR.getStart().getTime() - + secondsToShift * 1000, destGrids[0].getGridTime() + + (secondsToShift * 1000), destGrids[0].getGridTime() .getEnd().getTime()); destGrids[0].changeValidTime(newTR, true); } // Trim the end of the last copied grid, if necessary - if (destGrids[destGrids.length - 1].getGridTime().getEnd().getTime() > sourceTR - .getEnd().getTime() + secondsToShift * 1000) { + if (destGrids[destGrids.length - 1].getGridTime().getEnd().getTime() > (sourceTR + .getEnd().getTime() + (secondsToShift * 1000))) { TimeRange newTR = new TimeRange(destGrids[destGrids.length - 1] .getGridTime().getStart().getTime(), sourceTR.getEnd() - .getTime() + secondsToShift * 1000); + .getTime() + (secondsToShift * 1000)); destGrids[destGrids.length - 1].changeValidTime(newTR, true); } @@ -2730,9 +2733,9 @@ public abstract class Parm implements Comparable { IGridData leftGrid = overlappingGrid(timeRange.getStart()); IGridData rightGrid = overlappingGrid(new Date(timeRange.getEnd() .getTime() - 1000)); - if ((leftGrid == null || leftGrid.getGridTime().getStart() + if (((leftGrid == null) || leftGrid.getGridTime().getStart() .equals(timeRange.getStart())) - && (rightGrid == null || rightGrid.getGridTime().getEnd() + && ((rightGrid == null) || rightGrid.getGridTime().getEnd() .equals(timeRange.getEnd()))) { return false; // nothing to split } @@ -3180,8 +3183,8 @@ public abstract class Parm implements Comparable { ParmState.CombineMode cCombineMode = this.parmState.getCombineMode(); if (this.gridInfo.getGridType() == GFERecord.GridType.VECTOR) { this.parmState.setVectorMode(ParmState.VectorMode.BOTH); - } else if (this.gridInfo.getGridType() == GFERecord.GridType.WEATHER - || this.gridInfo.getGridType() == GFERecord.GridType.DISCRETE) { + } else if ((this.gridInfo.getGridType() == GFERecord.GridType.WEATHER) + || (this.gridInfo.getGridType() == GFERecord.GridType.DISCRETE)) { this.parmState.setCombineMode(ParmState.CombineMode.REPLACE); } @@ -3198,8 +3201,8 @@ public abstract class Parm implements Comparable { // restore the edit modes if (this.gridInfo.getGridType() == GFERecord.GridType.VECTOR) { this.parmState.setVectorMode(cVectorMode); - } else if (this.gridInfo.getGridType() == GFERecord.GridType.WEATHER - || this.gridInfo.getGridType() == GFERecord.GridType.DISCRETE) { + } else if ((this.gridInfo.getGridType() == GFERecord.GridType.WEATHER) + || (this.gridInfo.getGridType() == GFERecord.GridType.DISCRETE)) { this.parmState.setCombineMode(cCombineMode); } @@ -3367,13 +3370,13 @@ public abstract class Parm implements Comparable { if (interval < tc.getRepeatInterval()) { interval = tc.getRepeatInterval(); } - if (interval % tc.getRepeatInterval() != 0) { - interval = (interval / tc.getRepeatInterval() + 1) + if ((interval % tc.getRepeatInterval()) != 0) { + interval = ((interval / tc.getRepeatInterval()) + 1) * tc.getRepeatInterval(); } } - if (interval == 0 || duration == 0) { + if ((interval == 0) || (duration == 0)) { gridTimes.add(tr); } @@ -3415,8 +3418,8 @@ public abstract class Parm implements Comparable { */ public Parm min(TimeRange timeRange) { // Can't take the minimum of a weather or discrete type - if (this.gridInfo.getGridType() == GridType.WEATHER - || this.gridInfo.getGridType() == GridType.DISCRETE) { + if ((this.gridInfo.getGridType() == GridType.WEATHER) + || (this.gridInfo.getGridType() == GridType.DISCRETE)) { return null; } @@ -3478,8 +3481,8 @@ public abstract class Parm implements Comparable { */ public Parm max(TimeRange timeRange) { // Can't take the minimum of a weather or discrete type - if (this.gridInfo.getGridType() == GridType.WEATHER - || this.gridInfo.getGridType() == GridType.DISCRETE) { + if ((this.gridInfo.getGridType() == GridType.WEATHER) + || (this.gridInfo.getGridType() == GridType.DISCRETE)) { return null; } @@ -3541,8 +3544,8 @@ public abstract class Parm implements Comparable { */ public Parm sum(TimeRange timeRange) { // Can't take the minimum of a weather or discrete type - if (this.gridInfo.getGridType() == GridType.WEATHER - || this.gridInfo.getGridType() == GridType.DISCRETE) { + if ((this.gridInfo.getGridType() == GridType.WEATHER) + || (this.gridInfo.getGridType() == GridType.DISCRETE)) { return null; } @@ -3769,7 +3772,7 @@ public abstract class Parm implements Comparable { for (k = 0; k < gridCount; k++) { DiscreteKey[] key1 = ((DiscreteGridSlice) grids[k] - .getGridSlice()).getKey(); + .getGridSlice()).getKeys(); Grid2DByte grid1 = ((DiscreteGridSlice) grids[k] .getGridSlice()).getDiscreteGrid(); DiscreteKey dkv = key1[grid1.get(i, j)]; @@ -3919,16 +3922,16 @@ public abstract class Parm implements Comparable { // left { end = mid - 1; - mid = (end - begin) / 2 + begin; + mid = ((end - begin) / 2) + begin; } else // on the right { begin = mid + 1; - mid = (end - begin) / 2 + begin; + mid = ((end - begin) / 2) + begin; } } // Did we find it? Last chance... - if (mid >= 0 && mid < this.grids.size() + if ((mid >= 0) && (mid < this.grids.size()) && this.grids.get(mid).getGridTime().contains(time)) { return this.grids.get(mid); } @@ -4042,7 +4045,7 @@ public abstract class Parm implements Comparable { } // set duration to interval if needed - if (interval != 0 && duration == 0) { + if ((interval != 0) && (duration == 0)) { duration = interval; } @@ -4120,7 +4123,7 @@ public abstract class Parm implements Comparable { // eliminate all of the earlier and the later grids from // basegrids - if (endIndex != -1 && endIndex < baseGrids.size() - 1) { + if ((endIndex != -1) && (endIndex < (baseGrids.size() - 1))) { baseGrids.subList(endIndex + 1, baseGrids.size()).clear(); } if (startIndex >= 1) { @@ -4160,7 +4163,7 @@ public abstract class Parm implements Comparable { break; } } - st.setTime(st.getTime() + interval * 1000); + st.setTime(st.getTime() + (interval * 1000)); } // now split grids if necessary due to interference with base grids @@ -4173,12 +4176,12 @@ public abstract class Parm implements Comparable { if (bgTime.contains(t)) { break; // can't salvage this one } - if (bgTime.getStart().compareTo(t.getStart()) <= 0 - && bgTime.getEnd().compareTo(t.getEnd()) < 0) { + if ((bgTime.getStart().compareTo(t.getStart()) <= 0) + && (bgTime.getEnd().compareTo(t.getEnd()) < 0)) { newDSTR.add(new TimeRange(bgTime.getEnd(), t.getEnd())); overlaps = true; - } else if (bgTime.getStart().compareTo(t.getStart()) > 0 - && bgTime.getEnd().compareTo(t.getEnd()) >= 0) { + } else if ((bgTime.getStart().compareTo(t.getStart()) > 0) + && (bgTime.getEnd().compareTo(t.getEnd()) >= 0)) { newDSTR.add(new TimeRange(t.getStart(), bgTime .getStart())); overlaps = true; @@ -4227,13 +4230,13 @@ public abstract class Parm implements Comparable { interptimes.add(bs.getValidTime()); // if a gap's time range fits in here, append to arrays. - if (i < baseGrids.size() - 1) { + if (i < (baseGrids.size() - 1)) { IGridSlice nbs = baseGrids.get(i + 1).getGridSlice(); for (j = 0; j < newDSTR.size(); j++) { TimeRange ntr = newDSTR.get(j); - if (ntr.getStart().compareTo(bs.getValidTime().getEnd()) >= 0 - && ntr.getEnd().compareTo( - nbs.getValidTime().getStart()) <= 0) { + if ((ntr.getStart().compareTo(bs.getValidTime().getEnd()) >= 0) + && (ntr.getEnd().compareTo( + nbs.getValidTime().getStart()) <= 0)) { // make an empty NONE type GridSlice for the // ones to // be interpolated, and append the time for it. @@ -4469,11 +4472,11 @@ public abstract class Parm implements Comparable { int idx2 = strings.indexOf(parm2); // parms in strings come before those that aren't - if (idx1 != -1 && idx2 == -1) { + if ((idx1 != -1) && (idx2 == -1)) { cmp = -1; - } else if (idx1 == -1 && idx2 != -1) { + } else if ((idx1 == -1) && (idx2 != -1)) { cmp = 1; - } else if (idx1 != -1 && idx2 != -1 && idx1 != idx2) { + } else if ((idx1 != -1) && (idx2 != -1) && (idx1 != idx2)) { // both are in strings at different indices. // compare their position in strings. if (idx1 > idx2) { diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/vcparm/CalcVcModGridArg.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/vcparm/CalcVcModGridArg.java index 0ebaecbc42..4a6fe31390 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/vcparm/CalcVcModGridArg.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/core/parm/vcparm/CalcVcModGridArg.java @@ -49,6 +49,7 @@ import com.raytheon.viz.gfe.core.griddata.WeatherGridData; * ------------ ---------- ----------- -------------------------- * Jan 12, 2012 dgilling Initial creation * Oct 29, 2013 2476 njensen Renamed numeric methods to numpy + * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -96,7 +97,7 @@ public class CalcVcModGridArg implements IVcModuleArgument { tempNames.addAll(encodeGridAndMask(gd, mask, i, sb, instance)); sb.append(')'); - if (i < argTuples.size() - 1) { + if (i < (argTuples.size() - 1)) { sb.append(','); } } @@ -165,7 +166,7 @@ public class CalcVcModGridArg implements IVcModuleArgument { jepString.append('('); jepString.append(name); jepString.append(','); - DiscreteKey[] keys = grid.getDiscreteSlice().getKey(); + DiscreteKey[] keys = grid.getDiscreteSlice().getKeys(); ArrayList stringKeys = new ArrayList(keys.length); for (DiscreteKey k : keys) { stringKeys.add(k.toString()); diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/interpolation/DiscreteInterp.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/interpolation/DiscreteInterp.java index dda93ee225..3f279aacca 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/interpolation/DiscreteInterp.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/interpolation/DiscreteInterp.java @@ -124,6 +124,7 @@ import com.raytheon.viz.gfe.Activator; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jun 2, 2008 #1161 randerso Initial creation + * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -380,7 +381,7 @@ public class DiscreteInterp extends Interp { findWxTypeGroups(joint, single); // do joint interpolation if needed. - if (joint.size() > 0 && joint.get(0) != 0 && joint.get(1) != 0) { + if ((joint.size() > 0) && (joint.get(0) != 0) && (joint.get(1) != 0)) { jointInterpControl(joint, workGrid1, workGrid2, groupGrid1, groupGrid2, newGrid, fraction, interpResult); } @@ -441,8 +442,8 @@ public class DiscreteInterp extends Interp { Grid2DByte grid2 = baseData2.getDiscreteGrid(); // extract the lists of weatherKeys associated with each index grid - DiscreteKey[] keys1 = baseData1.getKey(); - DiscreteKey[] keys2 = baseData2.getKey(); + DiscreteKey[] keys1 = baseData1.getKeys(); + DiscreteKey[] keys2 = baseData2.getKeys(); // Make a list of DiscreteKeys that spans both keys1 and keys2. @@ -711,18 +712,18 @@ public class DiscreteInterp extends Interp { if (x < 0) { x = 0; } - if (x > _xDim - 1) { + if (x > (_xDim - 1)) { x = _xDim - 1; } if (y < 0) { y = 0; } - if (y > _yDim - 1) { + if (y > (_yDim - 1)) { y = _yDim - 1; } // if the point has a different and non-zero value - if (grid.get(x, y) != 0 && grid.get(x, y) != wxValue) { + if ((grid.get(x, y) != 0) && (grid.get(x, y) != wxValue)) { // have found a contiguous point of differing value // set flag for contiguous point @@ -848,8 +849,8 @@ public class DiscreteInterp extends Interp { for (j = 1; j < _wxTypeInfoMatrix.getYDim(); j++) { // if types match, and // if it contiguous to other types - if (_wxTypeList1.get(i).wxType == _wxTypeInfoMatrix.get(0, - j) && _wxTypeList1.get(i).isContig) { + if ((_wxTypeList1.get(i).wxType == _wxTypeInfoMatrix.get(0, + j)) && _wxTypeList1.get(i).isContig) { // now there is a list of the types this one // is contiguous to, but they may not be in // same order as first column in matrix. @@ -858,10 +859,10 @@ public class DiscreteInterp extends Interp { // when find it, flag in matrix, but only in // upper left half: where j>m for (m = 1; m < _wxTypeInfoMatrix.getXDim(); m++) { - if (j > m - && _wxTypeInfoMatrix.get(m, 0) == _wxTypeList1 + if ((j > m) + && (_wxTypeInfoMatrix.get(m, 0) == _wxTypeList1 .get(i).contigWxType.get(k) - .intValue()) { + .intValue())) { _wxTypeInfoMatrix.set(m, j, 1); // done! } } @@ -876,14 +877,14 @@ public class DiscreteInterp extends Interp { for (i = 0; i < _wxTypeList2.size(); i++) { if (_wxTypeList2.get(i).wxType != 0) { for (m = 1; m < _wxTypeInfoMatrix.getXDim(); m++) { - if (_wxTypeList2.get(i).wxType == _wxTypeInfoMatrix.get(m, - 0) && _wxTypeList2.get(i).isContig) { + if ((_wxTypeList2.get(i).wxType == _wxTypeInfoMatrix.get(m, + 0)) && _wxTypeList2.get(i).isContig) { for (k = 0; k < _wxTypeList2.get(i).contigWxType.size(); k++) { for (j = 1; j < _wxTypeInfoMatrix.getXDim(); j++) { - if (m > j - && _wxTypeInfoMatrix.get(0, j) == _wxTypeList2 + if ((m > j) + && (_wxTypeInfoMatrix.get(0, j) == _wxTypeList2 .get(i).contigWxType.get(k) - .intValue()) { + .intValue())) { _wxTypeInfoMatrix.set(m, j, 1); // done! } } @@ -945,9 +946,10 @@ public class DiscreteInterp extends Interp { // loop over left col for (n = 1; n < _wxTypeInfoMatrix.getYDim(); n++) { - if (n != m // not on diagonal - && _wxTypeInfoMatrix.get(m, n) == 1 - && _wxTypeInfoMatrix.get(n, m) == 1) { + if ((n != m // not on diagonal + ) + && (_wxTypeInfoMatrix.get(m, n) == 1) + && (_wxTypeInfoMatrix.get(n, m) == 1)) { jointInterp = true; // add _wxTypeInfoMatrix(m,0) to joint if not already @@ -1080,7 +1082,7 @@ public class DiscreteInterp extends Interp { for (i = 0; i < joint.size(); i++) { if (size[i] != 0) { for (j = i + 1; j < joint.size(); j++) { - if (size[j] > size[i] && size[j] > 0) { + if ((size[j] > size[i]) && (size[j] > 0)) { tempwx = joint.get(i); tempsize = size[i]; joint.set(i, joint.get(j)); @@ -1178,11 +1180,11 @@ public class DiscreteInterp extends Interp { // kind of weather wxValue were found in that grid. Reset the // 0,0 to the other center x,y so the area does not move to the // corner. It will grow or shrink in the same place. - if (center1.x == 0 && center1.y == 0) { + if ((center1.x == 0) && (center1.y == 0)) { center1.x = center2.x; center1.y = center2.y; } - if (center2.x == 0 && center2.y == 0) { + if ((center2.x == 0) && (center2.y == 0)) { center2.x = center1.x; center2.y = center1.y; } @@ -1208,26 +1210,26 @@ public class DiscreteInterp extends Interp { y = j + _dy; // if the translated point is still on visible grid - if (x >= 0 && x < _xDim && y >= 0 && y < _yDim) { + if ((x >= 0) && (x < _xDim) && (y >= 0) && (y < _yDim)) { // if this point is part of BOTH the original area, // and part of the final area when translated, // it is a point in the "core area." - if (_featureStart.get(i, j) == wxValue - && _featureEnd.get(x, y) == wxValue) { + if ((_featureStart.get(i, j) == wxValue) + && (_featureEnd.get(x, y) == wxValue)) { _coreArea.set(i, j, 1); } // if it appears in original grid but not in final grid, // it will "fade away", so note in _fadeArea. - if (_featureStart.get(i, j) == wxValue - && _featureEnd.get(x, y) != wxValue) { - _fadeArea.set(i + _xDim / 2, j + _yDim / 2, 1); + if ((_featureStart.get(i, j) == wxValue) + && (_featureEnd.get(x, y) != wxValue)) { + _fadeArea.set(i + (_xDim / 2), j + (_yDim / 2), 1); // compute distance "dist" from center of // weather area to this _fadeArea point - dist = (float) Math.sqrt((i - center1.x) - * (i - center1.x) + (j - center1.y) - * (j - center1.y)); + dist = (float) Math + .sqrt(((i - center1.x) * (i - center1.x)) + + ((j - center1.y) * (j - center1.y))); // compute which angle sector this point lies in deltax = i - center1.x; @@ -1240,8 +1242,8 @@ public class DiscreteInterp extends Interp { _faControl.set(sector, 1, dist); } // set min distance to edge of _fadeArea in this sector - if (dist < _faControl.get(sector, 0) - || _faControl.get(sector, 0) == 0.0f) { + if ((dist < _faControl.get(sector, 0)) + || (_faControl.get(sector, 0) == 0.0f)) { _faControl.set(sector, 0, dist); } } @@ -1250,11 +1252,12 @@ public class DiscreteInterp extends Interp { // for original grid points which land // outside data grid when projected: // keep 'em as _fadeArea points. - if (_featureStart.get(i, j) == wxValue - && (x < 0 || x >= _xDim || y < 0 || y >= _yDim)) { - _fadeArea.set(i + _xDim / 2, j + _yDim / 2, 1); - dist = (float) Math.sqrt((i - center1.x) * (i - center1.x) - + (j - center1.y) * (j - center1.y)); + if ((_featureStart.get(i, j) == wxValue) + && ((x < 0) || (x >= _xDim) || (y < 0) || (y >= _yDim))) { + _fadeArea.set(i + (_xDim / 2), j + (_yDim / 2), 1); + dist = (float) Math + .sqrt(((i - center1.x) * (i - center1.x)) + + ((j - center1.y) * (j - center1.y))); // compute which angle sector this point lies in deltax = i - center1.x; @@ -1267,8 +1270,8 @@ public class DiscreteInterp extends Interp { _faControl.set(sector, 1, dist); } // set min distance to edge of _fadeArea in this sector - if (dist < _faControl.get(sector, 0) - || _faControl.get(sector, 0) == 0.0f) { + if ((dist < _faControl.get(sector, 0)) + || (_faControl.get(sector, 0) == 0.0f)) { _faControl.set(sector, 0, dist); } } @@ -1306,16 +1309,17 @@ public class DiscreteInterp extends Interp { mainy = y - _dy; // indices in the _growArea grid: - m = mainx + _xDim / 2; - n = mainy + _yDim / 2; + m = mainx + (_xDim / 2); + n = mainy + (_yDim / 2); // (make sure (n,m) inside the _growArea grid) - if (m >= 0 && m < 2 * _xDim && n >= 0 && n < 2 * _yDim) { + if ((m >= 0) && (m < (2 * _xDim)) && (n >= 0) + && (n < (2 * _yDim))) { _growArea.set(m, n, 1); // compute distance "dist" from center of // weather area to this _growArea point - arg = (mainx - center1.x) * (mainx - center1.x) - + (mainy - center1.y) * (mainy - center1.y); + arg = ((mainx - center1.x) * (mainx - center1.x)) + + ((mainy - center1.y) * (mainy - center1.y)); dist = (float) Math.sqrt(arg); // compute which angle sector this point lies in @@ -1330,8 +1334,8 @@ public class DiscreteInterp extends Interp { } // set min distance to edge of _growArea in this sector - if (dist < _gaControl.get(sector, 0) - || _gaControl.get(sector, 0) == 0.0f) { + if ((dist < _gaControl.get(sector, 0)) + || (_gaControl.get(sector, 0) == 0.0f)) { _gaControl.set(sector, 0, dist); } } @@ -1373,14 +1377,14 @@ public class DiscreteInterp extends Interp { // (A) number of radians per sector = 2 * pi /(how many sectors in // circle) - double step = 2.0 * Math.PI / _numSectors; + double step = (2.0 * Math.PI) / _numSectors; // compartimentalize into sectors: - sector = (int) (0.5 + (angle + Math.PI) / step) - 1; + sector = (int) (0.5 + ((angle + Math.PI) / step)) - 1; // (A) // bad value clamp (should not occur) - if (sector < 0 || sector >= _numSectors) { + if ((sector < 0) || (sector >= _numSectors)) { sector = 0; } @@ -1418,8 +1422,8 @@ public class DiscreteInterp extends Interp { Point center = new Point(); if (num != 0) { - center.x = (int) (0.5 + sumX / num); - center.y = (int) (0.5 + sumY / num); + center.x = (int) (0.5 + (sumX / num)); + center.y = (int) (0.5 + (sumY / num)); } else { center.x = 0; center.y = 0; @@ -1505,18 +1509,18 @@ public class DiscreteInterp extends Interp { // Add in points from grow and fade Areas where appropriate. // loop over coordinates for _growArea and _fadeArea grids - for (int i = 0; i < 2 * _xDim; i++) { - for (int j = 0; j < 2 * _yDim; j++) { + for (int i = 0; i < (2 * _xDim); i++) { + for (int j = 0; j < (2 * _yDim); j++) { // "i,j" positions for grow or fade area // as if on on main grid coordinates (there may not actually // be any main grid points with these indexes). - mainx = i - _xDim / 2; - mainy = j - _yDim / 2; + mainx = i - (_xDim / 2); + mainy = j - (_yDim / 2); // distance from center of initial area to this g or f area // point. - dist = Math.sqrt((mainx - center1.x) * (mainx - center1.x) - + (mainy - center1.y) * (mainy - center1.y)); + dist = Math.sqrt(((mainx - center1.x) * (mainx - center1.x)) + + ((mainy - center1.y) * (mainy - center1.y))); // translated position for this step: // (coordinates in _growArea and _fadeArea grid system) @@ -1524,8 +1528,8 @@ public class DiscreteInterp extends Interp { int jj = j + (int) ((_dy * zeta) + 0.5); // translated position on main grid - tmainy = jj - _yDim / 2; - tmainx = ii - _xDim / 2; + tmainy = jj - (_yDim / 2); + tmainx = ii - (_xDim / 2); // get angle sector for this point sector = findAngleSector(mainx - center1.x, mainy - center1.y); @@ -1568,8 +1572,9 @@ public class DiscreteInterp extends Interp { // from center of moving area, addthis point to the weather // area. // (also make sure it's on the main grid!) - if (dist < testGAdist && tmainy >= 0 && tmainx < _xDim - && tmainx >= 0 && tmainy < _yDim) { + if ((dist < testGAdist) && (tmainy >= 0) + && (tmainx < _xDim) && (tmainx >= 0) + && (tmainy < _yDim)) { newGrid.set(tmainx, tmainy, wxValue); } @@ -1609,8 +1614,9 @@ public class DiscreteInterp extends Interp { // only keep a _fadeArea point inside the // limiting distance // (also make sure it's on the main grid!) - if (dist < testFAdist && tmainy >= 0 && tmainy < _yDim - && tmainx >= 0 && tmainx < _xDim) { + if ((dist < testFAdist) && (tmainy >= 0) + && (tmainy < _yDim) && (tmainx >= 0) + && (tmainx < _xDim)) { newGrid.set(tmainx, tmainy, wxValue); } } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/GFEResource.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/GFEResource.java index 1c50104016..c51e02d015 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/GFEResource.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/GFEResource.java @@ -164,6 +164,7 @@ import com.vividsolutions.jts.geom.Envelope; * Mar 04, 2013 1637 randerso Fix time matching for ISC grids * Aug 27, 2013 2287 randerso Fixed scaling and direction of wind arrows * Sep 23, 2013 2363 bsteffen Add more vector configuration options. + * Oct 31, 2013 2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -340,7 +341,7 @@ public class GFEResource extends * changed, data appeared/disappeared) */ private void resetFrame(TimeRange timeRange) { - if (curTime != null && timeRange.overlaps(curTime.getValidPeriod())) { + if ((curTime != null) && timeRange.overlaps(curTime.getValidPeriod())) { lastDisplayedTime = null; issueRefresh(); } @@ -492,7 +493,7 @@ public class GFEResource extends // hack to get around target.getDefaultFont()-centeredness in // contourDisplay. - double contourMagnification = magnification * gfeFont.getFontSize() + double contourMagnification = (magnification * gfeFont.getFontSize()) / target.getDefaultFont().getFontSize(); double density = parm.getDisplayAttributes().getDensity(); @@ -509,7 +510,7 @@ public class GFEResource extends .getValidPeriod()); boolean iscParm = this.parm.isIscParm(); - if (gd.length == 0 && !dataManager.getParmManager().iscMode()) { + if ((gd.length == 0) && !dataManager.getParmManager().iscMode()) { return; } @@ -519,7 +520,7 @@ public class GFEResource extends if (!this.curTime.equals(this.lastDisplayedTime) || !visMode.equals(this.lastVisMode) - || this.lastIscMode != dataManager.getParmManager().iscMode()) { + || (this.lastIscMode != dataManager.getParmManager().iscMode())) { this.lastDisplayedTime = this.curTime; this.lastVisMode = visMode; @@ -537,7 +538,7 @@ public class GFEResource extends if (gd != null) { IGridSlice gs = null; - if (dataManager.getParmManager().iscMode() && gd.length == 0) { + if (dataManager.getParmManager().iscMode() && (gd.length == 0)) { GridParmInfo gpi = this.parm.getGridInfo(); GridType gridType = gpi.getGridType(); @@ -583,8 +584,8 @@ public class GFEResource extends gs = gd[0].getGridSlice(); } - if (gs instanceof VectorGridSlice - || gs instanceof ScalarGridSlice) { + if ((gs instanceof VectorGridSlice) + || (gs instanceof ScalarGridSlice)) { if (this.gridDisplay != null) { this.gridDisplay.dispose(); @@ -660,9 +661,8 @@ public class GFEResource extends mag, dir, descriptor, MapUtil .getGridGeometry(gs.getGridInfo() .getGridLoc()), - VECTOR_DENSITY_FACTOR, - false, visTypeToDisplayType(type), - vectorConfig)); + VECTOR_DENSITY_FACTOR, false, + visTypeToDisplayType(type), vectorConfig)); break; case WIND_BARB: @@ -753,7 +753,7 @@ public class GFEResource extends gid, true, slice); } - for (DiscreteKey discreteKey : slice.getKey()) { + for (DiscreteKey discreteKey : slice.getKeys()) { if (discreteKey.isValid()) { outlineShapes.put(discreteKey, target @@ -1330,9 +1330,9 @@ public class GFEResource extends Coordinate gridCoord = MapUtil.latLonToGridCoordinate(coord, PixelOrientation.CENTER, gridLocation); - if (gridCoord.x < 0 || gridCoord.y < 0 - || gridCoord.x >= gridLocation.getNx() - || gridCoord.y >= gridLocation.getNy()) { + if ((gridCoord.x < 0) || (gridCoord.y < 0) + || (gridCoord.x >= gridLocation.getNx()) + || (gridCoord.y >= gridLocation.getNy())) { return; } @@ -1471,21 +1471,21 @@ public class GFEResource extends // now see if adjacent grid cells exist containing the // same data. - if ((xGrid + xLabelGrid > gridDim.x) || (xGrid - 1 < 0)) { + if (((xGrid + xLabelGrid) > gridDim.x) || ((xGrid - 1) < 0)) { continue; } - if ((yGrid + yLabelGrid > gridDim.y) || (yGrid - 1 < 0)) { + if (((yGrid + yLabelGrid) > gridDim.y) || ((yGrid - 1) < 0)) { continue; } byte weatherByteVal = byteData.get(xGrid, yGrid); boolean printLabel = true; - for (int ii = xGrid - 1; ii < xGrid + xLabelGrid; ii++) { - for (int j = yGrid - 1; j < yGrid + yLabelGrid; j++) { + for (int ii = xGrid - 1; ii < (xGrid + xLabelGrid); ii++) { + for (int j = yGrid - 1; j < (yGrid + yLabelGrid); j++) { if (!parm.getDisplayAttributes().getDisplayMask() .getAsBoolean(ii, j) - || byteData.get(ii, j) != weatherByteVal) { + || (byteData.get(ii, j) != weatherByteVal)) { printLabel = false; break; } @@ -1550,9 +1550,9 @@ public class GFEResource extends for (xpos = gridOffset; xpos < gridDim.x; xpos += gridInterval) { yCounter++; int xCounter = 0; - for (ypos = yCounter % 4 + 1; ypos < gridDim.y - gridOffset; ypos += gridInterval) { + for (ypos = (yCounter % 4) + 1; ypos < (gridDim.y - gridOffset); ypos += gridInterval) { xCounter++; - int xGrid = xpos + (xCounter % 4 * gridOffset); + int xGrid = xpos + ((xCounter % 4) * gridOffset); if (xGrid > gridDim.x) { break; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/colorbar/DiscreteColorbar.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/colorbar/DiscreteColorbar.java index 8037676072..746544627d 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/colorbar/DiscreteColorbar.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/rsc/colorbar/DiscreteColorbar.java @@ -96,6 +96,7 @@ import com.vividsolutions.jts.geom.Coordinate; * Jan 23, 2013 #1524 randerso Fix missing discrete color bar and error when clicking * on discrete color bar when no grid exists * Feb 12, 2013 15719 jdynina Fixed out of bounds error in calcGridColorTable + * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -213,7 +214,7 @@ public class DiscreteColorbar implements IColorBarDisplay, public void paint(IGraphicsTarget target, PaintProperties paintProps) throws VizException { DataTime currentTime = paintProps.getFramesInfo().getCurrentFrame(); - if (parm == null || currentTime == null) { + if ((parm == null) || (currentTime == null)) { return; } @@ -241,7 +242,7 @@ public class DiscreteColorbar implements IColorBarDisplay, DiscreteGridSlice slice = new DiscreteGridSlice(); parm.getDataManager().getIscDataAccess() .getCompositeGrid(gid, true, slice); - if (slice.getKey().length == 0) { + if (slice.getKeys().length == 0) { return; } iscGridData = new DiscreteGridData(this.parm, slice); @@ -365,7 +366,7 @@ public class DiscreteColorbar implements IColorBarDisplay, } // for DISCRETE else { - DiscreteKey[] dKeys = ((DiscreteGridSlice) gs).getKey(); + DiscreteKey[] dKeys = ((DiscreteGridSlice) gs).getKeys(); for (int i = 0; i < 256; i++) { if (cArray[i]) { gridWValues.add(new DiscreteWxValue(dKeys[i], parm)); @@ -485,7 +486,7 @@ public class DiscreteColorbar implements IColorBarDisplay, double pickupLabelSize = target.getStringsBounds(dstring) .getWidth(); - double pickupLabelDrawPoint = (minX + (pickupIndex * keywidth) + keywidth / 2) + double pickupLabelDrawPoint = (minX + (pickupIndex * keywidth) + (keywidth / 2)) * xScaleFactor; pickupLabelMinX = pickupLabelDrawPoint - (pickupLabelSize / 2); pickupLabelMaxX = pickupLabelDrawPoint + (pickupLabelSize / 2); @@ -535,7 +536,7 @@ public class DiscreteColorbar implements IColorBarDisplay, maxY, 0.0, seColorBarTickColor, 1.0f); String keyName = colorEntry.getValue().toString(); - labelLoc = (float) (minX + ikeywidth) + (float) keywidth / 2; + labelLoc = (float) (minX + ikeywidth) + ((float) keywidth / 2); double boxMinXCoord = (minX + ikeywidth) * xScaleFactor; double boxMaxXCoord = boxMinXCoord + (keywidth * xScaleFactor); @@ -591,15 +592,15 @@ public class DiscreteColorbar implements IColorBarDisplay, int x = 0; for (ColorEntry colorEntry : colorTable) { // calculate the bounding box from x - PixelExtent pe = new PixelExtent(x1 + x * keywidth, x1 + (x + 1) - * keywidth, y1, y2); + PixelExtent pe = new PixelExtent(x1 + (x * keywidth), x1 + + ((x + 1) * keywidth), y1, y2); Coordinate[] coordinates = new Coordinate[5]; - coordinates[0] = new Coordinate(x1 + x * keywidth, y1); - coordinates[1] = new Coordinate(x1 + (x + 1) * keywidth, y1); - coordinates[2] = new Coordinate(x1 + (x + 1) * keywidth, y2); - coordinates[3] = new Coordinate(x1 + x * keywidth, y2); - coordinates[4] = new Coordinate(x1 + x * keywidth, y1); + coordinates[0] = new Coordinate(x1 + (x * keywidth), y1); + coordinates[1] = new Coordinate(x1 + ((x + 1) * keywidth), y1); + coordinates[2] = new Coordinate(x1 + ((x + 1) * keywidth), y2); + coordinates[3] = new Coordinate(x1 + (x * keywidth), y2); + coordinates[4] = new Coordinate(x1 + (x * keywidth), y1); // draw the shaded rectangle with the correct color(s) and // pattern(s) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/sampler/HistSample.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/sampler/HistSample.java index 7c2b7b48bd..ee4e5af118 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/sampler/HistSample.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/sampler/HistSample.java @@ -52,7 +52,7 @@ import com.raytheon.viz.gfe.types.MutableInteger; /** * Contains a complete histogram for a single grid and parameter - * + * *
  * SOFTWARE HISTORY
  * Date			Ticket#		Engineer	Description
@@ -63,9 +63,10 @@ import com.raytheon.viz.gfe.types.MutableInteger;
  * May 29, 2009 2159        rjpeter     Optimized sample methods.
  * May 24, 2012  673        randerso    Added defaulted method calls
  * Jun 17, 2013 15951       ryu         Fix index to wx/discrete key array
- *
+ * Oct 31, 2013 2508        randerso    Change to use DiscreteGridSlice.getKeys()
+ * 
  * 
- * + * * @author mnash * @version 1.0 */ @@ -176,7 +177,7 @@ public class HistSample { * Description : Constructor far HistSample taking a histogram in the form * of a time range and a sequence of HistPairs, stores the information in * private data. Counts up the samples and stores that in _numSamplePoints. - * + * * @param timeRange * @param histPairs */ @@ -211,7 +212,7 @@ public class HistSample { * cached. Sets number of sample points to zero. Calls sampleGrid() to * sample the grid. If successful, stores the time range and counts up the * number of sample points. - * + * * @param gridSlice * @param sampleArea * @param cachePoints @@ -251,13 +252,13 @@ public class HistSample { * for WEATHER. The most common value for DISCRETE. For vector, if * separateMagDir is true, the magnitude is averaged separately from the * direction. - * + * * @param separateMagDir * @return */ public final HistValue average(boolean separateMagDir) { - if (separateMagDir == _averageMagDir && _average != null) { + if ((separateMagDir == _averageMagDir) && (_average != null)) { return _average; } @@ -326,7 +327,7 @@ public class HistSample { * _histPairs.get(i).value().magnitude(); float v = uSum / count; float u = vSum / count; - float mag = binit((float) Math.sqrt(u * u + v * v), + float mag = binit((float) Math.sqrt((u * u) + (v * v)), _resolution); float dir = binit((float) (Math.atan2(u, v) * RAD_TO_DEG), 10.0f); @@ -361,7 +362,7 @@ public class HistSample { /** * Description : the square root function - * + * * @param val * @return */ @@ -378,7 +379,7 @@ public class HistSample { * Returns the standard deviation of each component separately for VECTOR. * Should not be called for WEATHER. For vector, if separate MagDir is true, * the magnitude is averaged separately from the direction. - * + * * @return */ public final HistValue stdDev() { @@ -408,7 +409,7 @@ public class HistSample { float dev = 0.0f; if (count != 0) { - dev = (float) squareRoot((sum2 - (sum * sum) / count) / count); + dev = (float) squareRoot((sum2 - ((sum * sum) / count)) / count); } hs._stdDev = new HistValue(dev); return _stdDev; @@ -444,10 +445,10 @@ public class HistSample { float vdev = 0.0f; if (count != 0) { - dev = (float) squareRoot((sum2 - (sum * sum) / count) / count); - udev = (float) squareRoot((uSum2 - (uSum * uSum) / count) + dev = (float) squareRoot((sum2 - ((sum * sum) / count)) / count); + udev = (float) squareRoot((uSum2 - ((uSum * uSum) / count)) / count); - vdev = (float) squareRoot((vSum2 - (vSum * vSum) / count) + vdev = (float) squareRoot((vSum2 - ((vSum * vSum) / count)) / count); } hs._stdDev = new HistValue(dev, udev + udev); @@ -470,7 +471,7 @@ public class HistSample { * the HistPair's for the maximum count value and returns it. In the case * where more than one entry shares the maximum count value, then only the * highest value (sort order) value will be returned. - * + * * @return */ public final HistValue mostCommonValue() { @@ -504,7 +505,7 @@ public class HistSample { * case where more than one entyr shares the maximum count value, then only * the highest value (sort order) value will be returned. Works only on * SCALAR and VECTOR. - * + * * @param resolution * @return */ @@ -515,7 +516,7 @@ public class HistSample { // cached? if ((_binnedMostCommonValue != null) - && resolution == _binnedMostCommonValueFactor) { + && (resolution == _binnedMostCommonValueFactor)) { return _binnedMostCommonValue; } @@ -543,11 +544,11 @@ public class HistSample { * Finds and returns the middle value associated with the sample. The middle * value is that value that is halfway between the lowest and highest in * terms of count, and not value. This is a no-op for WEATHER/DISCRETE. - * + * * @return */ public final HistValue middleValue() { - if (_histPairs.size() == 0 + if ((_histPairs.size() == 0) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) || _histPairs.get(0).value().dataType() @@ -564,7 +565,7 @@ public class HistSample { int runningCount = 0; for (int i = 0; i < _histPairs.get(i).count(); i++) { runningCount += _histPairs.get(i).count(); - if ((float) runningCount / (float) _numSamplePoints > 0.50) { + if (((float) runningCount / (float) _numSamplePoints) > 0.50) { hs._middleValue = _histPairs.get(i).value(); return _middleValue; } @@ -577,11 +578,11 @@ public class HistSample { * Description : Returns the absolute minimum value for the sample points. * This is a no-op for WEATHER/DISCRETE. Only the magnitude component for * VECTOR is used for comparison. - * + * * @return */ public final HistValue absoluteMin() { - if (_histPairs.size() == 0 + if ((_histPairs.size() == 0) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) || _histPairs.get(0).value().dataType() @@ -603,11 +604,11 @@ public class HistSample { * Description : REturns the absolute maximum value for the sample points. * This is a no-op for WEATHER/DISCRETE. Only the magnitude component for * VECTOR is used for comparison. - * + * * @return */ public final HistValue absoluteMax() { - if (_histPairs.size() == 0 + if ((_histPairs.size() == 0) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) || _histPairs.get(0).value().dataType() @@ -643,7 +644,7 @@ public class HistSample { * most common value is provide for WEATERH. Outliers are eliminated. * Percent ranges from 0 to 50. For vector, if separateMagDir is true, the * magnitude is averaged separately from the direction. - * + * * @param minpercent * @param maxpercent * @param separateMagDir @@ -653,17 +654,17 @@ public class HistSample { boolean separateMagDir) { HistValue bogus = new HistValue(); HistSample hs = this; - if (_histPairs.size() == 0 || minpercent < 0 || minpercent > 50 - || maxpercent < 0 || maxpercent > 50) { + if ((_histPairs.size() == 0) || (minpercent < 0) || (minpercent > 50) + || (maxpercent < 0) || (maxpercent > 50)) { hs._moderatedAverage = new HistValue(); hs._moderatedAverageMinPercent = hs._moderatedAverageMaxPercent = 0; return _moderatedAverage; } // cached value - if (minpercent == _moderatedAverageMinPercent - && maxpercent == _moderatedAverageMaxPercent - && _moderatedAverage != null) { + if ((minpercent == _moderatedAverageMinPercent) + && (maxpercent == _moderatedAverageMaxPercent) + && (_moderatedAverage != null)) { return _moderatedAverage; } @@ -672,8 +673,8 @@ public class HistSample { hs._moderatedAverageMaxPercent = maxpercent; float runningCount = 0; - int minlimitCount = (int) (minpercent * _numSamplePoints / 100.0); - int maxlimitCount = (int) ((100 - maxpercent) * _numSamplePoints / 100.0); + int minlimitCount = (int) ((minpercent * _numSamplePoints) / 100.0); + int maxlimitCount = (int) (((100 - maxpercent) * _numSamplePoints) / 100.0); switch (_histPairs.get(0).value().dataType()) { case SCALAR: { @@ -684,11 +685,11 @@ public class HistSample { int maxVCount = (int) runningCount + _histPairs.get(i).count(); int numInclude = 0; - if (minlimitCount > maxVCount || maxlimitCount < minVCount) { + if ((minlimitCount > maxVCount) || (maxlimitCount < minVCount)) { numInclude = 0; } else { - numInclude = Math.max(minlimitCount, minVCount) - - Math.min(maxlimitCount, maxVCount) + 1; + numInclude = (Math.max(minlimitCount, minVCount) - Math + .min(maxlimitCount, maxVCount)) + 1; } if (numInclude != 0) { @@ -714,11 +715,12 @@ public class HistSample { + _histPairs.get(i).count(); int numInclude = 0; - if (minlimitCount > maxVCount || maxlimitCount < minVCount) { + if ((minlimitCount > maxVCount) + || (maxlimitCount < minVCount)) { numInclude = 0; } else { - numInclude = Math.max(minlimitCount, minVCount) - - Math.min(maxlimitCount, maxVCount) + 1; + numInclude = (Math.max(minlimitCount, minVCount) - Math + .min(maxlimitCount, maxVCount)) + 1; } if (numInclude != 0) { int tCount = numInclude; @@ -757,11 +759,12 @@ public class HistSample { + _histPairs.get(i).count(); int numInclude = 0; - if (minlimitCount > maxVCount || maxlimitCount < minVCount) { + if ((minlimitCount > maxVCount) + || (maxlimitCount < minVCount)) { numInclude = 0; } else { - numInclude = Math.max(minlimitCount, minVCount) - - Math.min(maxlimitCount, maxVCount) + 1; + numInclude = (Math.max(minlimitCount, minVCount) - Math + .min(maxlimitCount, maxVCount)) + 1; } if (numInclude != 0) { @@ -782,7 +785,8 @@ public class HistSample { } float u = uSum / count; float v = vSum / count; - float mag = binit((float) Math.sqrt(u * u + v * v), _resolution); + float mag = binit((float) Math.sqrt((u * u) + (v * v)), + _resolution); float dir = binit((float) (Math.atan2(u, v) * RAD_TO_DEG), 10.0f); while (dir < 0.0) { @@ -821,29 +825,29 @@ public class HistSample { * points. this is a no-op for WEATHER/DISCRETE. Percent should be between 0 * and 50. This routine eliminates the bottom xx% of sample values and * returns that value. - * + * * @param percent * @return */ public final HistValue moderatedMin(int percent) { HistSample hs = this; - if (_histPairs.size() == 0 || percent < 0 || percent > 50 - || _histPairs.get(0).value().dataType() == GridType.WEATHER - || _histPairs.get(0).value().dataType() == GridType.DISCRETE) { + if ((_histPairs.size() == 0) || (percent < 0) || (percent > 50) + || (_histPairs.get(0).value().dataType() == GridType.WEATHER) + || (_histPairs.get(0).value().dataType() == GridType.DISCRETE)) { hs._moderatedMin = new HistValue(); hs._moderatedMinPercent = 0; return _moderatedMin; // default histValue() } // cached? - if (_moderatedMinPercent == percent && _moderatedMin != null) { + if ((_moderatedMinPercent == percent) && (_moderatedMin != null)) { return _moderatedMin; } hs._moderatedMinPercent = percent; float runningCount = 0; - float limitCount = (float) (percent * _numSamplePoints / 100.0); + float limitCount = (float) ((percent * _numSamplePoints) / 100.0); for (int i = 0; i < _histPairs.size(); i++) { runningCount += _histPairs.get(i).count(); @@ -865,15 +869,15 @@ public class HistSample { * points. This is a no-op for WEATHER/DISCRETE. Percent should be between 0 * and 50. This routine eliminates the top 15% of sample values and returns * that value. - * + * * @param percent * @return */ public final HistValue moderatedMax(int percent) { HistSample hs = this; - if (_histPairs.size() == 0 - || percent < 0 - || percent > 50 + if ((_histPairs.size() == 0) + || (percent < 0) + || (percent > 50) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) || _histPairs.get(0).value().dataType() @@ -884,14 +888,14 @@ public class HistSample { } // cached? - if (_moderatedMax != null && _moderatedMaxPercent == percent) { + if ((_moderatedMax != null) && (_moderatedMaxPercent == percent)) { return _moderatedMax; } hs._moderatedMaxPercent = percent; float runningCount = 0; - float limitCount = (float) (percent * _numSamplePoints / 100.0); + float limitCount = (float) ((percent * _numSamplePoints) / 100.0); for (int i = _histPairs.size() - 1; i >= 0; i--) { runningCount += _histPairs.get(i).count(); @@ -922,7 +926,7 @@ public class HistSample { * most common value is provided for WEATHER/DISCRETE. Outliers are * eliminated based on standard deviation. For vector, if separateMagDir is * true, the magnitude is averaged separately from the direction. - * + * * @param minStdD * @param maxStdD * @param separateMagDir @@ -933,7 +937,7 @@ public class HistSample { HistValue bogus = new HistValue(); HistSample hs = this; - if (_histPairs.size() == 0 || minStdD < 0 || maxStdD < 0) { + if ((_histPairs.size() == 0) || (minStdD < 0) || (maxStdD < 0)) { hs._stdDevAvgMinStdD = hs._stdDevAvgMaxStdD = 0; hs._stdDevMagDir = false; hs._stdDevAvg = new HistValue(); @@ -941,9 +945,9 @@ public class HistSample { } // use cached value if possible - if (_stdDevAvg != null && _stdDevAvgMinStdD == minStdD - && _stdDevAvgMaxStdD == maxStdD - && separateMagDir == _stdDevMagDir) { + if ((_stdDevAvg != null) && (_stdDevAvgMinStdD == minStdD) + && (_stdDevAvgMaxStdD == maxStdD) + && (separateMagDir == _stdDevMagDir)) { return _stdDevAvg; } @@ -955,13 +959,13 @@ public class HistSample { case SCALAR: { float sDev = stdDev().scalar(); float avg = average(true).scalar(); - float minValue = avg - minStdD * sDev; - float maxValue = avg + maxStdD * sDev; + float minValue = avg - (minStdD * sDev); + float maxValue = avg + (maxStdD * sDev); float sum = 0.0f; int count = 0; for (int i = 0; i < _histPairs.size(); i++) { float v = _histPairs.get(i).value().scalar(); - if (v >= minValue && v <= maxValue) { + if ((v >= minValue) && (v <= maxValue)) { sum += _histPairs.get(i).count() * v; count += _histPairs.get(i).count(); } @@ -975,8 +979,8 @@ public class HistSample { case VECTOR: { float sDev = stdDev().scalar(); float avg = average(true).scalar(); - float minValue = avg - minStdD * sDev; - float maxValue = avg + maxStdD * sDev; + float minValue = avg - (minStdD * sDev); + float maxValue = avg + (maxStdD * sDev); float sum = 0.0f; int count = 0; float uSum = 0.0f; @@ -984,7 +988,7 @@ public class HistSample { if (separateMagDir) { for (int i = 0; i < _histPairs.size(); i++) { float v = _histPairs.get(i).value().magnitude(); - if (v >= minValue && v <= maxValue) { + if ((v >= minValue) && (v <= maxValue)) { int tCount = _histPairs.get(i).count(); sum += tCount * _histPairs.get(i).value().magnitude(); count += tCount; @@ -1018,7 +1022,7 @@ public class HistSample { } else { for (int i = 0; i < _histPairs.size(); i++) { float v = _histPairs.get(i).value().magnitude(); - if (v >= minValue && v <= maxValue) { + if ((v >= minValue) && (v <= maxValue)) { int tCount = _histPairs.get(i).count(); count += tCount; uSum += tCount @@ -1038,7 +1042,7 @@ public class HistSample { } float u = uSum / count; float v = vSum / count; - float mag = binit((float) (Math.sqrt(u * u + v * v)), + float mag = binit((float) (Math.sqrt((u * u) + (v * v))), _resolution); float dir = binit((float) (Math.atan2(u, v) * RAD_TO_DEG), 10.0f); @@ -1075,15 +1079,15 @@ public class HistSample { * Description : Returns the representative minimum value for the sample * points. This is a no-op for WEATHER/DISCRETE. Based on standard * deviations. - * + * * @param stdD * @return */ public final HistValue stdDevMin(float stdD) { HistSample hs = this; - if (_histPairs.size() == 0 - || stdD < 0 + if ((_histPairs.size() == 0) + || (stdD < 0) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) || _histPairs.get(0).value().dataType() @@ -1094,7 +1098,7 @@ public class HistSample { } // use cached value if possible - if (_stdDevMin != null && _stdDevMinD == stdD) { + if ((_stdDevMin != null) && (_stdDevMinD == stdD)) { return _stdDevMin; } @@ -1102,7 +1106,7 @@ public class HistSample { float sDev = stdDev().scalar(); float avg = average(true).scalar(); - float minValue = avg - stdD * sDev; + float minValue = avg - (stdD * sDev); if (_histPairs.get(0).value().scalar() > minValue) { minValue = _histPairs.get(0).value().scalar(); } @@ -1118,15 +1122,15 @@ public class HistSample { * Description : Returns the representative maximum value for the sample * points. This is a no-op for WEATHER/DISCRETE. Based on standard * deviations. - * + * * @param stdD * @return */ public final HistValue stdDevMax(float stdD) { HistSample hs = this; - if (_histPairs.size() == 0 - || stdD < 0 + if ((_histPairs.size() == 0) + || (stdD < 0) || _histPairs.get(0).value().dataType() .equals(GridType.DISCRETE) || _histPairs.get(0).value().dataType() @@ -1137,14 +1141,14 @@ public class HistSample { } // use cached value if possible - if (_stdDevMax != null && _stdDevMaxD == stdD) { + if ((_stdDevMax != null) && (_stdDevMaxD == stdD)) { return _stdDevMax; } hs._stdDevMaxD = stdD; float sDev = stdDev().scalar(); float avg = average(true).scalar(); - float maxValue = avg + stdD * sDev; + float maxValue = avg + (stdD * sDev); if (_histPairs.get(_histPairs.size() - 1).value().scalar() < maxValue) { maxValue = _histPairs.get(_histPairs.size() - 1).value().scalar(); } @@ -1156,14 +1160,14 @@ public class HistSample { /** * OUtputs the histogram for this grid, but binned by the specified float * value. This only applies to SCALAR and VECTOR data. - * + * * @param resolution * @return */ public List binnedHistogram(float resolution) { HistSample hs = this; - if (_histPairs.size() == 0 - || resolution <= 0.0 + if ((_histPairs.size() == 0) + || (resolution <= 0.0) || _histPairs.get(0).value().dataType().equals(GridType.NONE) || _histPairs.get(0).value().dataType() .equals(GridType.WEATHER) @@ -1230,7 +1234,7 @@ public class HistSample { /** * Description : Bins the data sample based on the resolution - * + * * @param v * @param resolution * @return @@ -1255,7 +1259,7 @@ public class HistSample { * that the grid is valid and grid and Grid2DBit sizes match. Ensures there * are points in the sample area. Switch cases on data type and then * extracts out the data for each sample point. - * + * * @param grid * @param area * @param cachePoints @@ -1310,7 +1314,7 @@ public class HistSample { /** * If the sample was of scalars this function is called - * + * * @param grid * @param area * @param cachePoints @@ -1469,7 +1473,7 @@ public class HistSample { ParmID parmId = grid.getGridInfo().getParmID(); Grid2DByte gs = ((DiscreteGridSlice) grid).getDiscreteGrid(); String siteId = parmId.getDbId().getSiteId(); - DiscreteKey[] key = ((DiscreteGridSlice) grid).getKey(); + DiscreteKey[] key = ((DiscreteGridSlice) grid).getKeys(); for (int x = ll.x; x <= ur.x; x++) { for (int y = ll.y; y <= ur.y; y++) { if (area.get(x, y) != 0) { @@ -1525,7 +1529,7 @@ public class HistSample { /** * Description : counts the number of sample points and returns the number - * + * * @return */ private int countSamplePoints() { @@ -1553,7 +1557,7 @@ public class HistSample { /** * Description : Returns the sample's valid time - * + * * @return */ public final TimeRange validTime() { @@ -1562,7 +1566,7 @@ public class HistSample { /** * Description : Returns the histogram associated with this sample - * + * * @return */ public final HistPair[] histogram() { @@ -1571,7 +1575,7 @@ public class HistSample { /** * Description : Returns the number of points associated with this sample - * + * * @return */ public int numOfPoints() { diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/smarttool/script/SmartToolController.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/smarttool/script/SmartToolController.java index cb64d5e49e..6189a285c4 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/smarttool/script/SmartToolController.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/smarttool/script/SmartToolController.java @@ -70,6 +70,7 @@ import com.raytheon.viz.gfe.core.wxvalue.WxValue; * ------------ ---------- ----------- -------------------------- * Oct 20, 2008 njensen Initial creation * Oct 29, 2013 2476 njensen Renamed numeric methods to numpy + * 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @author njensen @@ -201,7 +202,7 @@ public class SmartToolController extends BaseGfePyController { Set set = null; String[] tools = new String[0]; try { - if (parmName == null && parmTypeName == null) { + if ((parmName == null) && (parmTypeName == null)) { set = (Set) execute("getScripts", INTERFACE, null); } else { HashMap argMap = new HashMap(2); @@ -325,7 +326,7 @@ public class SmartToolController extends BaseGfePyController { jep.set("discreteGridData", grid); jep.eval("discreteGridNumpy = discreteGridData.__numpy__"); jep.eval("discreteGridNumpy = discreteGridNumpy[0]"); - DiscreteKey[] keys = grid.getDiscreteSlice().getKey(); + DiscreteKey[] keys = grid.getDiscreteSlice().getKeys(); ArrayList stringKeys = new ArrayList(); for (DiscreteKey k : keys) { stringKeys.add(k.toString()); diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/ifpAG/ASCIIGrid.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/ifpAG/ASCIIGrid.java index 6ac020ea38..04276f8595 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/ifpAG/ASCIIGrid.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/ifpAG/ASCIIGrid.java @@ -71,6 +71,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * Apr 13, 2011 #8393 dgilling Initial creation * 02/19/13 #1637 randerso Added exception handling for Discrete and Weather + * 10/31/2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -139,7 +140,7 @@ public class ASCIIGrid { * @return */ public boolean translateGrid(int index, GridParmInfo destGPI) { - if ((index < 0) || (index > gridSlices.size() - 1)) { + if ((index < 0) || (index > (gridSlices.size() - 1))) { return false; } @@ -337,7 +338,7 @@ public class ASCIIGrid { for (int i = discrete.getDiscreteGrid().getYdim() - 1; i >= 0; i--) { for (int j = 0; j < discrete.getDiscreteGrid() .getXdim(); j++) { - String key = discrete.getKey()[discrete + String key = discrete.getKeys()[discrete .getDiscreteGrid().get(j, i)].toString(); outputStream.println(key); } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java index a84ae30caa..605990fe45 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java @@ -111,6 +111,7 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * 06/13/13 #2044 randerso Pass in GridDbConfig as construction parameter * 07/30/13 #2057 randerso Added a static deleteDatabase method * 08/05/13 #1571 randerso Refactored to store GridParmInfo and ParmStorageinfo in postgres database + * 10/31/2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -1664,7 +1665,7 @@ public class IFPGridDatabase extends GridDatabase { StringBuffer sb = new StringBuffer(); boolean first = true; - for (DiscreteKey key : slice.getKey()) { + for (DiscreteKey key : slice.getKeys()) { if (first) { first = false; } else { diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java index c7d09ee0e8..96e2c1653f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java @@ -68,7 +68,8 @@ import com.vividsolutions.jts.geom.Coordinate; * Aug 11, 2009 njensen Initial creation * Mar 06, 2013 1735 rferrel Change to retrieve multiple points * in a single grid request. - * Jun 13, 2013 #2044 randerso Refactored to use IFPServer + * Jun 13, 2013 #2044 randerso Refactored to use IFPServer + * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -213,7 +214,7 @@ public class GetPointDataHandler extends BaseGfeRequestHandler implements } else if (slice instanceof DiscreteGridSlice) { DiscreteGridSlice gs = (DiscreteGridSlice) slice; byte value = gs.getDiscreteGrid().get(x, y); - String key = gs.getKey()[value].toString(); + String key = gs.getKeys()[value].toString(); Type type = Type.STRING; view.setData(param, type, unit, key); } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py index 5cc3fc9ae3..6c7dfcbd24 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py @@ -70,6 +70,7 @@ from com.raytheon.uf.common.localization import LocalizationContext_Localization # 08/09/2013 1571 randerso Changed projections to use the Java # ProjectionType enumeration # 09/20/13 2405 dgilling Clip grids before inserting into cache. +# 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() # # Original A1 BATCH WRITE COUNT was 10, we found doubling that @@ -140,18 +141,12 @@ class WECache(object): elif gridType == "VECTOR": vecGrids = grid.__numpy__ return (clipToExtrema(vecGrids[0], clipArea), clipToExtrema(vecGrids[1], clipArea)) - elif gridType == "WEATHER": + elif gridType == "WEATHER" or gridType =="DISCRETE": keys = grid.getKeys() keyList = [] for theKey in keys: keyList.append(theKey.toString()) return (clipToExtrema(grid.__numpy__[0], clipArea), keyList) - elif gridType =="DISCRETE": - keys = grid.getKey() - keyList = [] - for theKey in keys: - keyList.append(theKey.toString()) - return (clipToExtrema(grid.__numpy__[0], clipArea), keyList) def __encodeGridHistory(self, histories): retVal = [] diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py index 059b560bd2..efa1451c05 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py @@ -82,6 +82,7 @@ from com.raytheon.uf.edex.database.cluster import ClusterTask # 06/05/13 2063 dgilling Change __siteInDbGrid() to # call IFPWE.history() like A1. # 09/05/13 2307 dgilling Fix breakage caused by #2044. +# 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() # # @@ -204,18 +205,12 @@ class WECache(object): elif gridType == "VECTOR": vecGrids = grid.__numpy__ return (vecGrids[0], vecGrids[1]) - elif gridType == "WEATHER": + elif gridType == "WEATHER" or gridType =="DISCRETE": keys = grid.getKeys() keyList = [] for theKey in keys: keyList.append(theKey.toString()) return (grid.__numpy__[0], keyList) - elif gridType =="DISCRETE": - keys = grid.getKey() - keyList = [] - for theKey in keys: - keyList.append(theKey.toString()) - return (grid.__numpy__[0], keyList) def __encodeGridHistory(self, histories): retVal = [] diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java index 39007b88d0..9a0eb09dd5 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java @@ -36,7 +36,6 @@ import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridLocation; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridParmInfo; -import com.raytheon.uf.common.dataplugin.gfe.discrete.DiscreteKey; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DByte; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DFloat; import com.raytheon.uf.common.dataplugin.gfe.grid.IGrid2D; @@ -73,6 +72,7 @@ import com.raytheon.uf.common.util.StringUtil; * May 02, 2013 1949 bsteffen Update GFE data access in Product * Browser, Volume Browser, and Data Access * Framework. + * 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() * * * @@ -221,7 +221,7 @@ public class GFEGridFactory extends AbstractGridDataPluginFactory implements } else if (slice instanceof DiscreteGridSlice) { DiscreteGridSlice castedSlice = (DiscreteGridSlice) slice; data = castedSlice.getDiscreteGrid(); - DiscreteKey[] dKeys = castedSlice.getKey(); + Object[] dKeys = castedSlice.getKeys(); String[] keys = new String[dKeys.length]; for (int i = 0; i < dKeys.length; i++) { keys[i] = dKeys[i].toString(); @@ -285,7 +285,7 @@ public class GFEGridFactory extends AbstractGridDataPluginFactory implements } private GFERecord asGFERecord(Object obj) { - if (obj instanceof GFERecord == false) { + if ((obj instanceof GFERecord) == false) { throw new DataRetrievalException(this.getClass().getSimpleName() + " cannot handle " + obj.getClass().getSimpleName()); } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/slice/DiscreteGridSlice.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/slice/DiscreteGridSlice.java index 423e78af45..93770e0cfd 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/slice/DiscreteGridSlice.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/slice/DiscreteGridSlice.java @@ -44,7 +44,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.TimeRange; /** - * TODO Add Description + * Grid slice for Discrete weather elements * *
  * SOFTWARE HISTORY
@@ -58,6 +58,7 @@ import com.raytheon.uf.common.time.TimeRange;
  * 08/13/2013   1571       randerso    Removed toString to stop it from hanging the 
  *                                     debugger when trying to display the grid
  * 10/29/2013   2476       njensen     Updated getNumpy() and added getKeyList()
+ * 10/31/2013   2508       randerso    Added getKeys(), deprecated getKey()
  * 
* * @author chammack @@ -75,7 +76,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { private String cacheId; @DynamicSerializeElement - private DiscreteKey[] key; + private DiscreteKey[] keys; /** * Constructor for serialization only. @@ -97,7 +98,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { Grid2DByte aGrid, DiscreteKey[] aKey) { super(validTime, gfeRecord); setDiscreteGrid(aGrid); - key = aKey; + keys = aKey; } /** @@ -113,7 +114,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { GridDataHistory[] history, Grid2DByte aGrid, DiscreteKey[] aKey) { super(validTime, gpi, history); setDiscreteGrid(aGrid); - key = aKey; + keys = aKey; } public DiscreteGridSlice(TimeRange validTime, GridParmInfo gpi, @@ -151,8 +152,8 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { Grid2DByte grid = rhs.getDiscreteGrid().clone(); setDiscreteGrid(grid); - this.key = new DiscreteKey[rhs.key.length]; - System.arraycopy(rhs.key, 0, this.key, 0, rhs.key.length); + this.keys = new DiscreteKey[rhs.keys.length]; + System.arraycopy(rhs.keys, 0, this.keys, 0, rhs.keys.length); } @Override @@ -178,11 +179,11 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { discreteGrid.assign(gsDiscreteGrid); setDiscreteGrid(discreteGrid); - this.key = new DiscreteKey[slice.key.length]; - System.arraycopy(slice.key, 0, this.key, 0, slice.key.length); + this.keys = new DiscreteKey[slice.keys.length]; + System.arraycopy(slice.keys, 0, this.keys, 0, slice.keys.length); } else { setDiscreteGrid(null); - this.key = new DiscreteKey[0]; + this.keys = new DiscreteKey[0]; } } @@ -237,8 +238,8 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { byte[] thisData = grid.getBuffer().array(); byte[] rhsData = rhsGrid.getBuffer().array(); for (int i = 0; i < thisData.length; i++) { - if (!this.key[0xFF & thisData[i]] - .equals(rhsDiscreteGridSlice.key[0xFF & rhsData[i]])) { + if (!this.keys[0xFF & thisData[i]] + .equals(rhsDiscreteGridSlice.keys[0xFF & rhsData[i]])) { return false; } } @@ -254,7 +255,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { * @return null if everything was ok, otherwise the reason why not */ public String checkKeyAndData() { - int keyLength = key.length; + int keyLength = keys.length; Grid2DByte discreteGrid = getDiscreteGrid(); byte[] b = discreteGrid.getBuffer().array(); for (int i = 0; i < b.length; i++) { @@ -278,10 +279,10 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { * @return null if the key is ok, otherwise the reason why not */ public String checkKey() { - for (int i = 0; i < key.length; i++) { - if (!this.key[i].isValid()) { + for (int i = 0; i < keys.length; i++) { + if (!this.keys[i].isValid()) { return "Invalid Key found in Grid. Key Position is " + i - + " Key is: " + key[i].getOrigStr(); + + " Key is: " + keys[i].getOrigStr(); } } return null; @@ -316,19 +317,19 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { // find a key match byte dByte = 0; boolean found = false; - for (int k = 0; k < key.length; k++) { - if (key[k].equals(aValue)) { + for (int k = 0; k < keys.length; k++) { + if (keys[k].equals(aValue)) { dByte = (byte) k; found = true; } } if (!found) { - DiscreteKey newKey[] = new DiscreteKey[key.length + 1]; - System.arraycopy(key, 0, newKey, 0, key.length); + DiscreteKey newKey[] = new DiscreteKey[keys.length + 1]; + System.arraycopy(keys, 0, newKey, 0, keys.length); newKey[newKey.length - 1] = aValue; - key = newKey; - dByte = (byte) (key.length - 1); + keys = newKey; + dByte = (byte) (keys.length - 1); } for (int i = ll.x; i <= ur.x; i++) { @@ -370,23 +371,23 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { if (editArea.get(i, j) != 0) { // Get the DiscreteKey from the source grid byte dByte = gsDiscreteGrid.get(i, j); - DiscreteKey dKey = gs.key[0xFF & dByte]; + DiscreteKey dKey = gs.keys[0xFF & dByte]; // See if this key already exists in target grid boolean found = false; byte keyIndex = 0; - for (int k = 0; k < key.length; k++) { - if (key[k] == dKey) { + for (int k = 0; k < keys.length; k++) { + if (keys[k] == dKey) { found = true; keyIndex = (byte) k; } } if (!found) // not found, so add the key { - DiscreteKey newKey[] = new DiscreteKey[key.length + 1]; - System.arraycopy(key, 0, newKey, 0, key.length); + DiscreteKey newKey[] = new DiscreteKey[keys.length + 1]; + System.arraycopy(keys, 0, newKey, 0, keys.length); newKey[newKey.length - 1] = dKey; - key = newKey; - keyIndex = (byte) (key.length - 1); + keys = newKey; + keyIndex = (byte) (keys.length - 1); } discreteGrid.set(i, j, keyIndex); @@ -414,19 +415,19 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { // find a key match byte dByte = 0; boolean found = false; - for (int k = 0; k < key.length; k++) { - if (key[k].equals(aValue)) { + for (int k = 0; k < keys.length; k++) { + if (keys[k].equals(aValue)) { dByte = (byte) k; found = true; } } if (!found) { - DiscreteKey newKey[] = new DiscreteKey[key.length + 1]; - System.arraycopy(key, 0, newKey, 0, key.length); + DiscreteKey newKey[] = new DiscreteKey[keys.length + 1]; + System.arraycopy(keys, 0, newKey, 0, keys.length); newKey[newKey.length - 1] = aValue; - key = newKey; - dByte = (byte) (key.length - 1); + keys = newKey; + dByte = (byte) (keys.length - 1); } Grid2DByte discreteGrid = getDiscreteGrid(); @@ -448,22 +449,22 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { Grid2DByte discreteGrid = gs.discreteGrid.clone(); List currentKeys = new ArrayList( - Arrays.asList(this.key)); + Arrays.asList(this.keys)); byte[] data = discreteGrid.getBuffer().array(); int thisB; for (int i = 0; i < data.length; i++) { thisB = 0xFF & data[i]; byte keyIndex; - if ((keyIndex = (byte) currentKeys.indexOf(gs.key[thisB])) != -1) { + if ((keyIndex = (byte) currentKeys.indexOf(gs.keys[thisB])) != -1) { data[i] = keyIndex; } else { data[i] = (byte) currentKeys.size(); - currentKeys.add(new DiscreteKey(gs.key[thisB])); + currentKeys.add(new DiscreteKey(gs.keys[thisB])); } } setDiscreteGrid(discreteGrid); - this.key = currentKeys.toArray(new DiscreteKey[currentKeys.size()]); + this.keys = currentKeys.toArray(new DiscreteKey[currentKeys.size()]); return true; } @@ -478,7 +479,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { */ public Grid2DBit eq(DiscreteKey value) { if (!value.isValid()) { - throw new IllegalArgumentException("Supplied key is invalid"); + throw new IllegalArgumentException("Supplied keys is invalid"); } Grid2DByte discreteGrid = getDiscreteGrid(); @@ -489,8 +490,8 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { // Get or make a Discrete byte dByte = 0; boolean found = false; - for (int k = 0; k < key.length; k++) { - if (key[k].equals(value)) { + for (int k = 0; k < keys.length; k++) { + if (keys[k].equals(value)) { dByte = (byte) k; found = true; } @@ -545,17 +546,17 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { // Check for each value // Get the list of subkey permutations from the value given - List searchKeys = key[0].descriptionSubKeys(value); + List searchKeys = keys[0].descriptionSubKeys(value); // Get the byte values that correspond to the specified textStrings List byteValues = new ArrayList(); // Check each discrete key for a match of a subkey - for (int i = 0; i < key.length; i++) { + for (int i = 0; i < keys.length; i++) { // Check each subkey - for (int j = 0; j < key[i].getSubKeys().size(); j++) { + for (int j = 0; j < keys[i].getSubKeys().size(); j++) { for (int k = 0; k < searchKeys.size(); k++) { - if (key[i].getSubKeys().get(j).equals(searchKeys.get(k))) { + if (keys[i].getSubKeys().get(j).equals(searchKeys.get(k))) { byteValues.add((byte) i); break; } @@ -604,7 +605,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { byte[] rhsB = gs.getDiscreteGrid().getBuffer().array(); byte[] b = bits.getBuffer().array(); for (int i = 0; i < thisB.length; i++) { - if (key[0xFF & thisB[i]].equals(gs.key[0xFF & rhsB[i]])) { + if (keys[0xFF & thisB[i]].equals(gs.keys[0xFF & rhsB[i]])) { b[i] = (byte) 1; } } @@ -639,9 +640,9 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { * for duplicate keys, set all locations in grid that match that key to * the "first" of the duplicate keys */ - for (int i = 0; i < (key.length - 1); i++) { - for (int j = i; j < key.length; j++) { - if (key[i].equals(key[j])) { + for (int i = 0; i < (keys.length - 1); i++) { + for (int j = i; j < keys.length; j++) { + if (keys[i].equals(keys[j])) { discreteGrid.setAllOfValue((byte) j, (byte) i); } } @@ -666,11 +667,11 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { .hasNext(); keyIndex++) { byte thisByte = usedKeysI.next(); discreteGrid.setAllOfValue(thisByte, (byte) keyIndex); - newKey[keyIndex] = key[0xFF & thisByte]; + newKey[keyIndex] = keys[0xFF & thisByte]; } setDiscreteGrid(discreteGrid); - key = newKey; + keys = newKey; } @Override @@ -688,9 +689,9 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { aGrid = aGrid.clone(); } - DiscreteKey[] aKey = new DiscreteKey[this.key.length]; + DiscreteKey[] aKey = new DiscreteKey[this.keys.length]; for (int i = 0; i < aKey.length; i++) { - aKey[i] = new DiscreteKey(this.key[i]); + aKey[i] = new DiscreteKey(this.keys[i]); } return new DiscreteGridSlice(aValidTime, aGpi, aHistory, aGrid, aKey); } @@ -742,12 +743,23 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { } /** - * Return the discrete key + * Return the discrete keys * - * @return the discrete key + * @return the discrete keys + * @deprecated use getKeys() instead */ + @Deprecated public DiscreteKey[] getKey() { - return this.key; + return this.keys; + } + + /** + * Return the discrete keys + * + * @return the discrete keys + */ + public DiscreteKey[] getKeys() { + return this.keys; } public void setDiscreteGrid(Grid2DByte grid) { @@ -781,7 +793,7 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { } public void setKey(DiscreteKey[] key) { - this.key = key; + this.keys = key; } public void setKey(List key) { @@ -854,8 +866,8 @@ public class DiscreteGridSlice extends AbstractGridSlice implements Cloneable { } public List getKeyList() { - List list = new ArrayList(key.length); - for (DiscreteKey k : key) { + List list = new ArrayList(keys.length); + for (DiscreteKey k : keys) { list.add(k.toString()); } return list; From a89b081ba59deee2df0417ea6985b1d2dc9c97d3 Mon Sep 17 00:00:00 2001 From: Bryan Kowal Date: Thu, 31 Oct 2013 14:53:02 -0500 Subject: [PATCH 5/5] Issue #2476 - recompile jep for RHEL5 32-bit, RHEL5 64-bit, and Windows 32-bit Former-commit-id: 60904307b5dbc1ec2335e234dc8698563a3e4ea4 [formerly ecda7100bea4e4e844669a4b145992fa75015225] [formerly c74123f5a8248a04c495606b4acf392796e96a89] [formerly 60904307b5dbc1ec2335e234dc8698563a3e4ea4 [formerly ecda7100bea4e4e844669a4b145992fa75015225] [formerly c74123f5a8248a04c495606b4acf392796e96a89] [formerly e9b76cf1857fef3cf277b69bcb7c4b9717909524 [formerly c74123f5a8248a04c495606b4acf392796e96a89 [formerly be179f2809180da7812a9f4b53b48870b13191ae]]]] Former-commit-id: e9b76cf1857fef3cf277b69bcb7c4b9717909524 Former-commit-id: df0ae3ba9416ae72c68d46660c3f5a6d83018710 [formerly 02cdbe01735271506d51c145fff8e4c10859f8b0] [formerly 9902031682720d70e9b58e2fde57c57da41262d1 [formerly d08a1af4572221ee621f305f4bc30e0ff54a53fa]] Former-commit-id: 2287564d3c4d6587a1fef7d747e5c4b647a3d562 [formerly 71b5ef473300123080686411e93fdb6411e350e3] Former-commit-id: 44d773b66358d07a67ddb7212b7de9bf262ad6ea --- cots/org.jep.linux32/libjep.so | Bin 1803722 -> 1803944 bytes cots/org.jep.linux64/libjep.so | Bin 2104098 -> 2106730 bytes cots/org.jep.win32/jep.dll | Bin 74752 -> 75264 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/cots/org.jep.linux32/libjep.so b/cots/org.jep.linux32/libjep.so index 310f818ec8263ac4c02751abfbac23405ab62a93..7c13a397165f26e3d46f57513e86bf83db9e6f97 100644 GIT binary patch delta 632505 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 gBS(#%&^T&T2L42w4y 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 z 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%0AgI2Ykb3Pz6JBSdPe1IVR1xe=92j z3%%G_AveeZ>z5bHdf6n`%QjEczjhT2%hVYE03n$!Gi0XBmN_z47RW+bBuiweETgRd z6)LEdRkB*v$cSu`EwWX%$#&TxyJWZQk-gBX|AQ(Rk|T0dj>&O3A*ZAX`gbfS<7J{u zk|{D(hJtvf$@-nHf()4{vt^FVl?Ad;7ReIXB-hIcY3AxgW>*Uy!JRB$*;pWk{yW z44EmjWsc011+q{U$r4!_)(Lw3n-*&};p zpX`?da!?M*VL5V|>i?(;#^ku1kW&O3A*ZBSq(>m*Wui=yDKb@tWV#GzXdzQ(%N&_23uK`z zk|nZKmdOfPDXV0)tnm$-hzgoyi)@u`vR!t_F4--6WUuU#{c=DK${|nGzhM=O$Wb{a z$K`~alIBc30vRt8Ws*#hsWK$fDeHfR3NmH3%#pdWKo-g(St3hinXHhNvPxFV8tB#k zhzgoyi)@u`vR!t_F4--6WUuU#{c=DK%Aqq=|A$pDE+^!qG-v5n%Q%@T(`1Isk~uP8 z7Rq8-dY0;cxe6-f3RxrTWxMQ@-ExEMlbhtA+$=|ARE~$WFey!;f2DCUQ6|e&nIR+V_R>&GzFI(h#*)BU}x7;B6NH_H(jrL6zs zDwvdJvF?COl*uwxrpXMMC39rHER@BvRF*@p{#UACg{+bFvPG_!?XpvL%MG$mZjys? zvmBAp#j5|~DwvdJiSB?*l*uwxrpXMMC39rHER@BvRF*GM{jXHP3RxrTWs6)d+hwQh zmK$WB+$2Y2RF2EZuog^_u2?3@WSJ_{WQNR=IWk`s%3@h6%Vnhuuh2q`td}ivy=<3# zvR`hJ19DIf$<1u8pu!*W*OpeP5IVFSmdug02ikFEpNhZq_nJPmvO{U8X&ocD? zRgfjKWvMKem2!owk@d1gu9xkybE*5~6@fEdW_chnkmfEZ$A1}-@2)BL{>DKaDR&Qo z@Yp5(6;4WXslT2j2jpfsBD>1`{Wi!xS#z0R9+54wRkq6x->~UZLBAZ7L(*LCA228r zWs*#lA(6_mNJZwM@Op&J8<;dYgE%0AgI2jrj}lEZRDj><7P zE+^!aG*{>%eZwYR1&K0ArpQzolIb!-X389yD+^_jtdv!9g(n(_8WlujlWdW#vQ4(j z4%sEUWsmHYeX?JUT`#YuGbxqi84v1 z%8<;EnKDO)bG1+?i)4u`m1VL*nj3WjGF~RiB$*;pWk{y`hE3B-|3K?ym)tCe<%FD+ zNw@i*E0txkLRQKuSuJa1#1r+eNd+ykRkq1?*&(}Rx9pL80w zk)tvy$K<%2kdtysnuzY4jFa&)Q6^Dl`D7KO$W$4UX);}A$V{0fvt^FVmHDzj7Rn;H zBYSqmDkzD#k8TbuK)2}go6$R3;bL!L@2Jkdo=F+E+Fy^CNitcc$dJsCS+ZL8$$q&> z4#+{@uo+UpW*L=Za$HWxNjW9W9XjF1e3NCm%#>L&R~CBW2^FiLOjgJ$*(%56q|EN{ zzpzji$v(MB4#*)nEJr9KWK;#_asPlp87~uMl1!1QG9=SwhRl@NGDqghLg@7aid0Y{ zOJ$j?kd?AZR?8Y0kxjBiw#qiyE;}AqKcGtm-Lgma%0AgI2jrj}lEZRDj><7PE+?dU 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

l3UXi+m!ulq!d@tBk& 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�}%O%AF#DhDSr<^xfg|(yJ@s#698iTQs-A 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
  • zIQM9cs=+x|lfs<@RoodlO$6SBx5pIje5;`F8k#2Fq8gk89=BMIfs-Jta2Maz3U>n3 zDBKCq0(|@azdt1i?C)1~Za!>Tt?+bz;7NsNC|RAtb3@TT?Zd_Xx#4JN^fk!-|7=Vo zr|>B8yuzI(in$4Onu}I|eyPH(CXD~psfNkaL`LCG6QL=74b5Z!3WYm~!y2c+3Bj%Z zyP3Leb-fzkBxq2$vtF zi!;H~oKRBXPJqC42(WGc{~iaFvcVB@5(E|QB#0{92~ewWCqSJamuv0Za+UJb$}w(Y z9ETL{B*-Yd#Vs}pcLHP;4grk+@!ZWZcISTO3U?AzDBKCqpzvR*(VW7a0Fjwu0>j@i zZvP%~c$H~rg*yqN3U?+*E8Ll&QQ=O2rdGI(KPN#I&sN=p`f)-rg*yof3NQa00<39<@z63E%B?dW{SU3M#1 zxD%j4;mJ7TzCkrilaZypYlel7u zUx2SU(TKvs3%LKU*A3mlAgAzMK0sn=Qn-^iuW%=EAnKox6F3-G4Nl@pg~#S%LRAWP z5;rM4!>B1JJWLZ;F2#hl?f*mFz#zs3=M%jtagD;A#0iBvi8Bg!5@-E*eA|tLW`Bd1 zn~e#zDBMY0bA(@|<2li!!d+Mfj`a6G%=Q=mD^(3Hu>=+F!ZNCGmsn~Q?!vN8;ZA_k zWilb-|4!8_DM83Iw8EVP8HG2|#tjO00%R5L1n`z`r*GrWNl@OZ!A!tOP@!-qL4(52 zp#V9BI{_j`ZD(xgdtY=${8y<4CqY!2RCoCHCII|-r+cP6M+xD%jG;oJ8ArN_D%f$>yM zD5P*FK}O**`cQ+yod8*dI|1U}ael_`hGV(HodgvMcP401cohZ6DclJVIo|T!zW=YI z1XXC*7M4zesKT8DX@$Gn>x~L`0yOz>vA>g`>IAn3oaUdj6tN#Lp7u#=!%;ZA}Ig*yQn6yE+rXf&sA5diTYN%$qsQ-Ugu(^sMjcLJmp?gVI5 zxD%i$p=RVHs5;X>p+qT8MxzS%h^G}^G#1~_s8@Kn6X;|e4*5N=FICj&8n6wJR~%qK zUg5*pzggjtuIL{;%P+v|J@MRdxx(WK&M2fB5}iS)QsH+#1VRyoM?0W@mBO=KfX5Vm zDjr&mdo`*d!~qF~XPoL3?w*LwD||dPQWcNGPW8B=H)B-$A@i;WrXbEBrCy*>lwX|6VpUssS$&Z&vt|#NEXur=dsreX8)e zehq!d{*~Ks#@|$)!BlT+K>Yo{0WpQ|mPbZQDtrgxbqe2;c!R<_#o3Tm4TFg172b<@ z#d&_oy6}Odh{D|(QKRsjJo{xzyjC@YnNaE#9_5XSoWdh~(y>Y5Zn4QL+@Sh`GBsc@IWs}$~1c*~`J4UOkZMFPpzxY$3p5UMEkHOOOm)xawh?p**p ztnlmx5Ux^qo^+}e9y4@||0PvJmJ-!#{75ivRJfM{<0geiF9%-AiMi+q^G6sGf?NN0 z4esm8X*HmMs;gIcxE2gD3eS_V(}<&AxQqg9?~nM4Z9qeAdxQ1P;3nWr3Xfe6Jg@PM zz?&7Gz8ZKz;nB;v|8G$Zg;OxVy9^R;li)<)#R|`{e?Z~hBJ{6Rc)kXBB(53)C!nE9 z;f3RYM>Wm~TRN>`6A_E2$KDZHhxx$@b6@EPK zMM)^^Z}48_gen!DznB_Qc<=(4Dys16jo7eMD?D_Dp(FlRqZ$(HK`5c{)g)A_@B;He zox;Nxf=*iDAG>HWxbc6d>L_jBpa#@YLs^A?Lqd%Tk3^xNyu$xv|K?V>jlb9u3}|W9 zVB_y1NZ>J^-9&4?hK-9A?kxtLQiUfj2A!b7SAEUv|K+M7$grtUc!D|IWi~gVUB1PH zs#X62qoYRQjnruEPt=yo&w9 z3ZIMqaj#M}Odz3%!Xw116kbOLQH9TE|7wLduz$?rqJO8-r5sSB26(?f;)KG_VEF`2%D#4A;U$A*Z)10+M}}w*L>O!LZ?aKjWXtIH&L+8CTul@1G{)gu)}wVnU7&eJ<{O{5(uh z$q6`T3~)e|!n4#^(=C3+6aE67g2ICzfpLq%6CWB}{IB#@KcQSVyk)ms;laDmFQo7o z@tDFBoOq4GgPSp-gu#vfJBc$dp`lg}cm;T!!gE`J*DE~D2{kJ`+Zlq@+_qg{8-Epl zLv_hk4JQ7QFM>g7{q_L{k5PiK!jr@+6&}uDeCfaZbf*5z{eMU`Bq&*f!V6@OS9pLE zZB}@Kj2mwEGhRx8bGNJgf9z#Q9K6FnAh-p1MB#bbxav-S|J7s=Q+S5-3l2yAlP{ay zNCN-%6UviuUg6>PxWUk@@UKgN7Zg696Y}UA&gbGo55NHD-L4@(RhO#)nNOjKkizqy z0I$&ayTHQ=Pkd%^+5fACKry^DqVS*xyh`E8SHU2v@Jtu>r`+v#lEhuc6Hv6&_@CG$}kmI(dbkOFGR8k4nC= z{@0=!vLxi)?RUl`2^A~cD}|~{HNFYsg9=YGRhQqb_W!Zppy~=WAWTAGgKY`1bvO;ad$=*)j@`7~J?@gK7vL4yVg%{9!O`Qh1gOniU=*oj`+sqS^cLf2H8o z|D8$`kD#GS4TwGpyiVcy$(X3ei8(s%biG*N?sPr49Y_3iDZ(ODzP-VQU+_UN4kaBdt8RjMI+6Y!|Q!<&FtD?E}09#eQG1-wS#iJ8C?an%rI zL#@VX%cR1Cdx21$!ZXJKPb)lpBJg_R+xGu~8Z>0ofY1rR8x$Tq9(Y#a$yLA`6&{)f zJm<&bUY5T;+~jZYoF?)L&qY9}S>XX{sG#t|eDsgdxt)_{Z#KC2UzKX`PQ!qh!rg>i zlsH1}yubE;^siHRY)3eI+Th0j9U*t#U#|v4&clQn6rN>tWEJkt`x_PR1ZZl7+xTjy4FIt}$F+uUB~H zP2dd*58MO1@&D0v-+|7P<@>-Nkx_P$Ra7J_Dbu0|Wrtl9Br?km(~2k+L<)`s1*xc5 z5v3|fMAU+esHjyD;-nyIK}JP{FoXgE6%~sh{F2<)-8R?v_ntpEyr27d?q{cIPfrhd zgbo#cyD&rP`iGB5h0!x%4QRswxqXu~ z+?zShpElh3T|Uv~Xt+aeVXFJ&_HEKYL>^&a19IctBMp}B$Tu8g&C2YzN&{8)P`pMS zJtTkMvGn_V{6HOO5ItWT~38;H;E|6`17L={4eY)l?wWc@$n zM`mMWLvkJ1H0R0s>&Oa!%qNO4f;zd5phfPZqiu2%%M$1XNv}6{dc8^aUr#R#>6uTy zCXdNlhU8`}KD&@ear6D#ClusLWc|Nmi0p(f z)YLpiZ%WC7D9e+)|BnJ%p-Ud$Ee-3#GB?n_H$Q;F_Ocm=~2EJ

    P_+_L3&6`YYFa?YyI}jasD*WnFX@EMiX?G-~qYT?=8VY^1uW1Ie>phxmC3q$0$@*)8YA!H$ zn_Lsrmf#M#*02BnJl%gT1vEip3Em{v`mH6nPp@RqB{`6NO+Y5p8{1uT%d#nxX&F6s1Tj=PB z+(*Nsr}H!PwKdk1^FN`0zl$_AB@cEJFaABB$m}RyBKLO|x5$Hu)Gz-X=U<8?AGz`m z2{fsKc}%=TZlOayd9<};Y?GTK#k=Y<{^U)lJ4v9Yfpq?pFZ+3EcuejbEaj)<9ap^d zjMS5V8S~vWI%8Lm9*4f^mP3LT+!mi zK;jkb>M?onA8D|MU91C$Pr%G!6RX<|`M(l*=hT8c{#z7q-X|4Y^3FcuU2^Na;sLpP ztay+85b@-+$^MsrCT}>zOq8(e)q}(2|MWDd{{mB8DYi`>)+JAu-9w^)0{RL_kKD(m>yyXG6OsQ0Gc+KNPm>OL zBMO+uWr||**RClSkTH35q9mG`3I2-;WM8$nAY4Pm4TG^Q8OFr@-Hks7)U0 zCL*`SGO~dDS>)-FTSrKT`iW=zU;ddq5kaDeD(I`#1M&$jP$TjHd17+C<~L&R@K} zbYVIVWXI1uDI+s@5Ydk6+w2PDl@CgZ61j~$7Ww(F;Qjw)3WVrTl{`WsoBTygb&b4; z<60*-PszYsj{+_>V}pEnl#HxJ?jw;;z6y?On>@nl=)!0B|1lB;R6$>4?vV!{kPh|9 zZQQbr$@Rg>`L~Q5OPSpNC#n92UL zDWI3$8hH~Ps*~%b*Cp30W`kU>n61>){jWXMOQug1^h(zz*DGC@T(5Kixn7`p3!a@n zy+ZXD0_oIeSE%HBM6MU80l8kFM&x>dipi4;l$`%D1@sCvCD#j-!5xs!oL*Q8rXDrRAF{KAfH_i$Y<9B^4ax3UB;ixv0e}~kj{VdrRTUouIIQ#K0C(b z`jo9l?m2jh)Te-tb3A%6cV5k}aA7I^H}CNovKXzG@_x{Bc;Z3so|%>ROh|#~Lz1XZ zK0yN`@(^BpIp1)M0oBOO|D>Fgc{2aHiChG_R3SJAB@oy0cVH$8*mUDc@Ru2igBRg5g)?|GHG6c&m6o?!Q?Y?2$*Ch==6G zvUq>y(!L4tI5?OEvI#NHHPUcQZX?lz+{FwPHptI}|9Qz%X7`Y&MFA5@g(>;(ur$RD z^9>ZS1QEHl%JSJr2JBDEn^L^)M)^d4MFS!E(3cLm8|TYgD@y|navKd;SR$!yjD9pz zS$ux~fANd5>Fgy`sF7=Vms~%}DIlM`B3;nEA^%F&KhU+urqQ0pm&*SQ$?Y$TkH|Y$ zi^t>>_>|mwH7TF&Ki!p5ecquG_J+DyQKniqpSpFv{9ldAPtFr}$So{oJ@IV+YoZVp zT&hsSh<);v){!M^lbc^i#xDD-a{UPAF6Zw6{MK4;9>{j>@*?t-JPP$x z@)&t+@^z4>2A|#k8zibz1^=}&BA0x9Bx;a1KO-G#ky}ek9zXA%*%XP|`GB!5ltf+f z2#Esnt&yik?zAOOpWI$1?NGA+A_{DeL<4ezk&VdhWo2YB`EJNFChuTi)6~=bFa1ky zw~@$fCJEK|MWO<^c~nZ2$o=J{zD2IT3szq6?EJZxNTTXOAUl5rNo13+x0amy8oBd1 z$x|nfk;f%Javj|NHz*L@B#Bz&W(DbxPyRpr5^I~hf`N6(W8?`o!}*uyjG6t~9as3G zl<2dsC>@H(pU0!1?0=3Lp^eLJsDVk(bM&hUnhy8 z#X#aGA<=-mc!zXoL>{j$d1CT2@TfQ@cLsR-Ufe*kMgCT|v{LuN~30b?G=S~kds*rYA;XkE$UlW&aU*CzMV=ay;vT@JiS5(VV? z;#7~kiRXTOau-kQBXa$f4h%>HgPa<{;pvfdy~E8|3bGQqDrh zG>;xjomutC*3!}1Liz0cIlD{1SqP*ZXznInCogU*?y_TzTjaquQeKyIp+j>1yHugM zw^Yz6*9x;M7nL_PDIb&T6?05pM2Du^(*3``wM?nO)M~@}yr4iHBT%#+{$r9gn5SILX}Ng|tk2(OV(4v_K<^7v5ccr){4{&h?BKE*mb1ztE0V`2Ki#4Ck3aqlT zbf`+M7n~ZoUT_?8z2MZzk4HzF@Y(&po=cx9xLC6`xz0p~T#sdsTu)6u@17Y}WNo5+ zz=TK2rW=rF$0pewF}a?a3AyH|y?i2ll(VUVHc%ti zC2+`nG|(Xb8kV@FF5^$$>#@F!z}G-J|H+q*piO=$8VJb0srL=!n!iu(=?EeUT!#im z+vhT zNk-sO1sy?yyoU!TpZs|=&>`3S-9=B=Uq=uu1`;2lfj+s51_tEORx*GgxnGy-#E5*F z0jW$pqx6nY5eOq}jE0f=ZTeRxlbpIb<1U6OZEGHwYk^cj0?2_Mz z2AbqP^0#J=^QR5?vp{|X0npoq2ytuZEphvC)2+3bU{sH;Aci{d1BMN8(F}aRlOupK#a-A^y z=9lc}n4u!Mv!)E7f4MgOZ;K6K2Zf~`Moc|F8w1JqsiA^*m*Qe`+cjlMO z#Q=)r`sB6rPP+fU6CMbMvC%+*9jBm3el_x!_ow^+ z)6hVbDp+X1Cf6CNkw<92CBFkp(40BWpS7Co($*}H9=`e0Z=d{LG|(mgGaBfTYyOZt z@bDT=p90ULfg$+^(LhY@t||iXpx_V2HNED<}yQ_oG0tA4Rmt>V~#@uA^8P(w2a8Z z8}Nc9xjvW;$v>LrPxs%L0@^^~fc(;|jlbV%k-r-qs*o4ap(?p{$WA=l|9Stw29@(>rCG5KxCZ=C#$ zUNgY`e~|(P4V1`z{N&Oie-sT=$#=lZ?KN_L8<`2mqkwM4I(dLQpC-9B&>`2Q>5;#L z8STSo_y5|X0aegMF}Wr(@6J!DmM@VnhwDl?@5#^qaV{(QfN>9#HLj8mFcS{BHqa#3 z4zRu5?FG-ypEgii2&CuFe_0xK$k*6iM%*BOI~r(_Ykr?Rs^b2? zO@YnOKtR3|8VJd?fj)Wgm<%8yw~>EzAl?7(fd--iZj zyoh7mB{$eZ0eM+Yjc584sO~76Ye3$-N=7gw4-XX|k-IpS6Y{s}k7^H2mnNBiJ%0XX zGS!7FFn1db6v@Aa87h-+fCj4Mn%`dZZ2j@tZEZ1-^zDaez$M?cAT!h?pY&uVTI3x( zX!+#rWQMZ#yA;?9@7w8-n`5MbKDl1ehUE9)!6qj6v8g8q)BV3DvJc508~w!78hPPdy~E@UAr7j5^{n zxsJF(t|P9J>xg}F{mfafO@Ui*``jVd_jCv3v%NxYoq)YUUa89F#oO@a_y0%X+>fb( zc|;OT$(u-I@U}gjx!>W`6v$)zkgAmPWc_d%~*ZG4j~tKh-~Q zN^Yfj(*0NG!1gjl`i4Xu+5H$lf3+5XoCR@*}wuHhYz>aT}4 z$v1`TJ0!LI=W+cQQ2FK|vXsNQ{Zt3RtMnCf^rNsXFArLDF#g zUe3i4PcY&!xpO{d4nDj8-x_Oa@ZL|Iy4i0$kXsi>q7u30vB>v8{&LHgQLe!ngO-leMU!!7cQbV|vez$Ls!-oXHz1<%gk)kxG_2&9`SLWMs0t_R9J;E>!t z5_iMo(T?J!qw<^7*%9~u76po^P$ze{mqadkaD;e+JlsKiK;GF|d~_7u{|^zUAD!>% z3wz?0i`<}r4taREG|(lFFn~ZE*FWRC(qK;m>HH^O(Q)D-dGUDh0sG$4@Q^&-6C)<~ zeDr8a0i9}dOnxSGs!QZ98n(!X`$)rOa$5$Fy#7xCgI~og9-D7ir@BI}Q(Yz3skX^= zrfZoe^RLHDr`n+kI@K<@yO)ftL0-g6G|6=dT8o~pzb-*{F_5?}K|roc&?na=h{$yb zbmThVO0r3_{ny6k(?D34k#)!`@Gg0Hn3NC5D~F2r$iqX#LznLV4FY|xaIjQ}$X)n= zya*q%?<;vmGspRh4w67T3#5lHd2JXzCXWu3@)L3!J|&OdE#(c4v(B{bAyA~i#E}Xm z@ℑ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Ť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%0DK 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\y_7 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

    !y7oJ}F`&RE+VIF@>MhN1ZJ7y6?! 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� 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 z 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 xb6Slt-(!?3W2sIafm~)&cXgr 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 G+~)t01USY3 diff --git a/cots/org.jep.win32/jep.dll b/cots/org.jep.win32/jep.dll index c5096dbc2b703c268e85e58bf7e071953db57fa3..86dbe1efcbd6867289ece3f7e6cd867daae97609 100644 GIT binary patch delta 14317 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 K5ewBM{=WgPy4n%|

    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

  • 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