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

michi at wyona.com michi at wyona.com
Fri Sep 28 14:32:24 CEST 2007


Author: michi
Date: 2007-09-28 14:32:23 +0200 (Fri, 28 Sep 2007)
New Revision: 27819

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java
Log:
load resource via package name

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-09-28 12:31:46 UTC (rev 27818)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/ResourceTypeRegistry.java	2007-09-28 12:32:23 UTC (rev 27819)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2006 Wyona
+ * Copyright 2007 Wyona
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -159,10 +159,10 @@
             
             for (int i = 0; i < resourceTypes.length; i++) {
                 try {
-                File resConfigFile = new File(resourceTypes[i].getAttribute("src"));
-                if (!resConfigFile.isAbsolute()) {
-                    resConfigFile = FileUtil.file(resourceTypeConfigFile.getParentFile().getAbsolutePath(), resourceTypes[i].getAttribute("src"));
-                }
+                    File resConfigFile = new File(resourceTypes[i].getAttribute("src"));
+                    if (!resConfigFile.isAbsolute()) {
+                        resConfigFile = FileUtil.file(resourceTypeConfigFile.getParentFile().getAbsolutePath(), resourceTypes[i].getAttribute("src"));
+                    }
 
                 if (resConfigFile.isDirectory()) {
                     File resDir = resConfigFile;
@@ -177,18 +177,25 @@
                         hm.put(rtd.getResourceTypeUniversalName(), rtd);
                     }
 
-                } else if (resConfigFile.isFile()) {
-                    ResourceTypeDefinition rtd = new ResourceTypeDefinition(resConfigFile);
+                    } else if (resConfigFile.isFile()) {
+                        ResourceTypeDefinition rtd = new ResourceTypeDefinition(resConfigFile);
+                        log.debug("Universal Name: " + rtd.getResourceTypeUniversalName());
+                        log.debug("Classname: " + rtd.getResourceTypeClassname());
+                        hm.put(rtd.getResourceTypeUniversalName(), rtd);
+                    } else {
+                        log.error("No such file or directory: " + resConfigFile);
+                    }
+                } catch (Exception e) {
+                    String packageName = resourceTypes[i].getAttribute("package");
+                    log.error("DEBUG: Package: " + packageName);
+                    //URL resourceURL = ResourceTypeRegistry.class.getClassLoader().getResource(packageName.replace('.','/') + "/resource.xml");
+                    URL resourceURL = ResourceTypeRegistry.class.getClassLoader().getResource("org/wyona/yanel/impl/resources/redirect/resource.xml");
+                    log.error("DEBUG: Resource config URL: " + resourceURL);
+                    ResourceTypeDefinition rtd = new ResourceTypeDefinition(resourceURL.openStream());
                     log.debug("Universal Name: " + rtd.getResourceTypeUniversalName());
                     log.debug("Classname: " + rtd.getResourceTypeClassname());
                     hm.put(rtd.getResourceTypeUniversalName(), rtd);
-                } else {
-                    log.error("No such file or directory: " + resConfigFile);
                 }
-                } catch (Exception e) {
-                    String packageName = resourceTypes[i].getAttribute("package");
-                    log.error("DEBUG: Package: " + packageName);
-                }
             }    
         } catch (Exception e) {
             String errorMsg = "Failure while reading configuration: " + e.getMessage(); 



More information about the Yanel-commits mailing list