Omaha #5242: Remove calls to deprecated Localization APIs from D2D code.

Change-Id: I98c154307a62fbbb05b7351451b5c3c444e73bda

Former-commit-id: b91de1ced4a6630cb2e9e36fef0dfea89e09ab1b
This commit is contained in:
David Gillingham 2016-02-12 14:04:25 -06:00
parent 3b0ab35469
commit 1f2a0f0c69
7 changed files with 93 additions and 168 deletions

View file

@ -20,7 +20,6 @@
package com.raytheon.uf.viz.d2d.ui.dialogs.procedures; package com.raytheon.uf.viz.d2d.ui.dialogs.procedures;
import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
@ -56,17 +55,17 @@ import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPartReference; import org.eclipse.ui.IWorkbenchPartReference;
import org.eclipse.ui.PlatformUI; import org.eclipse.ui.PlatformUI;
import com.raytheon.uf.common.localization.ILocalizationFile;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.localization.SaveableOutputStream;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.DataTime;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.viz.core.DescriptorMap; import com.raytheon.uf.viz.core.DescriptorMap;
import com.raytheon.uf.viz.core.VizApp; import com.raytheon.uf.viz.core.VizApp;
import com.raytheon.uf.viz.core.drawables.AbstractDescriptor; import com.raytheon.uf.viz.core.drawables.AbstractDescriptor;
@ -118,6 +117,7 @@ import com.raytheon.viz.ui.views.PartAdapter2;
* Mar 12, 2015 4204 njensen Ensure renamed bundle goes into tab name on next load * Mar 12, 2015 4204 njensen Ensure renamed bundle goes into tab name on next load
* Apr 08, 2015 4185 mapeters Disable Copy In when not applicable for active editor * Apr 08, 2015 4185 mapeters Disable Copy In when not applicable for active editor
* Jun 02, 2015 4401 bkowal Updated to use {@link VizLocalizationFileListDlg}. * Jun 02, 2015 4401 bkowal Updated to use {@link VizLocalizationFileListDlg}.
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -358,14 +358,6 @@ public class ProcedureDlg extends CaveSWTDialog {
ProcedureComm.getInstance().addCopyOutStateListener(changeListener); ProcedureComm.getInstance().addCopyOutStateListener(changeListener);
final ProcedureComm.ICopyOutListener copyOutListener = new ProcedureComm.ICopyOutListener() { final ProcedureComm.ICopyOutListener copyOutListener = new ProcedureComm.ICopyOutListener() {
/*
* (non-Javadoc)
*
* @see
* com.raytheon.viz.ui.dialogs.procedure.ProcedureComm.ICopyOutListener
* #copyOut(com.raytheon.viz.ui.dialogs.procedure.ProcedureComm.
* BundlePair, java.lang.Object)
*/
@Override @Override
public void copyOut(BundlePair b, Object src) { public void copyOut(BundlePair b, Object src) {
if (src != thisDlg) { if (src != thisDlg) {
@ -438,14 +430,6 @@ public class ProcedureDlg extends CaveSWTDialog {
private void saveProcedure(boolean closeAfterSave) { private void saveProcedure(boolean closeAfterSave) {
try { try {
IPathManager pm = PathManagerFactory.getPathManager();
LocalizationContext context = pm.getContext(
LocalizationType.CAVE_STATIC, LocalizationLevel.USER);
LocalizationFile localizationFile = pm.getLocalizationFile(context,
PROCEDURES_DIR + File.separator + fileName);
Procedure procedure = new Procedure(); Procedure procedure = new Procedure();
BundlePair[] bp = bundles.toArray(new BundlePair[bundles.size()]); BundlePair[] bp = bundles.toArray(new BundlePair[bundles.size()]);
Bundle[] bundlesToSave = new Bundle[bp.length]; Bundle[] bundlesToSave = new Bundle[bp.length];
@ -472,17 +456,26 @@ public class ProcedureDlg extends CaveSWTDialog {
} }
procedure.setBundles(bundlesToSave); procedure.setBundles(bundlesToSave);
IPathManager pm = PathManagerFactory.getPathManager();
LocalizationContext context = pm.getContext(
LocalizationType.CAVE_STATIC, LocalizationLevel.USER);
ILocalizationFile localizationFile = pm
.getLocalizationFile(context, PROCEDURES_DIR
+ IPathManager.SEPARATOR + fileName);
String procedureXML = procedure.toXML(); String procedureXML = procedure.toXML();
FileUtil.bytes2File(procedureXML.getBytes(), try (SaveableOutputStream outStream = localizationFile
localizationFile.getFile()); .openOutputStream()) {
localizationFile.save(); outStream.write(procedureXML.getBytes());
outStream.save();
}
shell.setText("Procedure - " + fileName); shell.setText("Procedure - " + fileName);
saved = true; saved = true;
saveBtn.setEnabled(false); saveBtn.setEnabled(false);
if (closeAfterSave) if (closeAfterSave) {
close(); close();
}
} catch (Exception e) { } catch (Exception e) {
final String errMsg = "Error occurred during procedure save."; final String errMsg = "Error occurred during procedure save.";
statusHandler.handle(Priority.PROBLEM, errMsg, e); statusHandler.handle(Priority.PROBLEM, errMsg, e);

View file

@ -19,8 +19,6 @@
**/ **/
package com.raytheon.uf.viz.derivparam.ui.dialogs; package com.raytheon.uf.viz.derivparam.ui.dialogs;
import java.io.File;
import com.raytheon.uf.common.derivparam.library.DerivedParameterGenerator; import com.raytheon.uf.common.derivparam.library.DerivedParameterGenerator;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext;
@ -28,10 +26,10 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.localization.SaveableOutputStream;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.util.FileUtil;
import com.raytheon.uf.viz.localization.LocalizationPerspectiveUtils; import com.raytheon.uf.viz.localization.LocalizationPerspectiveUtils;
import com.raytheon.uf.viz.localization.service.ILocalizationService; import com.raytheon.uf.viz.localization.service.ILocalizationService;
import com.raytheon.viz.ui.dialogs.CaveSWTWizard; import com.raytheon.viz.ui.dialogs.CaveSWTWizard;
@ -47,6 +45,7 @@ import com.raytheon.viz.ui.dialogs.CaveSWTWizard;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* Dec 16, 2010 mschenke Initial creation * Dec 16, 2010 mschenke Initial creation
* Sep 17, 2013 2285 mschenke Fixed serialization of DerivParamDesc * Sep 17, 2013 2285 mschenke Fixed serialization of DerivParamDesc
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -74,23 +73,6 @@ public class DerivedParamWizard extends CaveSWTWizard {
addPage(newFunctionPage); addPage(newFunctionPage);
} }
/*
* Max, I took this out but itwill go away with the SWT Wizard stuff.
*/
// @Override
// public void createPageControls(Composite pageContainer) {
// pageContainer.setLayout(new GridLayout(1, false));
// pageContainer.setLayoutData(new GridData(SWT.FILL, SWT.DEFAULT, true,
// false));
// super.createPageControls(pageContainer);
// }
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.wizard.Wizard#performFinish()
*/
@Override @Override
public boolean performFinish() { public boolean performFinish() {
IPathManager pm = PathManagerFactory.getPathManager(); IPathManager pm = PathManagerFactory.getPathManager();
@ -102,15 +84,11 @@ public class DerivedParamWizard extends CaveSWTWizard {
String fileName = newFunctionPage.getFunctionName() + "." String fileName = newFunctionPage.getFunctionName() + "."
+ newFunctionPage.getSelectedFunctionType().getExtension(); + newFunctionPage.getSelectedFunctionType().getExtension();
String path = DerivedParameterGenerator.FUNCTIONS_DIR String path = DerivedParameterGenerator.FUNCTIONS_DIR
+ File.separator + fileName; + IPathManager.SEPARATOR + fileName;
LocalizationFile file = pm.getLocalizationFile(userCtx, path); LocalizationFile file = pm.getLocalizationFile(userCtx, path);
File f = file.getFile(); try (SaveableOutputStream outStream = file.openOutputStream()) {
if (f.exists()) { outStream.write(functionContents.getBytes());
f.delete(); outStream.save();
}
try {
FileUtil.bytes2File(functionContents.getBytes(), f);
file.save();
functionFile = file; functionFile = file;
} catch (Exception e) { } catch (Exception e) {
statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(),
@ -123,13 +101,9 @@ public class DerivedParamWizard extends CaveSWTWizard {
String path = DerivedParameterGenerator.XML_DIR String path = DerivedParameterGenerator.XML_DIR
+ IPathManager.SEPARATOR + fileName; + IPathManager.SEPARATOR + fileName;
LocalizationFile file = pm.getLocalizationFile(userCtx, path); LocalizationFile file = pm.getLocalizationFile(userCtx, path);
File f = file.getFile(); try (SaveableOutputStream outStream = file.openOutputStream()) {
if (f.exists()) { outStream.write(functionContents.getBytes());
f.delete(); outStream.save();
}
try {
FileUtil.bytes2File(definitionContents.getBytes(), f);
file.save();
definitionFile = file; definitionFile = file;
} catch (Exception e) { } catch (Exception e) {
statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(),

View file

@ -22,7 +22,6 @@ package com.raytheon.uf.viz.points;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
@ -59,6 +58,7 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.localization.SaveableOutputStream;
import com.raytheon.uf.common.localization.exception.LocalizationException; import com.raytheon.uf.common.localization.exception.LocalizationException;
import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
@ -92,6 +92,7 @@ import com.vividsolutions.jts.geom.Coordinate;
* Nov 12, 2015 4834 njensen Changed LocalizationOpFailedException to LocalizationException * Nov 12, 2015 4834 njensen Changed LocalizationOpFailedException to LocalizationException
* Dec 09, 2015 4834 njensen updates for API changes to LocalizationFile * Dec 09, 2015 4834 njensen updates for API changes to LocalizationFile
* Jan 11, 2016 5242 kbisanz Replaced calls to deprecated LocalizationFile methods * Jan 11, 2016 5242 kbisanz Replaced calls to deprecated LocalizationFile methods
* Feb 12, 2016 #5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -1043,15 +1044,12 @@ public class PointsDataManager implements ILocalizationFileObserver {
} }
} }
try { // Must create a file in the directory to force its creation.
// Must create a file in the directory to force its creation. String p = lFile.getPath().trim() + IPathManager.SEPARATOR + GROUP_INFO;
String p = lFile.getPath().trim() + IPathManager.SEPARATOR ILocalizationFile lf = pathMgr.getLocalizationFile(userCtx, p);
+ GROUP_INFO; try (SaveableOutputStream outStream = lf.openOutputStream()) {
LocalizationFile lf = pathMgr.getLocalizationFile(userCtx, p);
OutputStream outStream = lf.openOutputStream();
outStream.write(gPoint.getGroup().getBytes()); outStream.write(gPoint.getGroup().getBytes());
outStream.close(); outStream.save();
lf.save();
} catch (LocalizationException e) { } catch (LocalizationException e) {
statusHandler.handle(Priority.PROBLEM, statusHandler.handle(Priority.PROBLEM,
"Unable to create the group: " + gPoint.getGroup(), e); "Unable to create the group: " + gPoint.getGroup(), e);
@ -1729,10 +1727,10 @@ public class PointsDataManager implements ILocalizationFileObserver {
*/ */
private void marshalPointToXmlFile(Point point, LocalizationFile lFile) private void marshalPointToXmlFile(Point point, LocalizationFile lFile)
throws LocalizationException, IOException { throws LocalizationException, IOException {
OutputStream stream = lFile.openOutputStream(); try (SaveableOutputStream outStream = lFile.openOutputStream()) {
JAXB.marshal(point, stream); JAXB.marshal(point, outStream);
stream.close(); outStream.save();
lFile.save(); }
} }
/** /**
@ -1745,14 +1743,8 @@ public class PointsDataManager implements ILocalizationFileObserver {
*/ */
private Point unmarshalPointFromXmlFile(LocalizationFile lFile) private Point unmarshalPointFromXmlFile(LocalizationFile lFile)
throws LocalizationException, IOException { throws LocalizationException, IOException {
InputStream stream = null; try (InputStream inStream = lFile.openInputStream()) {
try { return JAXB.unmarshal(inStream, Point.class);
stream = lFile.openInputStream();
return JAXB.unmarshal(stream, Point.class);
} finally {
if (stream != null) {
stream.close();
}
} }
} }

View file

@ -22,10 +22,11 @@ package com.raytheon.viz.awipstools;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.BufferedWriter; import java.io.BufferedWriter;
import java.io.File; import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
@ -45,12 +46,14 @@ import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.preference.IPersistentPreferenceStore; import org.eclipse.jface.preference.IPersistentPreferenceStore;
import com.raytheon.uf.common.localization.FileUpdatedMessage; import com.raytheon.uf.common.localization.FileUpdatedMessage;
import com.raytheon.uf.common.localization.ILocalizationFile;
import com.raytheon.uf.common.localization.ILocalizationFileObserver; import com.raytheon.uf.common.localization.ILocalizationFileObserver;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.LocalizationUtil;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.localization.SaveableOutputStream; import com.raytheon.uf.common.localization.SaveableOutputStream;
import com.raytheon.uf.common.localization.exception.LocalizationException; import com.raytheon.uf.common.localization.exception.LocalizationException;
@ -89,6 +92,7 @@ import com.vividsolutions.jts.geom.LineString;
* Jun 03, 2014 3191 njensen Improved saving/loading storm track data * Jun 03, 2014 3191 njensen Improved saving/loading storm track data
* Feb 24, 2015 3978 njensen Changed to use abstract InputStream * Feb 24, 2015 3978 njensen Changed to use abstract InputStream
* Aug 18, 2015 3806 njensen Use SaveableOutputStream to save * Aug 18, 2015 3806 njensen Use SaveableOutputStream to save
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -251,7 +255,7 @@ public class ToolsDataManager implements ILocalizationFileObserver {
private void loadStormData() { private void loadStormData() {
IPathManager pathMgr = PathManagerFactory.getPathManager(); IPathManager pathMgr = PathManagerFactory.getPathManager();
LocalizationFile f = pathMgr.getLocalizationFile( LocalizationFile f = pathMgr.getLocalizationFile(
userToolsDir.getContext(), userToolsDir.getName() userToolsDir.getContext(), userToolsDir.getPath()
+ IPathManager.SEPARATOR + STORM_TRACK_FILE); + IPathManager.SEPARATOR + STORM_TRACK_FILE);
if (f.exists()) { if (f.exists()) {
try (InputStream is = f.openInputStream()) { try (InputStream is = f.openInputStream()) {
@ -286,7 +290,7 @@ public class ToolsDataManager implements ILocalizationFileObserver {
stormData.setDate(SimulatedTime.getSystemTime().getTime()); stormData.setDate(SimulatedTime.getSystemTime().getTime());
IPathManager pathMgr = PathManagerFactory.getPathManager(); IPathManager pathMgr = PathManagerFactory.getPathManager();
LocalizationFile f = pathMgr.getLocalizationFile( LocalizationFile f = pathMgr.getLocalizationFile(
userToolsDir.getContext(), userToolsDir.getName() userToolsDir.getContext(), userToolsDir.getPath()
+ IPathManager.SEPARATOR + STORM_TRACK_FILE); + IPathManager.SEPARATOR + STORM_TRACK_FILE);
try (SaveableOutputStream sos = f.openOutputStream()) { try (SaveableOutputStream sos = f.openOutputStream()) {
@ -375,46 +379,27 @@ public class ToolsDataManager implements ILocalizationFileObserver {
+ name + "\""); + name + "\"");
} }
String fileName = userToolsDir.getName() + File.separator String fileName = userToolsDir.getPath() + File.separator
+ BASELINE_PREFIX + name + BASELINE_EXT; + BASELINE_PREFIX + name + BASELINE_EXT;
LocalizationFile lf = pathMgr.getLocalizationFile( ILocalizationFile lf = pathMgr.getLocalizationFile(
userToolsDir.getContext(), fileName); userToolsDir.getContext(), fileName);
File file = lf.getFile(); try (SaveableOutputStream outStream = lf.openOutputStream();
Writer out = new BufferedWriter(new OutputStreamWriter(
// create the local directory if necessary outStream))) {
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
BufferedWriter out = null;
try {
out = new BufferedWriter(new FileWriter(file));
for (Coordinate point : baseline.getCoordinates()) { for (Coordinate point : baseline.getCoordinates()) {
out.write(String.format("%f %f\n", point.y, point.x)); out.write(String.format("%f %f\n", point.y, point.x));
} }
out.close();
outStream.save();
} catch (IOException e) { } catch (IOException e) {
statusHandler.handle(Priority.PROBLEM, statusHandler.error("Error writing to file: " + lf, e);
"Error writing to file: " + file.getAbsolutePath(), } catch (LocalizationException e) {
statusHandler.error(
"Error storing localization file to server: " + lf,
e); e);
} finally {
if (out != null) {
try {
out.close();
lf.save();
} catch (IOException e) {
statusHandler.handle(
Priority.PROBLEM,
"Error writing to file: "
+ file.getAbsolutePath(), e);
} catch (LocalizationException e) {
statusHandler.handle(Priority.PROBLEM,
"Error storing locatization file to server: "
+ lf, e);
}
}
} }
name = baselineStoreQueue.poll(); name = baselineStoreQueue.poll();
} }
return Status.OK_STATUS; return Status.OK_STATUS;
@ -467,10 +452,10 @@ public class ToolsDataManager implements ILocalizationFileObserver {
baselines = new HashMap<String, LineString>(); baselines = new HashMap<String, LineString>();
LocalizationFile[] files = pathMgr.listFiles(userToolsDir.getContext(), LocalizationFile[] files = pathMgr.listFiles(userToolsDir.getContext(),
userToolsDir.getName(), new String[] { BASELINE_EXT }, false, userToolsDir.getPath(), new String[] { BASELINE_EXT }, false,
true); true);
for (LocalizationFile lf : files) { for (LocalizationFile lf : files) {
String fileName = lf.getFile().getName(); String fileName = LocalizationUtil.extractName(lf.getPath());
if (fileName.startsWith(BASELINE_PREFIX)) { if (fileName.startsWith(BASELINE_PREFIX)) {
LineString baseline = loadBaseline(fileName); LineString baseline = loadBaseline(fileName);
String name = fileName.substring(BASELINE_PREFIX.length()) String name = fileName.substring(BASELINE_PREFIX.length())
@ -483,15 +468,13 @@ public class ToolsDataManager implements ILocalizationFileObserver {
private LineString loadBaseline(String fileName) { private LineString loadBaseline(String fileName) {
LineString baseline = null; LineString baseline = null;
LocalizationFile lf = pathMgr.getLocalizationFile( ILocalizationFile lf = pathMgr.getLocalizationFile(
userToolsDir.getContext(), userToolsDir.getName() userToolsDir.getContext(), userToolsDir.getPath()
+ File.separator + fileName); + File.separator + fileName);
File file = lf.getFile();
BufferedReader in = null;
try {
in = new BufferedReader(new FileReader(file));
try (InputStream inStream = lf.openInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(
inStream))) {
List<Coordinate> coords = new ArrayList<Coordinate>(); List<Coordinate> coords = new ArrayList<Coordinate>();
String line = null; String line = null;
while ((line = in.readLine()) != null) { while ((line = in.readLine()) != null) {
@ -517,17 +500,9 @@ public class ToolsDataManager implements ILocalizationFileObserver {
.handle(Priority.PROBLEM, .handle(Priority.PROBLEM,
"Invalid number in wfo center point file, using default", "Invalid number in wfo center point file, using default",
e); e);
} catch (IOException e) { } catch (IOException | LocalizationException e) {
statusHandler.handle(Priority.PROBLEM, "Error writing to file: " statusHandler.handle(Priority.PROBLEM, "Error reading from file: "
+ file.getAbsolutePath(), e); + lf, e);
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
// nothing to do
}
}
} }
return baseline; return baseline;

View file

@ -5,7 +5,7 @@ import java.io.File;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileReader; import java.io.FileReader;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.InputStream;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
@ -14,23 +14,19 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import javax.xml.bind.JAXB; import javax.xml.bind.JAXB;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.geospatial.SpatialException; import com.raytheon.uf.common.geospatial.SpatialException;
import com.raytheon.uf.common.geospatial.SpatialQueryFactory; import com.raytheon.uf.common.geospatial.SpatialQueryFactory;
import com.raytheon.uf.common.geospatial.SpatialQueryResult; import com.raytheon.uf.common.geospatial.SpatialQueryResult;
import com.raytheon.uf.common.localization.ILocalizationFile;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.localization.SaveableOutputStream;
import com.raytheon.uf.common.localization.exception.LocalizationException; import com.raytheon.uf.common.localization.exception.LocalizationException;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.common.time.SimulatedTime;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.localization.LocalizationManager; import com.raytheon.uf.viz.core.localization.LocalizationManager;
@ -49,6 +45,7 @@ import com.vividsolutions.jts.geom.Envelope;
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* May 2009 # bsteffen Initial creation * May 2009 # bsteffen Initial creation
* Nov 2013 # mccaslin New design approach, changed from OS calls to file io, read xml code, etc * Nov 2013 # mccaslin New design approach, changed from OS calls to file io, read xml code, etc
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -57,9 +54,6 @@ import com.vividsolutions.jts.geom.Envelope;
*/ */
public class LapsToolsIO { public class LapsToolsIO {
private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(LapsToolsIO.class);
private static final String WHATGOTIN_FILE_FRMT = "%s/%s.wgi"; private static final String WHATGOTIN_FILE_FRMT = "%s/%s.wgi";
private static File fxaData; private static File fxaData;
@ -139,20 +133,16 @@ public class LapsToolsIO {
IPathManager pm = PathManagerFactory.getPathManager(); IPathManager pm = PathManagerFactory.getPathManager();
LocalizationContext lc = pm.getContext(LocalizationType.COMMON_STATIC, LocalizationContext lc = pm.getContext(LocalizationType.COMMON_STATIC,
LocalizationLevel.SITE); LocalizationLevel.SITE);
LocalizationFile xmlLocalizationFile = pm.getLocalizationFile(lc, ILocalizationFile xmlLocalizationFile = pm.getLocalizationFile(lc,
"LAPS/domain" + ".xml"); "LAPS/domain" + ".xml");
if (!xmlLocalizationFile.exists()) if (!xmlLocalizationFile.exists()) {
return false; return false;
}
LapsDomain domain = new LapsDomain(); LapsDomain domain = new LapsDomain();
try { try (InputStream inStream = xmlLocalizationFile.openInputStream()) {
JAXBContext jaxbContext = JAXBContext.newInstance(LapsDomain.class); domain = JAXB.unmarshal(inStream, LapsDomain.class);
// unmarshal XML file to java object } catch (LocalizationException e) {
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
domain = (LapsDomain) jaxbUnmarshaller
.unmarshal(xmlLocalizationFile.getFile());
} catch (JAXBException e) {
throw new VizException("xml is unreadable: " throw new VizException("xml is unreadable: "
+ e.getLocalizedMessage()); + e.getLocalizedMessage());
} }
@ -231,7 +221,7 @@ public class LapsToolsIO {
IPathManager pm = PathManagerFactory.getPathManager(); IPathManager pm = PathManagerFactory.getPathManager();
LocalizationContext lc = pm.getContext(LocalizationType.COMMON_STATIC, LocalizationContext lc = pm.getContext(LocalizationType.COMMON_STATIC,
LocalizationLevel.USER); LocalizationLevel.USER);
LocalizationFile xmlLocalizationFile = pm.getLocalizationFile(lc, ILocalizationFile xmlLocalizationFile = pm.getLocalizationFile(lc,
"LAPS" + IPathManager.SEPARATOR + "domain.xml"); "LAPS" + IPathManager.SEPARATOR + "domain.xml");
LapsDomain lapsdomain = new LapsDomain(); LapsDomain lapsdomain = new LapsDomain();
lapsdomain.setNx(data.getNx()); lapsdomain.setNx(data.getNx());
@ -241,12 +231,10 @@ public class LapsToolsIO {
lapsdomain.setGridCenLat(data.getGridCenter().y); lapsdomain.setGridCenLat(data.getGridCenter().y);
lapsdomain.setGridCenLon(data.getGridCenter().x); lapsdomain.setGridCenLon(data.getGridCenter().x);
// marshal java object to XML file // marshal java object to XML file
OutputStream stream; try (SaveableOutputStream outStream = xmlLocalizationFile
try { .openOutputStream()) {
stream = xmlLocalizationFile.openOutputStream(); JAXB.marshal(lapsdomain, outStream);
JAXB.marshal(lapsdomain, stream); outStream.save();
stream.close();
xmlLocalizationFile.save();
} catch (LocalizationException e) { } catch (LocalizationException e) {
throw new VizException("Unable to save LapsDomain to xml."); throw new VizException("Unable to save LapsDomain to xml.");
} }

View file

@ -34,9 +34,9 @@ import com.raytheon.uf.common.dataplugin.level.Level;
import com.raytheon.uf.common.dataplugin.level.LevelFactory; import com.raytheon.uf.common.dataplugin.level.LevelFactory;
import com.raytheon.uf.common.dataplugin.level.mapping.LevelMapping; import com.raytheon.uf.common.dataplugin.level.mapping.LevelMapping;
import com.raytheon.uf.common.dataplugin.level.mapping.LevelMappingFactory; import com.raytheon.uf.common.dataplugin.level.mapping.LevelMappingFactory;
import com.raytheon.uf.common.localization.ILocalizationFile;
import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.IPathManager;
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
import com.raytheon.uf.common.localization.LocalizationFile;
import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.map.MapDescriptor; import com.raytheon.uf.viz.core.map.MapDescriptor;
@ -57,6 +57,7 @@ import com.raytheon.viz.pointdata.util.PointDataInventory;
* Jun 06, 2014 2061 bsteffen Remove old PlotResource * Jun 06, 2014 2061 bsteffen Remove old PlotResource
* Sep 09, 2014 3356 njensen Remove CommunicationException * Sep 09, 2014 3356 njensen Remove CommunicationException
* Aug 17, 2015 4717 mapeters Added null check in getLevels() * Aug 17, 2015 4717 mapeters Added null check in getLevels()
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -117,7 +118,7 @@ public class PlotModels {
if (models == null) { if (models == null) {
models = new HashMap<String, List<String>>(); models = new HashMap<String, List<String>>();
IPathManager pm = PathManagerFactory.getPathManager(); IPathManager pm = PathManagerFactory.getPathManager();
LocalizationFile[] files = pm.listFiles( ILocalizationFile[] files = pm.listFiles(
pm.getLocalSearchHierarchy(LocalizationType.CAVE_STATIC), pm.getLocalSearchHierarchy(LocalizationType.CAVE_STATIC),
PLOTLOCATION, new String[] { ".svg" }, true, true); PLOTLOCATION, new String[] { ".svg" }, true, true);
@ -128,8 +129,8 @@ public class PlotModels {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
for (LocalizationFile file : files) { for (ILocalizationFile file : files) {
String fileName = file.getName(); String fileName = file.getPath();
fileName = fileName.substring(PLOTLOCATION.length() + 1); fileName = fileName.substring(PLOTLOCATION.length() + 1);
try { try {
if (!models.containsKey(fileName)) { if (!models.containsKey(fileName)) {

View file

@ -61,6 +61,7 @@ import com.raytheon.viz.volumebrowser.vbui.VBMenuBarItemsMgr.ViewMenu;
* Jul 07, 2015 4641 mapeters Fix/improve comparators for VbSource sorting. * Jul 07, 2015 4641 mapeters Fix/improve comparators for VbSource sorting.
* Jul 10, 2015 4641 mapeters Added check for sources with null key/category fields. * Jul 10, 2015 4641 mapeters Added check for sources with null key/category fields.
* Oct 05, 2015 3861 bsteffen Remove deprecated method call on LocalizationFile * Oct 05, 2015 3861 bsteffen Remove deprecated method call on LocalizationFile
* Feb 12, 2016 5242 dgilling Remove calls to deprecated Localization APIs.
* *
* </pre> * </pre>
* *
@ -217,8 +218,9 @@ public class VbSourceList {
return 1; return 1;
} else if (n2 > n1 && Character.isDigit(s2.charAt(n1))) { } else if (n2 > n1 && Character.isDigit(s2.charAt(n1))) {
return -1; return -1;
} else } else {
return Integer.valueOf(number1) - Integer.valueOf(number2); return Integer.valueOf(number1) - Integer.valueOf(number2);
}
} }
return n1 - n2; return n1 - n2;
} }
@ -345,7 +347,7 @@ public class VbSourceList {
LocalizationFile[] files = pm.listStaticFiles( LocalizationFile[] files = pm.listStaticFiles(
"volumebrowser/VbSources", null, false, true); "volumebrowser/VbSources", null, false, true);
for (LocalizationFile file : files) { for (LocalizationFile file : files) {
fileNames.add(file.getName()); fileNames.add(file.getPath());
} }
} else { } else {
fileNames.add(VB_SOURCE_FILE); fileNames.add(VB_SOURCE_FILE);
@ -369,7 +371,7 @@ public class VbSourceList {
} catch (IOException | LocalizationException e) { } catch (IOException | LocalizationException e) {
statusHandler statusHandler
.handle(Priority.ERROR, .handle(Priority.ERROR,
locFile.getName() locFile.getPath()
+ " was excluded from sources menu due to error reading file."); + " was excluded from sources menu due to error reading file.");
} }
if (sources != null) { if (sources != null) {