From ae87858e3d01f7cabdc903594e924c3203b99ac6 Mon Sep 17 00:00:00 2001 From: Mark Peters Date: Tue, 2 Sep 2014 11:38:06 -0500 Subject: [PATCH] Omaha #3548 PluginDataObjectFilter fails to start in spring Change-Id: Ib0aa88dd3341ae65aef9b2b02ffbd1645510b95e Former-commit-id: ad994bc4c6867c5f7de5126c351188fa982f089d [formerly ad994bc4c6867c5f7de5126c351188fa982f089d [formerly 07b54b870e36f37b909d9e7da1f1da4d181b06b0]] Former-commit-id: 53869a4b0b231cc590610a5f973e87cbcf1c1f02 Former-commit-id: 2c02132ec067bc55bc52347254a802d187f0c97c --- ...f.common.serialization.ISerializableObject | 3 +- .../core/filterimpl/AbstractObsFilter.java | 14 ++++----- .../filterimpl/PluginDataObjectFilter.java | 31 ++++++------------- 3 files changed, 17 insertions(+), 31 deletions(-) diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 3a20209fdd..f816069cf3 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -1,5 +1,4 @@ com.raytheon.uf.edex.decodertools.core.filterimpl.RectFilterElement com.raytheon.uf.edex.decodertools.core.filterimpl.RadiusFilterElement com.raytheon.uf.edex.decodertools.core.filterimpl.StationIdFilterElement -com.raytheon.uf.edex.decodertools.core.filterimpl.WMOHeaderFilterElement -com.raytheon.uf.edex.decodertools.core.filterimpl.PluginDataObjectFilter \ No newline at end of file +com.raytheon.uf.edex.decodertools.core.filterimpl.WMOHeaderFilterElement \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java index 3a92c1d3a2..f9064bb968 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java @@ -28,7 +28,6 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -36,21 +35,22 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * TODO Add Description * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Mar 25, 2009            jkorman     Initial creation
- *
+ * Aug 28, 2014 3548       mapeters    Removed implementation of ISerializableObject
+ * 
  * 
- * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public abstract class AbstractObsFilter implements ISerializableObject { +public abstract class AbstractObsFilter { public static final String INCLUDE_TYPE = "INCLUDE"; 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 5ddbc091d9..41d20edea6 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 @@ -24,10 +24,7 @@ import static com.raytheon.uf.common.localization.LocalizationContext.Localizati import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import javax.xml.bind.JAXBException; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; @@ -43,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.SerializationUtil; +import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** @@ -58,6 +55,8 @@ 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 * * * @@ -96,25 +95,13 @@ public class PluginDataObjectFilter extends AbstractObsFilter { if (filterDir.exists()) { File srcFile = new File(filterDir, filterConfigFile); - byte[] data = new byte[(int) srcFile.length()]; + SingleTypeJAXBManager jaxb = new SingleTypeJAXBManager( + PluginDataObjectFilter.class); + PluginDataObjectFilter filter = jaxb + .unmarshalFromXmlFile(srcFile); - InputStream stream = getInputStream(srcFile); - try { - stream.read(data); - stream.close(); - - AbstractObsFilter filter = SerializationUtil - .unmarshalFromXml(AbstractObsFilter.class, - new String(data)); - - setFilterElements(filter.getFilterElements()); - setFilterName(filter.getFilterName()); - } catch (IOException e) { - logger.error("Unable to read filter config", e); - } catch (JAXBException e) { - logger.error("Unable to unmarshall filter config", - e); - } + setFilterElements(filter.getFilterElements()); + setFilterName(filter.getFilterName()); } else { logger.error(String.format(ERROR_2_FMT, filterDir.getPath()));