Updated Branches:
  refs/heads/master 0c3c2bb76 -> 7297d95bb

DELTASPIKE-384 improved creation of the view-config node-list

 thx to Richard DiCroce


Project: http://git-wip-us.apache.org/repos/asf/deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltaspike/commit/7297d95b
Tree: http://git-wip-us.apache.org/repos/asf/deltaspike/tree/7297d95b
Diff: http://git-wip-us.apache.org/repos/asf/deltaspike/diff/7297d95b

Branch: refs/heads/master
Commit: 7297d95bb3b73401aff2c44e66b7ced163d8d886
Parents: 0c3c2bb
Author: gpetracek <[email protected]>
Authored: Mon Jul 1 22:59:31 2013 +0200
Committer: gpetracek <[email protected]>
Committed: Mon Jul 1 22:59:37 2013 +0200

----------------------------------------------------------------------
 .../jsf/impl/util/ViewConfigUtils.java          | 26 +++-----------------
 1 file changed, 3 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/deltaspike/blob/7297d95b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/ViewConfigUtils.java
----------------------------------------------------------------------
diff --git 
a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/ViewConfigUtils.java
 
b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/ViewConfigUtils.java
index 560f3e1..790f409 100644
--- 
a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/ViewConfigUtils.java
+++ 
b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/ViewConfigUtils.java
@@ -19,7 +19,6 @@
 package org.apache.deltaspike.jsf.impl.util;
 
 import org.apache.deltaspike.core.api.config.view.ViewConfig;
-import org.apache.deltaspike.core.util.ClassUtils;
 import org.apache.deltaspike.jsf.api.config.view.Folder;
 
 import java.lang.reflect.Modifier;
@@ -28,12 +27,6 @@ import java.util.List;
 
 public abstract class ViewConfigUtils
 {
-    public static final String NODE_SEPARATOR = "$";
-    private static final String CLASS_PREFIX = "class";
-    private static final String INTERFACE_PREFIX = "interface";
-    private static final int CLASS_PREFIX_LENGTH = CLASS_PREFIX.length();
-    private static final int INTERFACE_PREFIX_LENGTH = 
INTERFACE_PREFIX.length();
-
     public static boolean isFolderConfig(Class configClass)
     {
         return configClass != null && (
@@ -48,23 +41,10 @@ public abstract class ViewConfigUtils
     public static List<Class> toNodeList(Class nodeClass)
     {
         List<Class> treePath = new ArrayList<Class>();
-        String nodeClassName = nodeClass.toString();
-
-        if (nodeClassName.startsWith(CLASS_PREFIX))
-        {
-            nodeClassName = nodeClassName.substring(CLASS_PREFIX_LENGTH + 1);
-        }
-        else
-        {
-            nodeClassName = nodeClassName.substring(INTERFACE_PREFIX_LENGTH + 
1);
-        }
-
-        treePath.add(nodeClass);
-
-        while (nodeClassName.contains(NODE_SEPARATOR))
+        while (nodeClass != null)
         {
-            nodeClassName = nodeClassName.substring(0, 
nodeClassName.lastIndexOf(NODE_SEPARATOR));
-            treePath.add(0, ClassUtils.tryToLoadClassForName(nodeClassName));
+            treePath.add(0, nodeClass);
+            nodeClass = nodeClass.getEnclosingClass();
         }
         return treePath;
     }

Reply via email to