From 6837d3a3926ee8203c1733b5f4f7de1e0d629ab6 Mon Sep 17 00:00:00 2001 From: Nate Jensen Date: Wed, 6 Aug 2014 17:31:06 -0500 Subject: [PATCH] Omaha #3185 only import java DAF support classes when they're actually used Change-Id: Ie7db12940fb0b6a0efbd3e43566cc2f647cd40ec Former-commit-id: 87d4dd9b87f9827fb43ee660da228d7731a1fdfc [formerly 4af502b88aab0b0bedf80c6d2d414723e373acb8] [formerly 414b8ab56c99773aa3dd5187bdeb0dd0bba55f4d] [formerly 414b8ab56c99773aa3dd5187bdeb0dd0bba55f4d [formerly ed409784ed8faf9a2c50dca337e7f77b884cab29]] [formerly e929584e65ab6bc8c7a8bf0c0dff87c857342986 [formerly 414b8ab56c99773aa3dd5187bdeb0dd0bba55f4d [formerly ed409784ed8faf9a2c50dca337e7f77b884cab29] [formerly e929584e65ab6bc8c7a8bf0c0dff87c857342986 [formerly eb435ae129753ea739d236a2d24165a4b3bbe109]]]] Former-commit-id: e929584e65ab6bc8c7a8bf0c0dff87c857342986 Former-commit-id: 186cb93883a4a8d21d4d44e71986409c7ace9830 [formerly a7b5093b934f8e22472944336adba0fc03cf57e9] [formerly fed739748c0527a768d6a272130d453d76d57d48 [formerly c3d5ee8174d3910b6fb0d51e6b1e948106476f1d]] Former-commit-id: fed739748c0527a768d6a272130d453d76d57d48 Former-commit-id: 01b2e3d05604f4daf38cd080879a85417bdeaca0 --- .../base/python/dataaccess/JGeometryData.py | 9 ++++--- .../base/python/dataaccess/JGridData.py | 27 ++++++++++--------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py index f9751d49a3..0e0c4efb9d 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py @@ -27,15 +27,15 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/10/12 njensen Initial Creation. -# 06/03/13 #2023 dgilling Remove "unit" support from -# __getitem__ as it only threw errors. +# 12/10/12 njensen Initial Creation. +# 06/03/13 #2023 dgilling Remove "unit" support from +# __getitem__ as it only threw errors. +# 08/06/14 3185 njensen Only import shapely when necessary # # from ufpy.dataaccess import IGeometryData import JData -import shapely.wkt class JGeometryData(IGeometryData, JData.JData): @@ -61,6 +61,7 @@ class JGeometryData(IGeometryData, JData.JData): return self.getNumber(key) def getGeometry(self): + import shapely.wkt return shapely.wkt.loads(self.jobj.getGeometry().toText()) def getParameters(self): diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py index 1901b10349..6c9321f133 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py @@ -27,23 +27,16 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/10/12 njensen Initial Creation. -# 05/01/14 3095 bsteffen Move numeric data access to new plugin. - +# 12/10/12 njensen Initial Creation. +# 05/01/14 3095 bsteffen Move numeric data access to new plugin. +# 08/06/14 3185 njensen Only import Java classes when necessary +# # # # from ufpy.dataaccess import IGridData import JData -from jep import jarray - -from com.raytheon.uf.common.numeric.buffer import FloatBufferWrapper -from com.raytheon.uf.common.geospatial.data import UnitConvertingDataFilter -from com.raytheon.uf.common.numeric.dest import FilteredDataDestination -from com.raytheon.uf.common.python import PythonNumpyFloatArray -from com.raytheon.uf.common.geospatial import LatLonReprojection -from javax.measure.unit import UnitFormat class JGridData(IGridData, JData.JData): @@ -69,15 +62,23 @@ class JGridData(IGridData, JData.JData): return str(self.jobj.getUnit()) def getRawData(self, unit=None): + # import only the modules that are needed + from com.raytheon.uf.common.numeric.buffer import FloatBufferWrapper + from com.raytheon.uf.common.python import PythonNumpyFloatArray + nx = self.jobj.getGridGeometry().getGridRange().getSpan(0) ny = self.jobj.getGridGeometry().getGridRange().getSpan(1) dest = FloatBufferWrapper(nx, ny) pnfa = None if unit: + from javax.measure.unit import UnitFormat + from com.raytheon.uf.common.geospatial.data import UnitConvertingDataFilter + from com.raytheon.uf.common.numeric.dest import FilteredDataDestination + from jep import jarray + unitObj = UnitFormat.getUCUMInstance().parseObject(unit) converter = self.jobj.getUnit().getConverterTo(unitObj) filter = UnitConvertingDataFilter(converter) - filter = UnitConvertingDataFilter(converter) filters = jarray(1, UnitConvertingDataFilter) filters[0] = filter unitDest = FilteredDataDestination.addFilters(dest, filters) @@ -98,6 +99,8 @@ class JGridData(IGridData, JData.JData): gridGeometry = self.jobj.getGridGeometry() if gridGeometry is None : return None + + from com.raytheon.uf.common.geospatial import LatLonReprojection latlons = LatLonReprojection.getLatLons(gridGeometry) nx = gridGeometry.getGridRange().getSpan(0) ny = gridGeometry.getGridRange().getSpan(1)