[Yanel-commits] rev 42465 - public/yanel/trunk/src/build/java/org/wyona/yanel/ant

michi at wyona.com michi at wyona.com
Wed Apr 22 10:48:42 CEST 2009


Author: michi
Date: 2009-04-22 10:48:41 +0200 (Wed, 22 Apr 2009)
New Revision: 42465

Modified:
   public/yanel/trunk/src/build/java/org/wyona/yanel/ant/MergeResourceTypesConfigsTask.java
Log:
merge of resources started

Modified: public/yanel/trunk/src/build/java/org/wyona/yanel/ant/MergeResourceTypesConfigsTask.java
===================================================================
--- public/yanel/trunk/src/build/java/org/wyona/yanel/ant/MergeResourceTypesConfigsTask.java	2009-04-22 08:00:55 UTC (rev 42464)
+++ public/yanel/trunk/src/build/java/org/wyona/yanel/ant/MergeResourceTypesConfigsTask.java	2009-04-22 08:48:41 UTC (rev 42465)
@@ -33,6 +33,7 @@
         log("INFO: Realms config file: " + realmsConfigFile);
         log("INFO: Global resource-types config directory: " + globalResourceTypesConfigFile);
         File realmsConfig = new File(realmsConfigFile.toString());
+        File globalResourceTypesConfig = new File(globalResourceTypesConfigFile.toString());
         RealmManagerConfig realmManagerConfig = new RealmManagerConfig();
         try {
             RealmContextConfig[] realmContextConfigs;
@@ -42,6 +43,7 @@
                 log("Number of realms: " + realmContextConfigs.length);
                 for (int i = 0; i < realmContextConfigs.length; i++) {
                     log("Realm context config: " + realmContextConfigs[i]);
+                    mergeResourceTypesOfRealm(realmContextConfigs[i].getUnresolvedConfigurationFile(), globalResourceTypesConfig);
                 }
             } else {
                 log("ERROR: No such realms config '" + realmsConfig.getAbsolutePath() + "' exists!");
@@ -65,4 +67,26 @@
     public void setGlobalResourceTypesConfigFile(Path globalResourceTypesConfigFile) {
         this.globalResourceTypesConfigFile = globalResourceTypesConfigFile;
     }
+
+    /**
+     *
+     */
+    private void mergeResourceTypesOfRealm(File unresolvedRealmConfig, File globalResourceTypesConfig) {
+        File realmDir;
+        if (unresolvedRealmConfig.isDirectory()) {
+            realmDir = unresolvedRealmConfig;
+        } else if (unresolvedRealmConfig.isFile()) {
+            realmDir = new File(unresolvedRealmConfig.getParent());
+        } else {
+            log.error("Neither file nor directory: " + unresolvedRealmConfig);
+            return;
+        }
+        log("INFO: Realm directory: " + realmDir);
+        File resourceTypesConfigOfRealm = new File(realmDir, "resource-types.xml");
+        if (resourceTypesConfigOfRealm.isFile()) {
+            log("INFO: Realm has specific resource-types configured: " + resourceTypesConfigOfRealm);
+        } else {
+            log("INFO: Realm has no specific resource-types configured.");
+        }
+    }
 }



More information about the Yanel-commits mailing list