Repository: camel
Updated Branches:
  refs/heads/master 74fb9e4d8 -> 1b332e1f9


CAMEL-8251: eip model lets include a title which we later can improve or 
manually configured.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/1b332e1f
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/1b332e1f
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/1b332e1f

Branch: refs/heads/master
Commit: 1b332e1f99b7db8f8c77ad6cfb6e8881e1660c02
Parents: 74fb9e4
Author: Claus Ibsen <davscl...@apache.org>
Authored: Fri Jan 16 14:18:29 2015 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Fri Jan 16 14:18:44 2015 +0100

----------------------------------------------------------------------
 .../camel/tools/apt/EipAnnotationProcessor.java | 24 ++++++++++++++++++++
 1 file changed, 24 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/1b332e1f/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java
----------------------------------------------------------------------
diff --git 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java
 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java
index 6867f40..eda4bcb 100644
--- 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java
+++ 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java
@@ -154,6 +154,7 @@ public class EipAnnotationProcessor extends 
AbstractAnnotationProcessor {
         buffer.append("\n \"model\": {");
         buffer.append("\n    \"kind\": \"").append("model").append("\",");
         buffer.append("\n    \"name\": 
\"").append(eipModel.getName()).append("\",");
+        buffer.append("\n    \"title\": 
\"").append(asTitle(eipModel.getName())).append("\",");
         buffer.append("\n    \"description\": 
\"").append(safeNull(eipModel.getDescription())).append("\",");
         buffer.append("\n    \"javaType\": 
\"").append(eipModel.getJavaType()).append("\",");
         buffer.append("\n    \"label\": 
\"").append(safeNull(eipModel.getLabel())).append("\",");
@@ -630,6 +631,29 @@ public class EipAnnotationProcessor extends 
AbstractAnnotationProcessor {
         return 
!"org.apache.camel.model.NoOutputExpressionNode".equals(superclass);
     }
 
+    /**
+     * Capitializes the name as a title
+     *
+     * @param name  the name
+     * @return as a title
+     */
+    private static String asTitle(String name) {
+        StringBuilder sb = new StringBuilder();
+        for (char c : name.toCharArray()) {
+            boolean upper = Character.isUpperCase(c);
+            boolean first = sb.length() == 0;
+            if (first) {
+                sb.append(Character.toUpperCase(c));
+            } else if (upper) {
+                sb.append(' ');
+                sb.append(c);
+            } else {
+                sb.append(Character.toLowerCase(c));
+            }
+        }
+        return sb.toString().trim();
+    }
+
     private static final class EipModel {
 
         private String name;

Reply via email to