[jsword-svn] r2053 - in trunk: bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic biblemapper/.settings biblemapper/src/main/java/org/crosswire/biblemapper/swing common-swing/src/main/java/org/crosswire/common/swing common-swing/src/main/java/org/crosswire/common/swing/desktop javatar/.settings jsword jsword/src/main/java/org/crosswire/common/activate jsword/src/main/java/org/crosswire/common/config jsword/src/main/java/org/crosswire/common/diff jsword/src/main/java/org/crosswire/common/history jsword/src/main/java/org/crosswire/common/options jsword/src/main/java/org/crosswire/common/progress jsword/src/main/java/org/crosswire/common/util jsword/src/main/java/org/crosswire/common/xml jsword/src/main/java/org/crosswire/jsword/book/install jsword/src/main/java/org/crosswire/jsword/book/sword jsword/src/main/java/org/crosswire/jsword/index/lucene jsword/src/main/java/org/crosswire/jsword/index/lucene/analysis jsword/src/main/java/org/crosswire/jsword/passage jsword/src/main/java/org/crosswire/jsword/util jsword/src/test/java/org/crosswire/common/progress jsword-limbo/.settings jsword-sword/.settings jsword-web/.settings

dmsmith at crosswire.org dmsmith at crosswire.org
Fri Dec 10 12:34:54 MST 2010


Author: dmsmith
Date: 2010-12-10 12:34:53 -0700 (Fri, 10 Dec 2010)
New Revision: 2053

Modified:
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SiteEditorFactory.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/ActiveURITip.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipMgr.java
   trunk/biblemapper/.settings/org.eclipse.jdt.core.prefs
   trunk/biblemapper/src/main/java/org/crosswire/biblemapper/swing/Mapper.java
   trunk/common-swing/src/main/java/org/crosswire/common/swing/FontStore.java
   trunk/common-swing/src/main/java/org/crosswire/common/swing/desktop/LayoutPersistence.java
   trunk/javatar/.settings/org.eclipse.jdt.core.prefs
   trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs
   trunk/jsword-sword/.settings/org.eclipse.jdt.core.prefs
   trunk/jsword-web/.settings/org.eclipse.jdt.core.prefs
   trunk/jsword/JSwordDictionary.txt
   trunk/jsword/src/main/java/org/crosswire/common/activate/Activator.java
   trunk/jsword/src/main/java/org/crosswire/common/config/Config.java
   trunk/jsword/src/main/java/org/crosswire/common/diff/Diff.java
   trunk/jsword/src/main/java/org/crosswire/common/diff/Patch.java
   trunk/jsword/src/main/java/org/crosswire/common/diff/PatchEntry.java
   trunk/jsword/src/main/java/org/crosswire/common/history/History.java
   trunk/jsword/src/main/java/org/crosswire/common/options/OptionList.java
   trunk/jsword/src/main/java/org/crosswire/common/progress/Job.java
   trunk/jsword/src/main/java/org/crosswire/common/progress/JobManager.java
   trunk/jsword/src/main/java/org/crosswire/common/util/CollectionUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/util/Convert.java
   trunk/jsword/src/main/java/org/crosswire/common/util/NetUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/util/PluginUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/util/ResourceUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/util/StringUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/util/Translations.java
   trunk/jsword/src/main/java/org/crosswire/common/xml/XMLUtil.java
   trunk/jsword/src/main/java/org/crosswire/common/xml/XalanProcess.java
   trunk/jsword/src/main/java/org/crosswire/jsword/book/install/InstallManager.java
   trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/RawFileBackend.java
   trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookMetaData.java
   trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java
   trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/IndexMetadata.java
   trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/analysis/AnalyzerFactory.java
   trunk/jsword/src/main/java/org/crosswire/jsword/passage/PassageTally.java
   trunk/jsword/src/main/java/org/crosswire/jsword/util/WebWarning.java
   trunk/jsword/src/test/java/org/crosswire/common/progress/JobTest.java
Log:
JS-142 More Generic work, using PropertyMap to do cleanup.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -102,10 +102,10 @@
      */
     public boolean isSet(Book book, Language lang) {
         if (book != null) {
-            return getFontMap().getProperty(book.getInitials()) != null;
+            return getFontMap().get(book.getInitials()) != null;
         }
         if (lang != null) {
-            return getFontMap().getProperty(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString()) != null;
+            return getFontMap().get(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString()) != null;
         }
         return false;
     }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SiteEditorFactory.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SiteEditorFactory.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SiteEditorFactory.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -23,8 +23,8 @@
 
 import java.io.IOException;
 import java.util.MissingResourceException;
-import java.util.Properties;
 
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ReflectionUtil;
 import org.crosswire.common.util.ResourceUtil;
 import org.crosswire.jsword.book.install.Installer;
@@ -48,8 +48,8 @@
      */
     public static SiteEditor createSiteEditor(Installer installer) {
         try {
-            Properties properties = ResourceUtil.getProperties(SiteEditorFactory.class);
-            String className = properties.getProperty(installer.getType());
+            PropertyMap properties = ResourceUtil.getProperties(SiteEditorFactory.class);
+            String className = properties.get(installer.getType());
             SiteEditor editor = (SiteEditor) ReflectionUtil.construct(className);
             editor.setInstaller(installer);
             return editor;

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/ActiveURITip.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/ActiveURITip.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/ActiveURITip.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -158,17 +158,6 @@
             htmlsep.setParameter(XSLTProperty.FONT.getName(), fontSpec);
 
             txt = XMLUtil.writeToString(htmlsep);
-            /* BUG_PARADE(DMS): 4775730
-             * This bug shows up before Java 5 in GenBook Practice "/Part 1/THE THIRD STAGE" and elsewhere.
-             * It appears that it is a line too long issue.
-             */
-            /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
-            if (txt.length() > 32768 && BookCategory.GENERAL_BOOK.equals(book.getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version");
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) {
-                    txt = txt.substring(0, 32760) + "...";
-                }
-            }
         } catch (SAXException e) {
             Reporter.informUser(this, e);
             e.printStackTrace();

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -102,7 +102,7 @@
         }
 
         if (bookChanged) {
-            log.debug("new book(s) chosen: " + StringUtil.toString(books));
+            log.debug("new book(s) chosen: " + Arrays.toString(books));
         }
 
         if (bookChanged || keyChanged) {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -172,17 +172,6 @@
             htmlsep.setParameter(XSLTProperty.FONT.getName(), fontSpec);
 
             String text = XMLUtil.writeToString(htmlsep);
-            /* BUG_PARADE(DMS): 4775730
-             * This bug shows up before Java 5 in GenBook Practice "/Part 1/THE THIRD STAGE" and elsewhere.
-             * It appears that it is a line too long issue.
-             */
-            /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
-            if (text.length() > 32768 && BookCategory.GENERAL_BOOK.equals(getFirstBook().getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version");
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) {
-                    text = text.substring(0, 32760) + "...";
-                }
-            }
             txtView.setText(text);
             txtView.select(0, 0);
         } catch (SAXException e) {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -158,18 +158,6 @@
             htmlsep.setParameter(XSLTProperty.FONT.getName(), fontSpec);
 
             txt = XMLUtil.writeToString(htmlsep);
-            /* BUG_PARADE(DMS): 4775730
-             * This bug shows up before Java 5 in GenBook Practice "/Part 1/THE THIRD STAGE" and elsewhere.
-             * It appears that it is a line too long issue.
-             */
-            /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
-            if (txt.length() > 32768 && BookCategory.GENERAL_BOOK.equals(book.getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version");
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) {
-                    txt = txt.substring(0, 32760) + "...";
-                }
-            }
-
         } catch (SAXException e) {
             Reporter.informUser(this, e);
             e.printStackTrace();

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipMgr.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipMgr.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipMgr.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -192,18 +192,6 @@
             htmlsep.setParameter(XSLTProperty.FONT.getName(), fontSpec);
 
             txt = XMLUtil.writeToString(htmlsep);
-            /* BUG_PARADE(DMS): 4775730
-             * This bug shows up before Java 5 in GenBook Practice "/Part 1/THE THIRD STAGE" and elsewhere.
-             * It appears that it is a line too long issue.
-             */
-            /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
-            if (txt.length() > 32768 && BookCategory.GENERAL_BOOK.equals(book.getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version");
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) {
-
-                    txt = txt.substring(0, 32760) + "...";
-                }
-            }
         } catch (SAXException e) {
             Reporter.informUser(this, e);
             e.printStackTrace();

Modified: trunk/biblemapper/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/biblemapper/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/biblemapper/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:34:53 UTC (rev 2053)
@@ -1,4 +1,4 @@
-#Wed Dec 08 05:02:14 EST 2010
+#Wed Dec 08 12:52:28 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -11,13 +11,15 @@
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
 org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.comparingIdentical=error
 org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
 org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
 org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
 org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
@@ -35,7 +37,7 @@
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
 org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignoreng
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
@@ -59,7 +61,11 @@
 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
 org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
@@ -77,7 +83,7 @@
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

Modified: trunk/biblemapper/src/main/java/org/crosswire/biblemapper/swing/Mapper.java
===================================================================
--- trunk/biblemapper/src/main/java/org/crosswire/biblemapper/swing/Mapper.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/biblemapper/src/main/java/org/crosswire/biblemapper/swing/Mapper.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -39,7 +39,6 @@
 import java.io.PrintWriter;
 import java.util.List;
 import java.util.Locale;
-import java.util.Properties;
 import java.util.ResourceBundle;
 
 import javax.swing.BorderFactory;
@@ -73,6 +72,7 @@
 import org.crosswire.common.swing.ExceptionPane;
 import org.crosswire.common.swing.GuiUtil;
 import org.crosswire.common.util.CWClassLoader;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.Reporter;
 import org.crosswire.common.util.ResourceUtil;
 import org.crosswire.common.xml.XMLUtil;
@@ -144,7 +144,7 @@
 
             config.add(xmlconfig, configResources);
 
-            Properties prop = ResourceUtil.getProperties("mapper");
+            PropertyMap prop = ResourceUtil.getProperties("mapper");
             if (prop != null) {
                 config.setProperties(prop);
             }

Modified: trunk/common-swing/src/main/java/org/crosswire/common/swing/FontStore.java
===================================================================
--- trunk/common-swing/src/main/java/org/crosswire/common/swing/FontStore.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/common-swing/src/main/java/org/crosswire/common/swing/FontStore.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -30,6 +30,7 @@
 import org.crosswire.common.util.Language;
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 
 /**
@@ -80,7 +81,7 @@
         }
         this.storeName = storeName;
         this.fontStore = NetUtil.lengthenURI(fontDir, this.storeName + FileUtil.EXTENSION_PROPERTIES);
-        this.fontMap = new Properties();
+        this.fontMap = new PropertyMap();
     }
 
     /**
@@ -88,7 +89,7 @@
      */
     public String getDefaultFont() {
         load();
-        defaultFont = fontMap.getProperty(DEFAULT_KEY, DEFAULT_FONT);
+        defaultFont = fontMap.get(DEFAULT_KEY, DEFAULT_FONT);
         return defaultFont;
     }
 
@@ -99,7 +100,7 @@
     public void setDefaultFont(String defaultFont) {
         load();
         this.defaultFont = defaultFont;
-        fontMap.setProperty(DEFAULT_KEY, defaultFont);
+        fontMap.put(DEFAULT_KEY, defaultFont);
         store();
     }
 
@@ -116,7 +117,7 @@
             return;
         }
         load();
-        fontMap.setProperty(resource, GuiConvert.font2String(font));
+        fontMap.put(resource, GuiConvert.font2String(font));
         store();
     }
 
@@ -133,7 +134,7 @@
             return;
         }
         load();
-        fontMap.setProperty(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString(), GuiConvert.font2String(font));
+        fontMap.put(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString(), GuiConvert.font2String(font));
         store();
     }
 
@@ -169,7 +170,7 @@
 
         String fontSpec = null;
         if (resource != null) {
-            fontSpec = fontMap.getProperty(resource);
+            fontSpec = fontMap.get(resource);
         }
 
         if (fontSpec != null) {
@@ -181,7 +182,7 @@
         }
 
         if (lang != null) {
-            fontSpec = fontMap.getProperty(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString());
+            fontSpec = fontMap.get(new StringBuilder(LANG_KEY_PREFIX).append(lang.getCode()).toString());
         }
 
         if (fontSpec != null) {
@@ -250,7 +251,7 @@
     /**
      * @return the fontMap
      */
-    protected Properties getFontMap() {
+    protected PropertyMap getFontMap() {
         return fontMap;
     }
 
@@ -258,7 +259,7 @@
      * @param fontMap
      *            the fontMap to set
      */
-    protected void setFontMap(Properties fontMap) {
+    protected void setFontMap(PropertyMap fontMap) {
         this.fontMap = fontMap;
     }
 
@@ -275,7 +276,7 @@
             loaded = true;
         } catch (IOException e) {
             log.error("Unable to load the font store: " + fontStore);
-            fontMap = new Properties();
+            fontMap = new PropertyMap();
         }
     }
 
@@ -314,7 +315,7 @@
     private String defaultFont;
     private URI fontStore;
     private boolean loaded;
-    private Properties fontMap;
+    private PropertyMap fontMap;
 
     private static final Logger log = Logger.getLogger(FontStore.class);
 }

Modified: trunk/common-swing/src/main/java/org/crosswire/common/swing/desktop/LayoutPersistence.java
===================================================================
--- trunk/common-swing/src/main/java/org/crosswire/common/swing/desktop/LayoutPersistence.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/common-swing/src/main/java/org/crosswire/common/swing/desktop/LayoutPersistence.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -28,12 +28,12 @@
 import java.awt.Window;
 import java.io.IOException;
 import java.net.URI;
-import java.util.Properties;
 
 import org.crosswire.common.util.CWProject;
 import org.crosswire.common.util.FileUtil;
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 import org.crosswire.common.util.StringUtil;
 
@@ -56,7 +56,7 @@
         try {
             settings = ResourceUtil.getProperties(getClass());
         } catch (IOException e) {
-            settings = new Properties();
+            settings = new PropertyMap();
         }
     }
 
@@ -95,7 +95,7 @@
             state = frame.getExtendedState();
         }
 
-        settings.setProperty(window.getName(), StringUtil.join(new String[] {
+        settings.put(window.getName(), StringUtil.join(new String[] {
                 Integer.toString(state), Integer.toString(window.getWidth()), Integer.toString(window.getHeight()), Integer.toString(window.getX()),
                 Integer.toString(window.getY())
         }, "_")
@@ -117,7 +117,7 @@
      *            the window to persist
      */
     public synchronized void restoreLayout(Window window) {
-        String[] parts = StringUtil.split(settings.getProperty(window.getName()), '_');
+        String[] parts = StringUtil.split(settings.get(window.getName()), '_');
 
         // If our window did not have saved settings do nothing.
         if (parts == null || parts.length == 0) {
@@ -141,7 +141,7 @@
     /**
      * The persistence storage and retrieval object
      */
-    private Properties settings;
+    private PropertyMap settings;
 
     /**
      * Suffix for window state key

Modified: trunk/javatar/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/javatar/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/javatar/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:34:53 UTC (rev 2053)
@@ -1,4 +1,4 @@
-#Wed Dec 08 05:08:09 EST 2010
+#Wed Dec 08 12:53:16 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -60,6 +60,7 @@
 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning

Modified: trunk/jsword/JSwordDictionary.txt
===================================================================
--- trunk/jsword/JSwordDictionary.txt	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/JSwordDictionary.txt	2010-12-10 19:34:53 UTC (rev 2053)
@@ -161,3 +161,4 @@
 iterable
 placeholders
 dodgy
+malformed

Modified: trunk/jsword/src/main/java/org/crosswire/common/activate/Activator.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/activate/Activator.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/activate/Activator.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -22,7 +22,6 @@
 package org.crosswire.common.activate;
 
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.Set;
 
 /**
@@ -81,9 +80,8 @@
     }
 
     public static void deactivateAll() {
-        Iterator<Activatable> iter = activated.iterator();
-        while (iter.hasNext()) {
-            deactivate(iter.next());
+        for (Activatable item : activated) {
+            deactivate(item);
         }
     }
 

Modified: trunk/jsword/src/main/java/org/crosswire/common/config/Config.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/config/Config.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/config/Config.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -29,13 +29,13 @@
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
-import java.util.Properties;
 import java.util.ResourceBundle;
 
 import org.crosswire.common.util.EventListenerList;
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.LucidException;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.Reporter;
 import org.jdom.Document;
 import org.jdom.Element;
@@ -92,7 +92,7 @@
         this.title = title;
         keys = new ArrayList<String>();
         models = new ArrayList<Choice>();
-        local = new Properties();
+        local = new PropertyMap();
         listenerList = new EventListenerList();
     }
 
@@ -230,16 +230,14 @@
      * classes displaying config information
      */
     public String getLocal(String name) {
-        return local.getProperty(name);
+        return local.get(name);
     }
 
     /**
      * Take the data in the application and copy it to the local storage area.
      */
     public void applicationToLocal() {
-        Iterator<String> iter = keys.iterator();
-        while (iter.hasNext()) {
-            String key = iter.next();
+        for (String key : keys) {
             Choice model = getChoice(key);
             String value = model.getString();
             local.put(key, value);
@@ -250,13 +248,11 @@
      * Take the data in the local storage area and copy it to the application.
      */
     public void localToApplication() {
-        Iterator<String> iter = keys.iterator();
-        while (iter.hasNext()) {
-            String key = iter.next();
+        for (String key : keys) {
             Choice choice = getChoice(key);
 
             String oldValue = choice.getString(); // never returns null
-            String newValue = local.getProperty(key);
+            String newValue = local.get(key);
 
             // The new value shouldn't really be blank - obviously this
             // choice has just been added, substitute the default.
@@ -264,7 +260,7 @@
                 if ((oldValue == null) || (oldValue.length() == 0)) {
                     continue;
                 }
-                local.setProperty(key, oldValue);
+                local.put(key, oldValue);
                 newValue = oldValue;
             }
 
@@ -292,11 +288,9 @@
      * Take the data stored permanently and copy it to the local storage area,
      * using the specified stream
      */
-    public void setProperties(Properties prop) {
-        Iterator<Object> iter = prop.keySet().iterator();
-        while (iter.hasNext()) {
-            String key = (String) iter.next();
-            String value = prop.getProperty(key);
+    public void setProperties(PropertyMap prop) {
+        for (String key : prop.keySet()) {
+            String value = prop.get(key);
 
             Choice model = getChoice(key);
             // Only if a value was stored and it should be stored then we use
@@ -310,13 +304,11 @@
     /**
      * Take the data in the local storage area and store it permanently
      */
-    public Properties getProperties() {
-        Properties prop = new Properties();
+    public PropertyMap getProperties() {
+        PropertyMap prop  = new PropertyMap();
 
-        Iterator<String> iter = keys.iterator();
-        while (iter.hasNext()) {
-            String key = iter.next();
-            String value = local.getProperty(key);
+        for (String key : keys) {
+            String value = local.get(key);
 
             Choice model = getChoice(key);
             if (model.isSaveable()) {
@@ -507,7 +499,7 @@
     /**
      * The set of local values
      */
-    protected Properties local = new Properties();
+    protected PropertyMap local;
 
     /**
      * The set of property change listeners.

Modified: trunk/jsword/src/main/java/org/crosswire/common/diff/Diff.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/diff/Diff.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/diff/Diff.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -22,7 +22,6 @@
 package org.crosswire.common.diff;
 
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.List;
 import java.util.ListIterator;
 
@@ -217,9 +216,8 @@
                             pointer.remove();
                         }
                         Diff newDiff = new Diff(textDelete.toString(), textInsert.toString(), false);
-                        Iterator<Difference> iter = newDiff.compare().iterator();
-                        while (iter.hasNext()) {
-                            pointer.add(iter.next());
+                        for (Difference diff : newDiff.compare()) {
+                            pointer.add(diff);
                         }
                     }
                     countInserts = 0;
@@ -251,9 +249,7 @@
         int lastChars1 = 0;
         int lastChars2 = 0;
         Difference lastDiff = null;
-        Iterator<Difference> iter = diffs.iterator();
-        while (iter.hasNext()) {
-            Difference diff = iter.next();
+        for (Difference diff : diffs) {
             EditType editType = diff.getEditType();
 
             // Equality or deletion?

Modified: trunk/jsword/src/main/java/org/crosswire/common/diff/Patch.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/diff/Patch.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/diff/Patch.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -124,10 +124,8 @@
         // Recreate the patches to determine context info.
         String prePatchText = source;
         String postPatchText = source;
-        Iterator<Difference> iter = diffs.iterator();
         int x = 0;
-        while (iter.hasNext()) {
-            Difference diff = iter.next();
+        for (Difference diff : diffs) {
             EditType editType = diff.getEditType();
             String diffText = diff.getText();
             int len = diffText.length();
@@ -205,9 +203,7 @@
         int index1 = 0;
         int index2 = 0;
         int x = 0;
-        Iterator<PatchEntry> patchIter = patches.iterator();
-        while (patchIter.hasNext()) {
-            PatchEntry aPatch = patchIter.next();
+        for (PatchEntry aPatch : patches) {
             expectedLoc = aPatch.getTargetStart() + delta;
             text1 = aPatch.getSourceText();
             Match match = new Match(resultText, text1, expectedLoc);
@@ -367,9 +363,8 @@
      */
     public String toText() {
         StringBuilder text = new StringBuilder();
-        Iterator<PatchEntry> iter = patches.iterator();
-        while (iter.hasNext()) {
-            text.append(iter.next());
+        for (PatchEntry entry : patches) {
+            text.append(entry);
         }
         return text.toString();
     }

Modified: trunk/jsword/src/main/java/org/crosswire/common/diff/PatchEntry.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/diff/PatchEntry.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/diff/PatchEntry.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -161,9 +161,7 @@
         txt.append(getCoordinates(targetStart, targetLength));
         txt.append(" @@\n");
 
-        Iterator<Difference> iter = diffs.iterator();
-        while (iter.hasNext()) {
-            Difference diff = iter.next();
+        for (Difference diff : diffs) {
             txt.append(diff.getEditType().getSymbol());
             txt.append(encode(diff.getText()));
             txt.append('\n');
@@ -236,9 +234,7 @@
     // Compute and return the source text (all equalities and deletions).
     public String getSourceText() {
         StringBuilder txt = new StringBuilder();
-        Iterator<Difference> iter = diffs.iterator();
-        while (iter.hasNext()) {
-            Difference diff = iter.next();
+        for (Difference diff : diffs) {
             if (!EditType.INSERT.equals(diff.getEditType())) {
                 txt.append(diff.getText());
             }
@@ -249,9 +245,7 @@
     // Compute and return the destination text (all equalities and insertions).
     public String getTargetText() {
         StringBuilder txt = new StringBuilder();
-        Iterator<Difference> iter = diffs.iterator();
-        while (iter.hasNext()) {
-            Difference diff = iter.next();
+        for (Difference diff : diffs) {
             if (!EditType.DELETE.equals(diff.getEditType())) {
                 txt.append(diff.getText());
             }

Modified: trunk/jsword/src/main/java/org/crosswire/common/history/History.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/history/History.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/history/History.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -136,7 +136,7 @@
         if (backCount > 0) {
             return Collections.unmodifiableList(nav.subList(0, backCount));
         }
-        return Collections.EMPTY_LIST;
+        return Collections.emptyList();
     }
 
     /**
@@ -148,7 +148,7 @@
         if (backCount < nav.size()) {
             return Collections.unmodifiableList(nav.subList(backCount, nav.size()));
         }
-        return Collections.EMPTY_LIST;
+        return Collections.emptyList();
     }
 
     /**

Modified: trunk/jsword/src/main/java/org/crosswire/common/options/OptionList.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/options/OptionList.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/options/OptionList.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -130,9 +130,7 @@
             }
         }
 
-        Iterator<Option> iter = getLongOptions(key).iterator();
-        while (iter.hasNext()) {
-            Option match = iter.next();
+        for (Option match : getLongOptions(key)) {
             if (!matches.contains(match)) {
                 matches.add(match);
             }

Modified: trunk/jsword/src/main/java/org/crosswire/common/progress/Job.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/progress/Job.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/progress/Job.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -25,15 +25,14 @@
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Properties;
 import java.util.Timer;
 import java.util.TimerTask;
 
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 
 /**
  * A Generic method of keeping track of Threads and monitoring their progress.
@@ -402,13 +401,11 @@
         int maxAge = UNKNOWN;
         try {
             currentPredictionMap = new HashMap<String, Integer>();
-            Properties temp = NetUtil.loadProperties(predictionMapURI);
+            PropertyMap temp = NetUtil.loadProperties(predictionMapURI);
 
             // Determine the predicted time from the current prediction map
-            Iterator<Object> iter = temp.keySet().iterator();
-            while (iter.hasNext()) {
-                String title = (String) iter.next();
-                String timestr = temp.getProperty(title);
+            for (String title : temp.keySet()) {
+                String timestr = temp.get(title);
 
                 try {
                     Integer time = Integer.valueOf(timestr);
@@ -436,12 +433,10 @@
     private synchronized void savePredictions() {
         // Now we know the start and the end we can convert all times to
         // percents
-        Properties predictions = new Properties();
-        Iterator<String> iter = nextPredictionMap.keySet().iterator();
-        while (iter.hasNext()) {
-            String sectionName = iter.next();
+        PropertyMap predictions = new PropertyMap();
+        for (String sectionName : nextPredictionMap.keySet()) {
             Integer age = nextPredictionMap.get(sectionName);
-            predictions.setProperty(sectionName, age.toString());
+            predictions.put(sectionName, age.toString());
         }
 
         // And save. It's not a disaster if this goes wrong

Modified: trunk/jsword/src/main/java/org/crosswire/common/progress/JobManager.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/progress/JobManager.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/progress/JobManager.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -23,7 +23,6 @@
 
 import java.util.ArrayList;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -151,9 +150,7 @@
         // We ought only to tell listeners about jobs that are in our
         // list of jobs so we need to fire before delete.
         if (listeners != null) {
-            Iterator<WorkListener> iter = temp.iterator();
-            while (iter.hasNext()) {
-                WorkListener worker = iter.next();
+            for (WorkListener worker : temp) {
                 worker.workProgressed(ev);
             }
         }

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/CollectionUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/CollectionUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/CollectionUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -24,9 +24,8 @@
 import java.io.IOException;
 import java.net.URI;
 import java.util.ArrayList;
-import java.util.HashMap;
+import java.util.Enumeration;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Properties;
@@ -55,9 +54,8 @@
      */
     public static <T> List<T> createList(Iterable<T> it) {
         List<T> reply = new ArrayList<T>();
-        Iterator<T> iter = it.iterator();
-        while (iter.hasNext()) {
-            reply.add(iter.next());
+        for (T obj : it) {
+            reply.add(obj);
         }
 
         return reply;
@@ -72,9 +70,8 @@
      */
     public static <T> Set<T> createSet(Iterable<T> it) {
         Set<T> reply = new HashSet<T>();
-        Iterator<T> iter = it.iterator();
-        while (iter.hasNext()) {
-            reply.add(iter.next());
+        for (T obj : it) {
+            reply.add(obj);
         }
 
         return reply;
@@ -87,12 +84,14 @@
      *            The Properties to convert
      * @return The map
      */
-    public static <K,V> Map<K,V> properties2Map(Properties prop) {
-        Map<K,V> propMap = new HashMap<K,V>();
-        Iterator<Map.Entry<Object,Object>> iter = prop.entrySet().iterator();
-        while (iter.hasNext()) {
-            Map.Entry<K,V> entry = (Map.Entry<K,V>) iter.next();
-            propMap.put(entry.getKey(), entry.getValue());
+    public static PropertyMap properties2Map(Properties prop) {
+        PropertyMap propMap = new PropertyMap();
+        for (Enumeration<Object> e = prop.keys() ; e.hasMoreElements() ;) {
+            Object k = e.nextElement();
+            Object v = prop.get(k);
+            if (k instanceof String && v instanceof String) {
+                propMap.put((String) k, (String) v);
+            }
         }
         return propMap;
     }
@@ -105,8 +104,8 @@
      *            The URI of the Properties to convert
      * @return The map
      */
-    public static <K,V> Map<K,V> properties2Map(URI propUri) throws IOException {
-        return properties2Map(NetUtil.loadProperties(propUri));
+    public static PropertyMap properties2Map(URI propUri) throws IOException {
+        return NetUtil.loadProperties(propUri);
     }
 
 }

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/Convert.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/Convert.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/Convert.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -143,8 +143,8 @@
      *            the thing to convert
      * @return the converted data
      */
-    public static Map<String, String> string2Hashtable(String data, Class<?> superclass) {
-        Map<String, String> commands = new HashMap<String, String>();
+    public static PropertyMap string2Hashtable(String data, Class<?> superclass) {
+        PropertyMap commands = new PropertyMap();
 
         String[] data_arr = StringUtil.split(data, " ");
         String entry = "";
@@ -177,7 +177,7 @@
      *            the thing to convert
      * @return the converted data
      */
-    public static Map<String,String> string2Map(String data) {
+    public static PropertyMap string2Map(String data) {
         return string2Hashtable(data, Object.class);
     }
 

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/NetUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/NetUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/NetUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -40,6 +40,7 @@
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 import java.util.Properties;
 import java.util.jar.JarEntry;
 
@@ -579,11 +580,11 @@
      * @return the properties given by the URI
      * @throws IOException
      */
-    public static Properties loadProperties(URI uri) throws IOException {
+    public static PropertyMap loadProperties(URI uri) throws IOException {
         InputStream is = null;
         try {
             is = NetUtil.getInputStream(uri);
-            Properties prop = new Properties();
+            PropertyMap prop = new PropertyMap();
             prop.load(is);
             is.close();
             return prop;
@@ -604,12 +605,14 @@
      *            the label held in the properties file
      * @throws IOException
      */
-    public static void storeProperties(Properties properties, URI uri, String title) throws IOException {
+    public static void storeProperties(PropertyMap properties, URI uri, String title) throws IOException {
         OutputStream out = null;
 
         try {
             out = NetUtil.getOutputStream(uri);
-            properties.store(out, title);
+            PropertyMap temp = new PropertyMap();
+            temp.putAll(properties);
+            temp.store(out, title);
         } finally {
             IOUtil.close(out);
         }

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/PluginUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/PluginUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/PluginUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -30,7 +30,6 @@
 import java.util.List;
 import java.util.Map;
 import java.util.MissingResourceException;
-import java.util.Properties;
 
 /**
  * A plugin maps one or more implementations to an interface or abstract class
@@ -61,11 +60,10 @@
     public static <T> Class<T>[] getImplementors(Class<T> clazz) {
         try {
             List<Class<T>> matches = new ArrayList<Class<T>>();
-            Properties props = getPlugin(clazz);
-            Iterator<Object> it = props.values().iterator();
-            while (it.hasNext()) {
+            PropertyMap props = getPlugin(clazz);
+            for (String key : props.keySet()) {
+                String name = props.get(key);
                 try {
-                    String name = (String) it.next();
                     Class<T> impl = (Class<T>) ClassUtil.forName(name);
                     if (clazz.isAssignableFrom(impl)) {
                         matches.add(impl);
@@ -102,12 +100,12 @@
         Map<String,Class<T>> matches = new HashMap<String,Class<T>>();
 
         try {
-            Properties props = getPlugin(clazz);
-            Iterator<Object> it = props.keySet().iterator();
+            PropertyMap props = getPlugin(clazz);
+            Iterator<String> it = props.keySet().iterator();
             while (it.hasNext()) {
                 try {
-                    String key = (String) it.next();
-                    String value = props.getProperty(key);
+                    String key = it.next();
+                    String value = props.get(key);
                     Class<T> impl = (Class<T>) ClassUtil.forName(value);
                     if (clazz.isAssignableFrom(impl)) {
                         matches.put(key, impl);
@@ -147,8 +145,8 @@
      * @see PluginUtil#getImplementors(Class)
      */
     public static <T> Class<T> getImplementor(Class<T> clazz) throws IOException, ClassNotFoundException, ClassCastException {
-        Properties props = getPlugin(clazz);
-        String name = props.getProperty(DEFAULT);
+        PropertyMap props = getPlugin(clazz);
+        String name = props.get(DEFAULT);
 
         Class<T> impl = (Class<T>) ClassUtil.forName(name);
         if (!clazz.isAssignableFrom(impl)) {
@@ -198,18 +196,18 @@
      * @throws MissingResourceException
      *             if the resource can not be found
      */
-    public static <T> Properties getPlugin(Class<T> clazz) throws IOException {
+    public static <T> PropertyMap getPlugin(Class<T> clazz) throws IOException {
         String subject = ClassUtil.getShortClassName(clazz);
 
         try {
             String lookup = subject + PluginUtil.EXTENSION_PLUGIN;
             InputStream in = ResourceUtil.getResourceAsStream(clazz, lookup);
 
-            Properties prop = new Properties();
+            PropertyMap prop = new PropertyMap();
             prop.load(in);
             return prop;
         } catch (MissingResourceException e) {
-            return new Properties();
+            return new PropertyMap();
         }
     }
 

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/ResourceUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/ResourceUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/ResourceUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -25,7 +25,6 @@
 import java.io.InputStream;
 import java.net.URL;
 import java.util.MissingResourceException;
-import java.util.Properties;
 
 /**
  * Better implementations of the getResource methods with less ambiguity and
@@ -115,7 +114,7 @@
      * @throws MissingResourceException
      *             if the resource can not be found
      */
-    public static Properties getProperties(String subject) throws IOException {
+    public static PropertyMap getProperties(String subject) throws IOException {
         return getProperties(CallContext.getCallingClass(), subject);
     }
 
@@ -131,7 +130,7 @@
      * @throws MissingResourceException
      *             if the resource can not be found
      */
-    public static <T> Properties getProperties(Class<T> clazz) throws IOException {
+    public static <T> PropertyMap getProperties(Class<T> clazz) throws IOException {
         return getProperties(clazz, ClassUtil.getShortClassName(clazz));
     }
 
@@ -147,16 +146,16 @@
      * @throws MissingResourceException
      *             if the resource can not be found
      */
-    private static <T> Properties getProperties(Class<T> clazz, String subject) throws IOException {
+    private static <T> PropertyMap getProperties(Class<T> clazz, String subject) throws IOException {
         try {
             String lookup = subject + FileUtil.EXTENSION_PROPERTIES;
             InputStream in = getResourceAsStream(clazz, lookup);
 
-            Properties prop = new Properties();
+            PropertyMap prop = new PropertyMap();
             prop.load(in);
             return prop;
         } catch (MissingResourceException e) {
-            return new Properties();
+            return new PropertyMap();
         }
     }
 }

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/StringUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/StringUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/StringUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -587,13 +587,15 @@
      * <tt>null</tt>, in which case <tt>"null"</tt> is returned.
      * 
      * <p>
-     * This is borrowed from Java 1.5, but uses StringBuilder.
+     * This is borrowed from Java 1.5
      * 
      * @param a
      *            the array whose string representation to return
      * @return a string representation of <tt>a</tt>
      * @since 1.5
+     * @deprecated use Arrays.toString(Object[] a) instead
      */
+    @Deprecated
     public static String toString(Object[] a) {
         if (a == null) {
             return "null";

Modified: trunk/jsword/src/main/java/org/crosswire/common/util/Translations.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/util/Translations.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/util/Translations.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -27,7 +27,6 @@
 import java.util.LinkedHashMap;
 import java.util.Locale;
 import java.util.Map;
-import java.util.Properties;
 
 import org.crosswire.common.config.ChoiceFactory;
 
@@ -46,8 +45,8 @@
     private Translations() {
         try {
             loadSupportedTranslations();
-            Properties props = ResourceUtil.getProperties(getClass());
-            translation = props.getProperty(TRANSLATION_KEY);
+            PropertyMap props = ResourceUtil.getProperties(getClass());
+            translation = props.get(TRANSLATION_KEY);
             if (translation == null || translation.length() == 0) {
                 // check for a match against language and country
                 // This pertains to zh_TW and zh_CN
@@ -90,12 +89,12 @@
      * 
      * @return an string array of translations in locale friendly names.
      */
-    public Map<String,String> getSupported() {
+    public PropertyMap getSupported() {
         loadSupportedTranslations();
 
         // I18N(DMS) Collate these according to the current locale, putting the
         // current locale's locale first.
-        Map<String,String> names = new LinkedHashMap<String,String>();
+        PropertyMap names = new PropertyMap();
 
         for (int i = 0; i < translations.length; i++) {
             names.put(translations[i], toString(translations[i]));
@@ -156,7 +155,7 @@
 
         try {
             translation = found;
-            Properties props = new Properties();
+            PropertyMap props = new PropertyMap();
             if (translation != DEFAULT_TRANSLATION) {
                 props.put(TRANSLATION_KEY, translation);
             }

Modified: trunk/jsword/src/main/java/org/crosswire/common/xml/XMLUtil.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/xml/XMLUtil.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/xml/XMLUtil.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -23,14 +23,13 @@
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Map;
 import java.util.Set;
 import java.util.regex.Pattern;
 
 import org.crosswire.common.util.FileUtil;
 import org.crosswire.common.util.Logger;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 import org.jdom.Document;
 import org.jdom.JDOMException;
@@ -356,7 +355,7 @@
 
     // Map entities to their unicode equivalent
     private static Set<String> goodEntities = new HashSet<String>();
-    private static Map<String,String> badEntities = new HashMap<String,String>();
+    private static PropertyMap badEntities = new PropertyMap();
     static {
         // pre-defined XML entities
         goodEntities.add("&quot;"); // quotation mark

Modified: trunk/jsword/src/main/java/org/crosswire/common/xml/XalanProcess.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/common/xml/XalanProcess.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/common/xml/XalanProcess.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -51,14 +51,14 @@
         Class<?> clazz = null;
         Method main = null;
         try {
-            // Try for 1.4.x
-            clazz = ClassUtil.forName("org.apache.xalan.xslt.Process");
-            main = clazz.getMethod("main", new Class[] { String[].class});
+            // Try for 1.5.x
+            clazz = ClassUtil.forName("com.sun.org.apache.xalan.internal.xslt.Process");
+                    main = clazz.getMethod("_main", new Class[] { String[].class});
         } catch (ClassNotFoundException e) {
             try {
-                // Try for 1.5.x
-                clazz = ClassUtil.forName("com.sun.org.apache.xalan.internal.xslt.Process");
-                main = clazz.getMethod("_main", new Class[] { String[].class});
+                // Try for 1.4.x
+                clazz = ClassUtil.forName("org.apache.xalan.xslt.Process");
+                main = clazz.getMethod("main", new Class[] { String[].class});
             } catch (ClassNotFoundException e1) {
                 e1.printStackTrace(System.err);
             } catch (SecurityException e1) {
@@ -66,6 +66,8 @@
             } catch (NoSuchMethodException e1) {
                 e1.printStackTrace(System.err);
             }
+        } catch (SecurityException e1) {
+            e1.printStackTrace(System.err);
         } catch (NoSuchMethodException e) {
             e.printStackTrace(System.err);
             return;

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/book/install/InstallManager.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/book/install/InstallManager.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/book/install/InstallManager.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -27,7 +27,6 @@
 import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.Map;
-import java.util.Properties;
 import java.util.Set;
 
 import org.crosswire.common.util.CWProject;
@@ -36,6 +35,7 @@
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.NetUtil;
 import org.crosswire.common.util.PluginUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.Reporter;
 
 /**
@@ -54,10 +54,10 @@
         installers = new LinkedHashMap<String, Installer>();
 
         try {
-            Properties sitemap = PluginUtil.getPlugin(getClass());
+            PropertyMap sitemap = PluginUtil.getPlugin(getClass());
             factories = PluginUtil.getImplementorsMap(InstallerFactory.class);
             int i = 0;
-            for (String def = sitemap.getProperty(PREFIX + ++i); def != null; def = sitemap.getProperty(PREFIX + ++i)) {
+            for (String def = sitemap.get(PREFIX + ++i); def != null; def = sitemap.get(PREFIX + ++i)) {
                 try {
                     String[] parts = def.split(",", 3);
                     String type = parts[0];
@@ -89,12 +89,10 @@
      * so as to override it.
      */
     public void save() {
-        Properties props = new Properties();
+        PropertyMap props = new PropertyMap();
         StringBuilder buf = new StringBuilder();
         int i = 1;
-        Iterator<String> it = installers.keySet().iterator();
-        while (it.hasNext()) {
-            String name = it.next();
+        for (String name : installers.keySet()) {
             Installer installer = installers.get(name);
             // Clear the buffer
             buf.delete(0, buf.length());
@@ -103,7 +101,7 @@
             buf.append(name);
             buf.append(',');
             buf.append(installer.getInstallerDefinition());
-            props.setProperty(PREFIX + i++, buf.toString());
+            props.put(PREFIX + i++, buf.toString());
         }
         URI outputURI = CWProject.instance().getWritableURI(getClass().getName(), FileUtil.EXTENSION_PLUGIN);
         try {

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/RawFileBackend.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/RawFileBackend.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/RawFileBackend.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -161,9 +161,7 @@
 
     private File createDataTextFile(int index) throws BookException, IOException {
         String dataPath = getExpandedDataPath().getPath();
-        // JDK15: Use String.format instead
-        // dataPath += File.separator + String.format("%07d", index);
-        dataPath += File.separator + new DecimalFormat("0000000").format(index);
+        dataPath += File.separator + String.format("%07d", Integer.valueOf(index));
         File dataFile = new File(dataPath);
         if (!dataFile.exists() && !dataFile.createNewFile()) {
             throw new IOException("Could not create data file.");
@@ -208,12 +206,7 @@
     }
 
     protected void updateDataFile(int testament, long ordinal) throws IOException {
-        // JDK15: Use String.format instead
-        // String fileName = String.format("%07d\r\n", ordinal);
-        StringBuilder buf = new StringBuilder();
-        buf.append(new DecimalFormat("0000000").format(ordinal));
-        buf.append("\r\n");
-        String fileName = buf.toString();
+        String fileName = String.format("%07d\r\n", Long.valueOf(ordinal));
         BufferedOutputStream bos = null;
         try {
             bos = new BufferedOutputStream(new FileOutputStream(txtFile[testament], true));

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookMetaData.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookMetaData.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookMetaData.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -24,14 +24,13 @@
 import java.io.File;
 import java.io.IOException;
 import java.net.URI;
-import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
-import java.util.Map;
 
 import org.crosswire.common.util.Language;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.jsword.book.BookCategory;
 import org.crosswire.jsword.book.FeatureType;
 import org.crosswire.jsword.book.KeyType;
@@ -373,7 +372,7 @@
      * Sword uses MS Windows cp1252 for Latin 1 not the standard. Arrgh! The
      * language strings need to be converted to Java charsets
      */
-    private static final Map<String,String> ENCODING_JAVA = new HashMap<String,String>();
+    private static final PropertyMap ENCODING_JAVA = new PropertyMap();
     static {
         ENCODING_JAVA.put("Latin-1", "WINDOWS-1252");
         ENCODING_JAVA.put("UTF-8", "UTF-8");

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -29,11 +29,11 @@
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Properties;
 
 import org.crosswire.common.util.CWProject;
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.OSType;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.StringUtil;
 import org.crosswire.jsword.book.BookException;
 import org.crosswire.jsword.book.Books;
@@ -195,12 +195,12 @@
         if (sysconfig.canRead()) {
             InputStream is = null;
             try {
-                Properties prop = new Properties();
+                PropertyMap prop = new PropertyMap();
                 is = new FileInputStream(sysconfig);
                 prop.load(is);
-                String datapath = prop.getProperty(DATA_PATH);
+                String datapath = prop.get(DATA_PATH);
                 testDefaultPath(bookDirs, datapath);
-                datapath = prop.getProperty(AUGMENT_PATH);
+                datapath = prop.get(AUGMENT_PATH);
                 testDefaultPath(bookDirs, datapath);
             } catch (IOException ex) {
                 log.warn("Failed to read system config file", ex);

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/IndexMetadata.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/IndexMetadata.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/IndexMetadata.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -22,9 +22,9 @@
 package org.crosswire.jsword.index.lucene;
 
 import java.io.IOException;
-import java.util.Properties;
 
 import org.crosswire.common.util.Logger;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 
 /**
@@ -55,15 +55,17 @@
     }
 
     public float getInstalledIndexVersion() {
-        return Float.parseFloat(props.getProperty(INDEX_VERSION, "1.1"));
+        String value = props.get(INDEX_VERSION, "1.1");
+        return Float.parseFloat(value);
     }
 
     public float getLuceneVersion() {
-        return Float.parseFloat(props.getProperty(LUCENE_VERSION));
+        return Float.parseFloat(props.get(LUCENE_VERSION));
     }
 
     public float getLatestIndexVersion() {
-        return Float.parseFloat(props.getProperty(LATEST_INDEX_VERSION, "1.1"));
+        String value = props.get(INDEX_VERSION, "1.1");
+        return Float.parseFloat(value);
     }
 
     public static final String INDEX_VERSION = "Installed.Index.Version";
@@ -74,5 +76,5 @@
 
     private static final Logger log = Logger.getLogger(IndexMetadata.class);
     private static IndexMetadata myInstance = new IndexMetadata();
-    private Properties props;
+    private PropertyMap props;
 }

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/analysis/AnalyzerFactory.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/analysis/AnalyzerFactory.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/index/lucene/analysis/AnalyzerFactory.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -22,11 +22,11 @@
 package org.crosswire.jsword.index.lucene.analysis;
 
 import java.io.IOException;
-import java.util.Properties;
 
 import org.crosswire.common.util.ClassUtil;
 import org.crosswire.common.util.Language;
 import org.crosswire.common.util.Logger;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 import org.crosswire.jsword.book.Book;
 
@@ -90,17 +90,17 @@
 
     public String getAnalyzerValue(Language lang) {
         String key = lang.getCode() + ".Analyzer";
-        return myProperties.getProperty(key);
+        return myProperties.get(key);
     }
 
     public boolean getDefaultStemmingProperty() {
         String key = DEFAULT_ID + ".Stemming";
-        return Boolean.valueOf(myProperties.getProperty(key)).booleanValue();
+        return Boolean.valueOf(myProperties.get(key)).booleanValue();
     }
 
     public boolean getDefaultStopWordProperty() {
         String key = DEFAULT_ID + ".StopWord";
-        return Boolean.valueOf(myProperties.getProperty(key)).booleanValue();
+        return Boolean.valueOf(myProperties.get(key)).booleanValue();
     }
 
     private void loadProperties() {
@@ -115,6 +115,6 @@
     private static final Logger log = Logger.getLogger(AnalyzerFactory.class);
     private static AnalyzerFactory myInstance = new AnalyzerFactory();
 
-    private Properties myProperties;
+    private PropertyMap myProperties;
 
 }

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/passage/PassageTally.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/passage/PassageTally.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/passage/PassageTally.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -644,7 +644,7 @@
             log.warn("Restrict=" + restrict + " is not properly supported.");
 
             // This is a bit of a cheat, but there is no way I'm going
-            // to do the maths to speed up the restricted version
+            // to do the math to speed up the restricted version
             PassageTally temp = (PassageTally) this.clone();
             Iterator<Key> it = temp.rangeIterator(RestrictionType.NONE);
 

Modified: trunk/jsword/src/main/java/org/crosswire/jsword/util/WebWarning.java
===================================================================
--- trunk/jsword/src/main/java/org/crosswire/jsword/util/WebWarning.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/main/java/org/crosswire/jsword/util/WebWarning.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -23,12 +23,12 @@
 
 import java.io.IOException;
 import java.net.URI;
-import java.util.Properties;
 
 import org.crosswire.common.util.CWProject;
 import org.crosswire.common.util.FileUtil;
 import org.crosswire.common.util.Logger;
 import org.crosswire.common.util.NetUtil;
+import org.crosswire.common.util.PropertyMap;
 import org.crosswire.common.util.ResourceUtil;
 
 /**
@@ -46,8 +46,8 @@
      */
     private WebWarning() {
         try {
-            Properties props = ResourceUtil.getProperties(getClass().getName());
-            shown = Boolean.valueOf(props.getProperty(SHOWN_KEY, Boolean.valueOf(DEFAULT_SHOWN).toString())).booleanValue();
+            PropertyMap props = ResourceUtil.getProperties(getClass().getName());
+            shown = Boolean.valueOf(props.get(SHOWN_KEY, Boolean.valueOf(DEFAULT_SHOWN).toString())).booleanValue();
         } catch (IOException e) {
             shown = DEFAULT_SHOWN;
         }
@@ -69,7 +69,7 @@
     public void setShown(boolean newShown) {
         try {
             shown = newShown;
-            Properties props = new Properties();
+            PropertyMap props = new PropertyMap();
             props.put(SHOWN_KEY, Boolean.valueOf(shown).toString());
             URI outputURI = CWProject.instance().getWritableURI(getClass().getName(), FileUtil.EXTENSION_PROPERTIES);
             NetUtil.storeProperties(props, outputURI, "JSword WebWarning");

Modified: trunk/jsword/src/test/java/org/crosswire/common/progress/JobTest.java
===================================================================
--- trunk/jsword/src/test/java/org/crosswire/common/progress/JobTest.java	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword/src/test/java/org/crosswire/common/progress/JobTest.java	2010-12-10 19:34:53 UTC (rev 2053)
@@ -82,11 +82,12 @@
 
         job = JobManager.createJob(WIBBLE);
         job.beginJob(WIBBLE, uri);
+        job.setTotalWork(100);
         assertEquals(WIBBLE, job.getJobName());
         assertEquals(false, job.isFinished());
         assertEquals(false, job.isCancelable());
         assertEquals(WIBBLE, job.getSectionName());
-        assertEquals(0, job.getWork());
+        job.cancel();
         job.done();
         assertEquals(true, job.isFinished());
         assertEquals(100, job.getWork());

Modified: trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:34:53 UTC (rev 2053)
@@ -1,4 +1,4 @@
-#Thu Nov 11 22:23:52 EST 2010
+#Wed Dec 08 12:51:42 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -11,23 +11,23 @@
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
 org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=error
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
 org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=enabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
 org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
 org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
 org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
 org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
 org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
@@ -59,8 +59,9 @@
 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
 org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
@@ -70,19 +71,19 @@
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=disabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=disabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
 org.eclipse.jdt.core.compiler.problem.unusedImport=warning
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
 org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=

Modified: trunk/jsword-sword/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsword-sword/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword-sword/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:34:53 UTC (rev 2053)
@@ -1,4 +1,4 @@
-#Wed Dec 08 05:06:49 EST 2010
+#Wed Dec 08 12:51:23 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -17,7 +17,7 @@
 org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
 org.eclipse.jdt.core.compiler.doc.comment.support=enabled
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
 org.eclipse.jdt.core.compiler.problem.autoboxing=warning
 org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
 org.eclipse.jdt.core.compiler.problem.deadCode=warning
@@ -25,17 +25,17 @@
 org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
 org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
 org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
 org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
 org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
 org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
@@ -43,7 +43,7 @@
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
 org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
@@ -53,31 +53,32 @@
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
 org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
 org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
 org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
@@ -85,7 +86,7 @@
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

Modified: trunk/jsword-web/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsword-web/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:23:46 UTC (rev 2052)
+++ trunk/jsword-web/.settings/org.eclipse.jdt.core.prefs	2010-12-10 19:34:53 UTC (rev 2053)
@@ -1,4 +1,4 @@
-#Tue Nov 30 21:25:12 EST 2010
+#Wed Dec 08 12:50:49 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -29,7 +29,7 @@
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
 org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
 org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
@@ -51,6 +51,7 @@
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
 org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
@@ -61,15 +62,16 @@
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
 org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
 org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
@@ -83,6 +85,7 @@
 org.eclipse.jdt.core.compiler.problem.unusedImport=warning
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled




More information about the jsword-svn mailing list