[Yanel-commits] rev 25625 - public/yanel/trunk/src/core/java/org/wyona/yanel/core

josias at wyona.com josias at wyona.com
Fri Jun 29 16:37:27 CEST 2007


Author: josias
Date: 2007-06-29 16:37:27 +0200 (Fri, 29 Jun 2007)
New Revision: 25625

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java
Log:
allow multiple resources in one resource directory

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java	2007-06-29 14:27:13 UTC (rev 25624)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java	2007-06-29 14:37:27 UTC (rev 25625)
@@ -24,11 +24,15 @@
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.net.URLDecoder;
+import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.Properties;
 
 import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.avalon.framework.configuration.DefaultConfigurationBuilder;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.filefilter.FalseFileFilter;
+import org.apache.commons.io.filefilter.WildcardFilter;
 import org.apache.log4j.Category;
 
 import org.wyona.commons.io.FileUtil;
@@ -162,10 +166,19 @@
                 }
 
                 if (resConfigFile.isDirectory()) {
-                    resConfigFile = new File(resConfigFile, RESOURCE_DEFAULT_CONFIG_NAME);
-                }
+                    File resDir = resConfigFile;
+                    
+                    Iterator iter = FileUtils.listFiles(resDir, new WildcardFilter("resource*.xml"), null).iterator();
+                    while (iter.hasNext()) {
+                        resConfigFile = (File)iter.next();
+                        log.debug("found resource config: " + resConfigFile);
+                        ResourceTypeDefinition rtd = new ResourceTypeDefinition(resConfigFile);
+                        log.debug("Universal Name: " + rtd.getResourceTypeUniversalName());
+                        log.debug("Classname: " + rtd.getResourceTypeClassname());
+                        hm.put(rtd.getResourceTypeUniversalName(), rtd);
+                    }
 
-                if (resConfigFile.isFile()) {
+                } else if (resConfigFile.isFile()) {
                     ResourceTypeDefinition rtd = new ResourceTypeDefinition(resConfigFile);
                     log.debug("Universal Name: " + rtd.getResourceTypeUniversalName());
                     log.debug("Classname: " + rtd.getResourceTypeClassname());




More information about the Yanel-commits mailing list