From cbb5715b346b4a8216026b329ec6e5d048b23131 Mon Sep 17 00:00:00 2001 From: Mark Peters Date: Thu, 11 Sep 2014 10:32:11 -0500 Subject: [PATCH] Omaha #3548 PluginDataObjectFilter fails to start in spring Change-Id: I6db18d15b5a35a081de48a885e3d27495b44b5d0 Former-commit-id: fb337860014ac2828fbd5aac0d5bc0d5c14b602f [formerly e9d50c287b6327ea03437a98fb1077b904daeecd] Former-commit-id: d671d1f43220016499b640b68e7e682597d1faeb --- .../edex/transform/shef/MetarToShefFilter.java | 10 +++++++++- .../core/filterimpl/PluginDataObjectFilter.java | 17 +++++++++++------ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java index 2d22d29dec..c79928a424 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java @@ -49,6 +49,10 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.edex.decodertools.core.filterimpl.AbstractFilterElement; import com.raytheon.uf.edex.decodertools.core.filterimpl.AbstractObsFilter; import com.raytheon.uf.edex.decodertools.core.filterimpl.PluginDataObjectFilter; +import com.raytheon.uf.edex.decodertools.core.filterimpl.RadiusFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.RectFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.StationIdFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.WMOHeaderFilterElement; /** * Use information in metarToShefFilter.xml, MetarToShefFilter filters out the @@ -116,7 +120,11 @@ public class MetarToShefFilter { stream.close(); JAXBManager jaxb = new JAXBManager( PluginDataObjectFilter.class, - MetarToShefFilter.class); + MetarToShefFilter.class, + RadiusFilterElement.class, + RectFilterElement.class, + StationIdFilterElement.class, + WMOHeaderFilterElement.class); Object obj = jaxb.unmarshalFromXml(new String(data)); if (obj instanceof PluginDataObjectFilter) { logger.info("Found " + filterConfigFile diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java index 8f67d35fa5..1819c12ce9 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java @@ -40,7 +40,7 @@ import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; -import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; +import com.raytheon.uf.common.serialization.JAXBManager; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** @@ -55,9 +55,9 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable * Jul 23, 2014 3410 bclement location changed to floats - * Aug 28, 2014 3548 mapeters Replaced use of SerializationUtil - * with SingleTypeJAXBManager * Sep 09, 2014 3548 mapeters Improved constructor's error messages. + * Sep 11, 2014 3548 mapeters Replaced use of SerializationUtil + * with JAXBManager. * * * @@ -95,10 +95,15 @@ public class PluginDataObjectFilter extends AbstractObsFilter { filterDir = manager.getFile(context, FILTERS_DIR); if (filterDir.exists()) { File srcFile = new File(filterDir, filterConfigFile); - SingleTypeJAXBManager jaxb = new SingleTypeJAXBManager( - PluginDataObjectFilter.class); + JAXBManager jaxb = new JAXBManager( + PluginDataObjectFilter.class, + RadiusFilterElement.class, + RectFilterElement.class, + StationIdFilterElement.class, + WMOHeaderFilterElement.class); PluginDataObjectFilter filter = jaxb - .unmarshalFromXmlFile(srcFile); + .unmarshalFromXmlFile( + PluginDataObjectFilter.class, srcFile); setFilterElements(filter.getFilterElements()); setFilterName(filter.getFilterName());