Author: rdonkin
Date: Fri Jul 24 19:11:16 2009
New Revision: 797613

URL: http://svn.apache.org/viewvc?rev=797613&view=rev
Log:
JSIEVE-53 Generify https://issues.apache.org/jira/browse/JSIEVE-53

Modified:
    
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/CommandManagerImpl.java
    
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ComparatorManagerImpl.java
    
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ConfigurationManager.java
    james/jsieve/trunk/main/src/main/java/org/apache/jsieve/TestManagerImpl.java

Modified: 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/CommandManagerImpl.java
URL: 
http://svn.apache.org/viewvc/james/jsieve/trunk/main/src/main/java/org/apache/jsieve/CommandManagerImpl.java?rev=797613&r1=797612&r2=797613&view=diff
==============================================================================
--- 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/CommandManagerImpl.java 
(original)
+++ 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/CommandManagerImpl.java 
Fri Jul 24 19:11:16 2009
@@ -28,12 +28,12 @@
  */
 public class CommandManagerImpl implements CommandManager {
 
-    private final Map classNameMap;
+    private final Map<String, String> classNameMap;
 
     /**
      * Constructor for CommandManager.
      */
-    public CommandManagerImpl(final Map classNameMap) {
+    public CommandManagerImpl(final Map<String, String> classNameMap) {
         super();
         this.classNameMap = classNameMap;
     }
@@ -113,7 +113,7 @@
      * @throws LookupException
      */
     protected String getClassName(String name) throws LookupException {
-        final String className = (String) classNameMap.get(name.toLowerCase());
+        final String className = classNameMap.get(name.toLowerCase());
         if (null == className)
             throw new LookupException("Command named '" + name
                     + "' not mapped.");

Modified: 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ComparatorManagerImpl.java
URL: 
http://svn.apache.org/viewvc/james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ComparatorManagerImpl.java?rev=797613&r1=797612&r2=797613&view=diff
==============================================================================
--- 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ComparatorManagerImpl.java
 (original)
+++ 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ComparatorManagerImpl.java
 Fri Jul 24 19:11:16 2009
@@ -29,12 +29,12 @@
  */
 public class ComparatorManagerImpl implements ComparatorManager {
 
-    private final Map classNameMap;
+    private final Map<String, String> classNameMap;
 
     /**
      * Constructor for ComparatorManager.
      */
-    public ComparatorManagerImpl(final Map classNameMap) {
+    public ComparatorManagerImpl(final Map<String, String> classNameMap) {
         super();
         this.classNameMap = classNameMap;
     }
@@ -97,7 +97,7 @@
      * @throws LookupException
      */
     private String getClassName(String name) throws LookupException {
-        String className = (String) classNameMap.get(name.toLowerCase());
+        String className = classNameMap.get(name.toLowerCase());
         if (null == className)
             throw new LookupException("Command named '" + name
                     + "' not mapped.");

Modified: 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ConfigurationManager.java
URL: 
http://svn.apache.org/viewvc/james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ConfigurationManager.java?rev=797613&r1=797612&r2=797613&view=diff
==============================================================================
--- 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ConfigurationManager.java
 (original)
+++ 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/ConfigurationManager.java
 Fri Jul 24 19:11:16 2009
@@ -55,17 +55,17 @@
     /**
      * A Map of the Command names and their associated class names.
      */
-    private Map fieldCommandMap;
+    private Map<String, String> fieldCommandMap;
 
     /**
      * A Map of the Test names and their associated class names.
      */
-    private Map fieldTestMap;
+    private Map<String, String> fieldTestMap;
 
     /**
      * A Map of the Comparator names and their associated class names.
      */
-    private Map fieldComparatorMap;
+    private Map<String, String> fieldComparatorMap;
 
     private static final Log LOG = LogFactory.getLog("org.apache.jsieve");
 
@@ -133,9 +133,9 @@
      * 
      * @return Map
      */
-    public Map getCommandMap() {
+    public Map<String, String> getCommandMap() {
         if (null == fieldCommandMap) {
-            fieldCommandMap = new HashMap();
+            fieldCommandMap = new HashMap<String, String>();
         }
         return Collections.synchronizedMap(fieldCommandMap);
     }
@@ -146,9 +146,9 @@
      * 
      * @return Map
      */
-    public Map getTestMap() {
+    public Map<String, String> getTestMap() {
         if (null == fieldTestMap) {
-            fieldTestMap = new HashMap();
+            fieldTestMap = new HashMap<String, String>();
         }
         return Collections.synchronizedMap(fieldTestMap);
     }
@@ -159,9 +159,9 @@
      * 
      * @return Map
      */
-    public Map getComparatorMap() {
+    public Map<String, String> getComparatorMap() {
         if (null == fieldComparatorMap) {
-            fieldComparatorMap = new HashMap();
+            fieldComparatorMap = new HashMap<String, String>();
         }
         return Collections.synchronizedMap(fieldComparatorMap);
     }
@@ -174,20 +174,25 @@
      * @throws IOException
      */
     private void parse() throws SAXException, IOException {
-        InputStream is;
-        Properties p;
-        is = getConfigStream(COMMANDSMAP_PROPERTIES);
-        p = new Properties();
-        p.load(is);
-        setCommandMap(p);
-        is = getConfigStream(TESTSMAP_PROPERTIES);
-        p = new Properties();
-        p.load(is);
-        setTestMap(p);
-        is = getConfigStream(COMPARATORSMAP_PROPERTIES);
-        p = new Properties();
+        setCommandMap(loadConfiguration(COMMANDSMAP_PROPERTIES));
+        setTestMap(loadConfiguration(TESTSMAP_PROPERTIES));
+        setComparatorMap(loadConfiguration(COMPARATORSMAP_PROPERTIES));
+    }
+
+    private Map<String,String> loadConfiguration(final String name) throws 
IOException {
+        final Properties properties = loadProperties(name);
+        final Map<String, String> result = new HashMap<String, 
String>(properties.size(), 1.0f);
+        for (final Map.Entry<Object, Object> entry: properties.entrySet()) {
+            result.put(entry.getKey().toString(), entry.getValue().toString());
+        }
+        return result;
+    }
+    
+    private Properties loadProperties(final String name) throws IOException {
+        final InputStream is = getConfigStream(name);
+        final Properties p = new Properties();
         p.load(is);
-        setComparatorMap(p);
+        return p;
     }
 
     /**
@@ -196,7 +201,7 @@
      * @param commandMap
      *            The commandMap to set
      */
-    private void setCommandMap(Map commandMap) {
+    private void setCommandMap(Map<String, String> commandMap) {
         fieldCommandMap = commandMap;
     }
 
@@ -206,7 +211,7 @@
      * @param testMap
      *            The testMap to set
      */
-    private void setTestMap(Map testMap) {
+    private void setTestMap(Map<String, String> testMap) {
         fieldTestMap = testMap;
     }
 
@@ -216,7 +221,7 @@
      * @param comparatorMap
      *            The comparatorMap to set
      */
-    private void setComparatorMap(Map comparatorMap) {
+    private void setComparatorMap(Map<String, String> comparatorMap) {
         fieldComparatorMap = comparatorMap;
     }
 

Modified: 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/TestManagerImpl.java
URL: 
http://svn.apache.org/viewvc/james/jsieve/trunk/main/src/main/java/org/apache/jsieve/TestManagerImpl.java?rev=797613&r1=797612&r2=797613&view=diff
==============================================================================
--- 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/TestManagerImpl.java 
(original)
+++ 
james/jsieve/trunk/main/src/main/java/org/apache/jsieve/TestManagerImpl.java 
Fri Jul 24 19:11:16 2009
@@ -30,12 +30,12 @@
  */
 public class TestManagerImpl implements TestManager {
 
-    private final Map classNameMap;
+    private final Map<String, String> classNameMap;
 
     /**
      * TestManager is instanciated with getInstance
      */
-    public TestManagerImpl(final Map classNameMap) {
+    public TestManagerImpl(final Map<String, String> classNameMap) {
         super();
         this.classNameMap = classNameMap;
     }
@@ -98,7 +98,7 @@
      * @throws LookupException
      */
     private String getClassName(String name) throws LookupException {
-        final String className = (String) classNameMap.get(name.toLowerCase());
+        final String className = classNameMap.get(name.toLowerCase());
         if (null == className)
             throw new LookupException("Test named '" + name + "' not mapped.");
         return className;



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to