Jasper Floor pushed to branch master at cms-community / hippo-cms

Commits:
db5a95be by Bert Leunis at 2016-09-12T15:06:12+02:00
CMS-10436 take node is null into account

- - - - -
fc3eec1e by Jasper Floor at 2016-10-12T13:53:11+02:00
CMS-10436 Merge master changes in bugfix/CMS-10436

- - - - -
6f9560f4 by Jasper Floor at 2016-10-12T13:54:15+02:00
CMS-10436 Reintegrate bugfix/CMS-10436

- - - - -


3 changed files:

- 
console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/browser/NodeIconUtils.java
- 
console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/icons/JcrNodeIcon.java
- 
console/frontend/src/test/java/org/hippoecm/frontend/plugins/console/browser/JcrNodeIconTest.java


Changes:

=====================================
console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/browser/NodeIconUtils.java
=====================================
--- 
a/console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/browser/NodeIconUtils.java
+++ 
b/console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/browser/NodeIconUtils.java
@@ -1,5 +1,5 @@
 /*
- *  Copyright 2015 Hippo B.V. (http://www.onehippo.com)
+ *  Copyright 2015-2016 Hippo B.V. (http://www.onehippo.com)
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -42,7 +42,7 @@ public final class NodeIconUtils {
     public static Component createJcrNodeIcon(final String id, final TreeNode 
node) {
         final IModel<Node> nodeModel = ((IJcrTreeNode) node).getNodeModel();
         if (nodeModel ==  null || nodeModel.getObject() == null) {
-            return createDefaultNodeIcon(id);
+            return createUnknownNodeIcon(id);
         }
 
         final Node jcrNode = nodeModel.getObject();
@@ -56,8 +56,8 @@ public final class NodeIconUtils {
         return icon;
     }
 
-    private static Component createDefaultNodeIcon(final String id) {
-        return new IconLabel(id, JcrNodeIcon.FA_DEFAULT_NODE_CSS_CLASS);
+    private static Component createUnknownNodeIcon(final String id) {
+        return new IconLabel(id, JcrNodeIcon.FA_UNKNOWN_NODE_CSS_CLASS);
     }
 
     private static String determineNodeTooltip(final Node jcrNode) {


=====================================
console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/icons/JcrNodeIcon.java
=====================================
--- 
a/console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/icons/JcrNodeIcon.java
+++ 
b/console/frontend/src/main/java/org/hippoecm/frontend/plugins/console/icons/JcrNodeIcon.java
@@ -35,7 +35,7 @@ import static 
org.hippoecm.repository.HippoStdNodeType.NT_FOLDER;
 
 public class JcrNodeIcon {
 
-    static final Logger log = LoggerFactory.getLogger(JcrNodeIcon.class);
+    private static final Logger log = 
LoggerFactory.getLogger(JcrNodeIcon.class);
 
     private static final String CONTENT_ROOT = "/content";
     private static final String NODE_CSS_CLASS_PREFIX = "jcrnode-";
@@ -46,8 +46,9 @@ public class JcrNodeIcon {
     private static final String FA_CSS_CLASS = "fa";
     private static final String FA_DEFAULT_CSS_CLASS = 
FontAwesomeIcon.CIRCLE.cssClass();
     private static final String FA_VIRTUAL_NODE_CSS_CLASS = 
FontAwesomeIcon.CIRCLE_O.cssClass();
+    private static final String FA_UNKNOWN_NODE_ICON_CLASS = 
FontAwesomeIcon.EXCLAMATION_CIRCLE.cssClass();
 
-    public static final String FA_DEFAULT_NODE_CSS_CLASS = FA_CSS_CLASS + " " 
+ FA_DEFAULT_CSS_CLASS + " " + DEFAULT_NODE_CSS_CLASS;
+    public static final String FA_UNKNOWN_NODE_CSS_CLASS = FA_CSS_CLASS + " " 
+ FA_UNKNOWN_NODE_ICON_CLASS + " " + DEFAULT_NODE_CSS_CLASS;
 
     private static final List<String> nodeTypes = new ArrayList<>();
     private static final Map<String, String> pathCssClass = new HashMap<>();
@@ -188,11 +189,14 @@ public class JcrNodeIcon {
 
     /**
      * Compute all CSS classes for the specified node.
-
+     *
      * @param node The node to compute the CSS classes for
      * @return a String containing all CSS classes for the specified node
      */
-    public static String getIconCssClass(Node node) {
+    public static String getIconCssClass(final Node node) {
+        if(node == null) {
+            return FA_UNKNOWN_NODE_CSS_CLASS;
+        }
         return FA_CSS_CLASS + " " + getIconTypeCssClass(node) + " " + 
getIconColorCssClass(node);
     }
 


=====================================
console/frontend/src/test/java/org/hippoecm/frontend/plugins/console/browser/JcrNodeIconTest.java
=====================================
--- 
a/console/frontend/src/test/java/org/hippoecm/frontend/plugins/console/browser/JcrNodeIconTest.java
+++ 
b/console/frontend/src/test/java/org/hippoecm/frontend/plugins/console/browser/JcrNodeIconTest.java
@@ -1,5 +1,5 @@
 /*
- *  Copyright 2015 Hippo B.V. (http://www.onehippo.com)
+ *  Copyright 2015-2016 Hippo B.V. (http://www.onehippo.com)
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -73,4 +73,9 @@ public class JcrNodeIconTest extends RepositoryTestCase {
     private String getCssClass(final Node node) {
         return JcrNodeIcon.getIconCssClass(node);
     }
+
+    @Test
+    public void testNodeIsNull() {
+        assertEquals(JcrNodeIcon.getIconCssClass(null), "fa 
fa-exclamation-circle jcrnode-default");
+    }
 }



View it on GitLab: 
https://code.onehippo.org/cms-community/hippo-cms/compare/30cddf9c03f89d942dd98f1c93902e485d7c6866...6f9560f4a849c263d741a5f2567b4b765f6f07d5
_______________________________________________
Hippocms-svn mailing list
Hippocms-svn@lists.onehippo.org
https://lists.onehippo.org/mailman/listinfo/hippocms-svn

Reply via email to