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;