[vassalengine-svn] SF.net SVN: vassalengine: [2768] VASSAL-src/branches/uckelman-caching/src/ VASSA
Brought to you by:
rodneykinney,
uckelman
From: <uck...@us...> - 2007-12-27 22:21:13
|
Revision: 2768 http://vassalengine.svn.sourceforge.net/vassalengine/?rev=2768&view=rev Author: uckelman Date: 2007-12-27 14:21:18 -0800 (Thu, 27 Dec 2007) Log Message: ----------- Stream cleanup. Modified Paths: -------------- VASSAL-src/branches/uckelman-caching/src/VASSAL/build/module/ModuleExtension.java VASSAL-src/branches/uckelman-caching/src/VASSAL/i18n/Translation.java VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/BasicModule.java VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/install/InstallWizard.java Modified: VASSAL-src/branches/uckelman-caching/src/VASSAL/build/module/ModuleExtension.java =================================================================== --- VASSAL-src/branches/uckelman-caching/src/VASSAL/build/module/ModuleExtension.java 2007-12-27 21:55:22 UTC (rev 2767) +++ VASSAL-src/branches/uckelman-caching/src/VASSAL/build/module/ModuleExtension.java 2007-12-27 22:21:18 UTC (rev 2768) @@ -20,6 +20,7 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -83,41 +84,42 @@ } public void build() { - String fileName = "buildFile"; //$NON-NLS-1$ + final String fileName = "buildFile"; //$NON-NLS-1$ + GameModule.getGameModule().getDataArchive().addExtension(archive); + InputStream inStream = null; - try { - if (archive != null) { + if (archive != null) { + try { + inStream = archive.getFileStream(fileName); + } + catch (IOException e1) { try { - inStream = archive.getFileStream(fileName); + if (inStream != null) inStream.close(); } - catch (IOException e) { + catch (IOException e2) { } } + } - GameModule.getGameModule().getDataArchive().addExtension(archive); + GameModule.getGameModule().getDataArchive().addExtension(archive); - try { - if (inStream == null) { - build(null); - } - else { - Document doc = Builder.createDocument(inStream); + try { + if (inStream == null) { + build(null); + } + else { + try { + final Document doc = Builder.createDocument(inStream); build(doc.getDocumentElement()); } + finally { + inStream.close(); + } } - catch (IOException e) { - throw new IllegalBuildException(e.getMessage()); - } } - finally { - try { - if (inStream != null) inStream.close(); - } - catch (IOException e) { - // should not happen - e.printStackTrace(); - } + catch (IOException e) { + throw new IllegalBuildException(e.getMessage()); } GameModule.getGameModule().add(this); @@ -135,7 +137,13 @@ } public String[] getAttributeNames() { - return new String[]{UNIVERSAL, VERSION, BASE_MODULE_NAME, BASE_MODULE_VERSION, VASSAL_VERSION_CREATED}; + return new String[]{ + UNIVERSAL, + VERSION, + BASE_MODULE_NAME, + BASE_MODULE_VERSION, + VASSAL_VERSION_CREATED + }; } public Class[] getAllowableConfigureComponents() { @@ -258,7 +266,7 @@ String save = buildString(); ((ArchiveWriter) archive).addFile ("buildFile", //$NON-NLS-1$ - new java.io.ByteArrayInputStream(save.getBytes("UTF-8"))); //$NON-NLS-1$ + new ByteArrayInputStream(save.getBytes("UTF-8"))); //$NON-NLS-1$ ((ArchiveWriter) archive).write(); lastSave = save; } @@ -273,7 +281,7 @@ String save = buildString(); ((ArchiveWriter) archive).addFile ("buildFile", //$NON-NLS-1$ - new java.io.ByteArrayInputStream(save.getBytes("UTF-8"))); //$NON-NLS-1$ + new ByteArrayInputStream(save.getBytes("UTF-8"))); //$NON-NLS-1$ ((ArchiveWriter) archive).saveAs(); lastSave = save; } Modified: VASSAL-src/branches/uckelman-caching/src/VASSAL/i18n/Translation.java =================================================================== --- VASSAL-src/branches/uckelman-caching/src/VASSAL/i18n/Translation.java 2007-12-27 21:55:22 UTC (rev 2767) +++ VASSAL-src/branches/uckelman-caching/src/VASSAL/i18n/Translation.java 2007-12-27 22:21:18 UTC (rev 2768) @@ -116,12 +116,12 @@ * property value */ public void setProperty(String key, String value) { - if (value == null || value.length() == 0) { - getProperties().remove(key); - } - else { + if (value == null || value.length() == 0) { + getProperties().remove(key); + } + else { getProperties().setProperty(key, value); - } + } dirty = true; } @@ -159,20 +159,17 @@ InputStream in = null; try { - try { - in = GameModule.getGameModule().getDataArchive().getFileStream(bundle); - } - catch (IOException e) { - // properties have not been saved yet - } - - if (in != null) { - localProperties.load(in); - } + try { + in = GameModule.getGameModule().getDataArchive().getFileStream(bundle); + localProperties.load(in); + } + finally { + if (in != null) in.close(); + } } - finally { - if (in != null) in.close(); - } + catch (IOException e) { + // properties have not been saved yet + } dirty = false; } Modified: VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/BasicModule.java =================================================================== --- VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/BasicModule.java 2007-12-27 21:55:22 UTC (rev 2767) +++ VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/BasicModule.java 2007-12-27 22:21:18 UTC (rev 2768) @@ -53,33 +53,41 @@ } protected void build() throws IOException { - String fileName = "buildFile"; //$NON-NLS-1$ + final String fileName = "buildFile"; //$NON-NLS-1$ + InputStream inStream = null; try { - try { - inStream = getDataArchive().getFileStream(fileName); - } - catch (IOException ex) { - if (new File(getDataArchive().getName()).exists()) { - throw new IOException( - Resources.getString("BasicModule.not_a_module")); //$NON-NLS-1$ + inStream = getDataArchive().getFileStream(fileName); + } + catch (IOException ex1) { + if (new File(getDataArchive().getName()).exists()) { + try { + if (inStream != null) inStream.close(); } + catch (IOException ex2) { + } + + throw new IOException( + Resources.getString("BasicModule.not_a_module")); //$NON-NLS-1$ } - try { - if (inStream == null) { - build(null); - } - else { - Document doc = Builder.createDocument(inStream); + } + + try { + if (inStream == null) { + build(null); + } + else { + try { + final Document doc = Builder.createDocument(inStream); build(doc.getDocumentElement()); } + finally { + inStream.close(); + } } - catch (IOException ex) { - throw new IllegalArgumentException(ex.getMessage()); - } } - finally { - if (inStream != null) inStream.close(); + catch (IOException ex) { + throw new IllegalArgumentException(ex.getMessage()); } getFileMenu().add(getPrefs().getEditor().getEditAction()); Modified: VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/install/InstallWizard.java =================================================================== --- VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/install/InstallWizard.java 2007-12-27 21:55:22 UTC (rev 2767) +++ VASSAL-src/branches/uckelman-caching/src/VASSAL/launch/install/InstallWizard.java 2007-12-27 22:21:18 UTC (rev 2768) @@ -25,11 +25,11 @@ import VASSAL.i18n.BundleHelper; - /** - * Walks the user through a wizard interface. The user may choose between an auto-updating (networked jnlp) or purely - * local installation (jnlp on local filesystem) installations, and can also select the particular version of VASSAL to - * install + * Walks the user through a wizard interface. The user may choose between an + * auto-updating (networked jnlp) or purely local installation (jnlp on + * local filesystem) installations, and can also select the particular + * version of VASSAL to install. * * @author rkinney */ @@ -37,12 +37,21 @@ private static BundleHelper bundle = new BundleHelper(ResourceBundle.getBundle("VASSAL.i18n.VASSAL", Locale.getDefault())); private WizardDialog dialog; private Properties properties; + public void start() throws IOException, InstantiationException, IllegalAccessException, ClassNotFoundException { - Properties p = new Properties(); - InputStream in = getClass().getResourceAsStream("/"+INSTALL_PROPERTIES); - if (in != null) { - p.load(in); + final Properties p = new Properties(); + + InputStream in = null; + try { + in = getClass().getResourceAsStream("/"+INSTALL_PROPERTIES); + if (in != null) { + p.load(in); + } } + finally { + if (in != null) in.close(); + } + properties = new Properties(p); dialog = new WizardDialog(this); dialog.setTitle(properties.getProperty(TITLE,InstallWizard.getResources().getString("Install.install_vassal"))); //$NON-NLS-1$ //$NON-NLS-2$ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |