You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2014/12/30 11:42:45 UTC

[29/29] camel git commit: CAMEL-7999: apt compiler to generate json schema documentation for the model, whcih we later use to enrich the xml xsd to include documentation. Work in progress.

CAMEL-7999: apt compiler to generate json schema documentation for the model, whcih we later use to enrich the xml xsd to include documentation. Work in progress.


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

Branch: refs/heads/master
Commit: 400477f3a919bdfdfa781c3af41459e1fcf1d0fb
Parents: f4673d5
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Dec 30 10:54:40 2014 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Dec 30 10:56:49 2014 +0100

----------------------------------------------------------------------
 .../management/ManagedCamelContextTest.java     |  2 +-
 .../management/ManagedSendProcessorTest.java    |  4 ++--
 .../ModelDocumentationAnnotationProcessor.java  | 23 ++++++++++++++++----
 3 files changed, 22 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/400477f3/camel-core/src/test/java/org/apache/camel/management/ManagedCamelContextTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedCamelContextTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedCamelContextTest.java
index 6a4fff2..4867ecc 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedCamelContextTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedCamelContextTest.java
@@ -265,7 +265,7 @@ public class ManagedCamelContextTest extends ManagementTestSupport {
         assertNotNull(json);
 
         assertTrue(json.contains("\"label\": \"transformation\""));
-        assertTrue(json.contains("\"expression\": { \"kind\": \"element\", \"required\": \"true\""));
+        assertTrue(json.contains("\"expression\": { \"kind\": \"element\": \"required\": \"true\""));
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/400477f3/camel-core/src/test/java/org/apache/camel/management/ManagedSendProcessorTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedSendProcessorTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedSendProcessorTest.java
index 21fe00f..d9bba8e 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedSendProcessorTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedSendProcessorTest.java
@@ -68,11 +68,11 @@ public class ManagedSendProcessorTest extends ManagementTestSupport {
 
         TabularData data = (TabularData) mbeanServer.invoke(on, "explain", new Object[]{false}, new String[]{"boolean"});
         assertNotNull(data);
-        assertEquals(3, data.size());
+        assertEquals(2, data.size());
 
         data = (TabularData) mbeanServer.invoke(on, "explain", new Object[]{true}, new String[]{"boolean"});
         assertNotNull(data);
-        assertEquals(7, data.size());
+        assertEquals(5, data.size());
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/400477f3/tooling/apt/src/main/java/org/apache/camel/tools/apt/ModelDocumentationAnnotationProcessor.java
----------------------------------------------------------------------
diff --git a/tooling/apt/src/main/java/org/apache/camel/tools/apt/ModelDocumentationAnnotationProcessor.java b/tooling/apt/src/main/java/org/apache/camel/tools/apt/ModelDocumentationAnnotationProcessor.java
index aad54ac..84dcc78 100644
--- a/tooling/apt/src/main/java/org/apache/camel/tools/apt/ModelDocumentationAnnotationProcessor.java
+++ b/tooling/apt/src/main/java/org/apache/camel/tools/apt/ModelDocumentationAnnotationProcessor.java
@@ -68,6 +68,8 @@ public class ModelDocumentationAnnotationProcessor extends AbstractAnnotationPro
         "org.apache.camel.model.WhenDefinition",
     };
 
+    private boolean skipUnwanted = true;
+
     @Override
     public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
         if (roundEnv.processingOver()) {
@@ -201,6 +203,16 @@ public class ModelDocumentationAnnotationProcessor extends AbstractAnnotationPro
                     if (isNullOrEmpty(name) || "##default".equals(name)) {
                         name = fieldName;
                     }
+
+                    // lets skip some unwanted attributes
+                    if (skipUnwanted) {
+                        // we want to skip inheritErrorHandler which is only applicable for the load-balancer
+                        boolean loadBalancer = "LoadBalanceDefinition".equals(originalClassType.getSimpleName().toString());
+                        if (!loadBalancer && "inheritErrorHandler".equals(name)) {
+                            continue;
+                        }
+                    }
+
                     name = prefix + name;
                     TypeMirror fieldType = fieldElement.asType();
                     String fieldTypeName = fieldType.toString();
@@ -440,10 +452,13 @@ public class ModelDocumentationAnnotationProcessor extends AbstractAnnotationPro
         ep = new EipOption("description", "element", "org.apache.camel.model.DescriptionDefinition", false, "", docComment, false, null, false, null);
         eipOptions.add(ep);
 
-        // custom id
-        docComment = findJavaDoc(elementUtils, null, "customId", classElement, true);
-        ep = new EipOption("customId", "attribute", "java.lang.String", false, "", docComment, false, null, false, null);
-        eipOptions.add(ep);
+        // lets skip custom id as it has no value for end users to configure
+        if (!skipUnwanted) {
+            // custom id
+            docComment = findJavaDoc(elementUtils, null, "customId", classElement, true);
+            ep = new EipOption("customId", "attribute", "java.lang.String", false, "", docComment, false, null, false, null);
+            eipOptions.add(ep);
+        }
     }
 
     /**