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/31 11:35:53 UTC

[3/3] 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/f2fa8026
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f2fa8026
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f2fa8026

Branch: refs/heads/master
Commit: f2fa8026808948e594c57ab2124e12e06484b8f5
Parents: d42ba1f
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Dec 31 11:11:20 2014 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Dec 31 11:35:41 2014 +0100

----------------------------------------------------------------------
 .../management/mbean/CamelOpenMBeanTypes.java   | 12 ++++----
 .../apache/camel/impl/DefaultCamelContext.java  | 30 ++++++++++++++------
 .../camel/management/mbean/ManagedEndpoint.java |  5 ++--
 .../management/mbean/ManagedProcessor.java      |  5 ++--
 .../management/ManagedCamelContextTest.java     |  6 ++--
 ...ponentConfigurationAndDocumentationTest.java |  2 +-
 .../camel/commands/EipExplainCommand.java       |  5 ++++
 .../camel/commands/EndpointExplainCommand.java  |  5 ++++
 8 files changed, 47 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/camel-core/src/main/java/org/apache/camel/api/management/mbean/CamelOpenMBeanTypes.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/CamelOpenMBeanTypes.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/CamelOpenMBeanTypes.java
index df14e88..bfb346d 100644
--- a/camel-core/src/main/java/org/apache/camel/api/management/mbean/CamelOpenMBeanTypes.java
+++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/CamelOpenMBeanTypes.java
@@ -72,9 +72,9 @@ public final class CamelOpenMBeanTypes {
     }
 
     public static CompositeType explainEndpointsCompositeType() throws OpenDataException {
-        return new CompositeType("endpoints", "Endpoints", new String[]{"option", "kind", "type", "java type", "value", "default value", "description"},
-                new String[]{"Option", "Kind", "Type", "Java Type", "Value", "Default Value", "Description"},
-                new OpenType[]{SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING});
+        return new CompositeType("endpoints", "Endpoints", new String[]{"option", "kind", "type", "java type", "deprecated", "value", "default value", "description"},
+                new String[]{"Option", "Kind", "Type", "Java Type", "Deprecated", "Value", "Default Value", "Description"},
+                new OpenType[]{SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING});
     }
 
     public static TabularType explainEipTabularType() throws OpenDataException {
@@ -83,9 +83,9 @@ public final class CamelOpenMBeanTypes {
     }
 
     public static CompositeType explainEipsCompositeType() throws OpenDataException {
-        return new CompositeType("eips", "EIPs", new String[]{"option", "kind", "type", "java type", "value", "default value", "description"},
-                new String[]{"Option", "Kind", "Type", "Java Type", "Value", "Default Value", "Description"},
-                new OpenType[]{SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING});
+        return new CompositeType("eips", "EIPs", new String[]{"option", "kind", "type", "java type", "deprecated", "value", "default value", "description"},
+                new String[]{"Option", "Kind", "Type", "Java Type", "Deprecated", "Value", "Default Value", "Description"},
+                new OpenType[]{SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING});
     }
 
     public static TabularType listComponentsTabularType() throws OpenDataException {

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index 6a41243..f9c8bca 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -1241,6 +1241,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                     String defaultValue = row.get("defaultValue");
                     String type = row.get("type");
                     String javaType = row.get("javaType");
+                    String deprecated = row.get("javaType");
                     String description = row.get("description");
 
                     // find the configured option
@@ -1254,7 +1255,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                     if (includeAllOptions || o != null) {
                         // add as selected row
                         if (!selected.containsKey(name)) {
-                            selected.put(name, new String[]{name, kind, type, javaType, value, defaultValue, description});
+                            selected.put(name, new String[]{name, kind, type, javaType, deprecated, value, defaultValue, description});
                         }
                     }
                 }
@@ -1274,9 +1275,10 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                     String kind = row[1];
                     String type = row[2];
                     String javaType = row[3];
-                    String value = row[4];
-                    String defaultValue = row[5];
-                    String description = row[6];
+                    String deprecated = row[4];
+                    String value = row[5];
+                    String defaultValue = row[6];
+                    String description = row[7];
 
                     // add json of the option
                     buffer.append(doubleQuote(name)).append(": { ");
@@ -1290,6 +1292,9 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                     if (javaType != null) {
                         csb.append("\"javaType\": \"" + javaType + "\"");
                     }
+                    if (deprecated != null) {
+                        csb.append("\"deprecated\": \"" + deprecated + "\"");
+                    }
                     if (value != null) {
                         csb.append("\"value\": \"" + value + "\"");
                     }
@@ -1381,6 +1386,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 String type = null;
                 String kind = null;
                 String javaType = null;
+                String deprecated = null;
                 String defaultValue = null;
                 String description = null;
                 for (Map<String, String> row : rows) {
@@ -1388,6 +1394,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                         type = row.get("type");
                         kind = row.get("kind");
                         javaType = row.get("javaType");
+                        deprecated = row.get("deprecated");
                         defaultValue = row.get("defaultValue");
                         description = row.get("description");
                         break;
@@ -1395,7 +1402,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 }
 
                 // add as selected row
-                selected.put(name, new String[]{name, kind, type, javaType, value, defaultValue, description});
+                selected.put(name, new String[]{name, kind, type, javaType, deprecated, value, defaultValue, description});
             }
 
             // include other rows
@@ -1406,6 +1413,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 String defaultValue = row.get("defaultValue");
                 String type = row.get("type");
                 String javaType = row.get("javaType");
+                String deprecated = row.get("deprecated");
                 value = URISupport.sanitizePath(value);
                 String description = row.get("description");
 
@@ -1419,7 +1427,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 if (includeAllOptions || "path".equals(kind)) {
                     // add as selected row
                     if (!selected.containsKey(name)) {
-                        selected.put(name, new String[]{name, kind, type, javaType, value, defaultValue, description});
+                        selected.put(name, new String[]{name, kind, type, javaType, deprecated, value, defaultValue, description});
                     }
                 }
             }
@@ -1439,9 +1447,10 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 String kind = row[1];
                 String type = row[2];
                 String javaType = row[3];
-                String value = row[4];
-                String defaultValue = row[5];
-                String description = row[6];
+                String deprecated = row[4];
+                String value = row[5];
+                String defaultValue = row[6];
+                String description = row[7];
 
                 // add json of the option
                 buffer.append(doubleQuote(name)).append(": { ");
@@ -1455,6 +1464,9 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
                 if (javaType != null) {
                     csb.append("\"javaType\": \"" + javaType + "\"");
                 }
+                if (deprecated != null) {
+                    csb.append("\"deprecated\": \"" + deprecated + "\"");
+                }
                 if (value != null) {
                     csb.append("\"value\": \"" + value + "\"");
                 }

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
index 4871206..9ad6574 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
@@ -96,14 +96,15 @@ public class ManagedEndpoint implements ManagedInstance, ManagedEndpointMBean {
                 String kind = row.get("kind");
                 String type = row.get("type");
                 String javaType = row.get("javaType");
+                String deprecated = row.get("deprecated") != null ? row.get("deprecated") : "";
                 String value = row.get("value") != null ? row.get("value") : "";
                 String defaultValue = row.get("defaultValue") != null ? row.get("defaultValue") : "";
                 String description = row.get("description") != null ? row.get("description") : "";
 
                 CompositeType ct = CamelOpenMBeanTypes.explainEndpointsCompositeType();
                 CompositeData data = new CompositeDataSupport(ct,
-                        new String[]{"option", "kind", "type", "java type", "value", "default value", "description"},
-                        new Object[]{name, kind, type, javaType, value, defaultValue, description});
+                        new String[]{"option", "kind", "type", "java type", "deprecated", "value", "default value", "description"},
+                        new Object[]{name, kind, type, javaType, deprecated, value, defaultValue, description});
                 answer.put(data);
             }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
index f2d8804..f644c86 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
@@ -149,14 +149,15 @@ public class ManagedProcessor extends ManagedPerformanceCounter implements Manag
                 String kind = row.get("kind");
                 String type = row.get("type");
                 String javaType = row.get("javaType");
+                String deprecated = row.get("deprecated") != null ? row.get("deprecated") : "";
                 String value = row.get("value") != null ? row.get("value") : "";
                 String defaultValue = row.get("defaultValue") != null ? row.get("defaultValue") : "";
                 String description = row.get("description") != null ? row.get("description") : "";
 
                 CompositeType ct = CamelOpenMBeanTypes.explainEipsCompositeType();
                 CompositeData data = new CompositeDataSupport(ct,
-                        new String[]{"option", "kind", "type", "java type", "value", "default value", "description"},
-                        new Object[]{name, kind, type, javaType, value, defaultValue, description});
+                        new String[]{"option", "kind", "type", "java type", "deprecated", "value", "default value", "description"},
+                        new Object[]{name, kind, type, javaType, deprecated, value, defaultValue, description});
                 answer.put(data);
             }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/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 9e7fb1b..57c444e 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
@@ -243,11 +243,11 @@ public class ManagedCamelContextTest extends ManagementTestSupport {
 
         assertEquals(5, StringHelper.countChar(json, '{'));
         assertEquals(5, StringHelper.countChar(json, '}'));
-        assertTrue(json.contains("\"groupDelay\": { \"kind\": \"parameter\", \"type\": \"integer\", \"javaType\": \"java.lang.Long\", \"value\": \"2000\","
+        assertTrue(json.contains("\"groupDelay\": { \"kind\": \"parameter\", \"type\": \"integer\", \"javaType\": \"java.lang.Long\", \"deprecated\": \"false\", \"value\": \"2000\","
                 + " \"description\": \"Set the initial delay for stats (in millis)\" },"));
-        assertTrue(json.contains("\"groupSize\": { \"kind\": \"parameter\", \"type\": \"integer\", \"javaType\": \"java.lang.Integer\", \"value\": \"5\","
+        assertTrue(json.contains("\"groupSize\": { \"kind\": \"parameter\", \"type\": \"integer\", \"javaType\": \"java.lang.Integer\", \"deprecated\": \"false\", \"value\": \"5\","
                 + " \"description\": \"An integer that specifies a group size for throughput logging.\" }"));
-        assertTrue(json.contains("\"loggerName\": { \"kind\": \"path\", \"type\": \"string\", \"javaType\": \"java.lang.String\","
+        assertTrue(json.contains("\"loggerName\": { \"kind\": \"path\", \"type\": \"string\", \"javaType\": \"java.lang.String\", \"deprecated\": \"false\","
                 + " \"value\": \"foo\", \"description\": \"The logger name to use\" }"));
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/components/camel-jdbc/src/test/java/org/apache/camel/component/jdbc/JdbcComponentConfigurationAndDocumentationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-jdbc/src/test/java/org/apache/camel/component/jdbc/JdbcComponentConfigurationAndDocumentationTest.java b/components/camel-jdbc/src/test/java/org/apache/camel/component/jdbc/JdbcComponentConfigurationAndDocumentationTest.java
index 4be4197..ab7effb 100644
--- a/components/camel-jdbc/src/test/java/org/apache/camel/component/jdbc/JdbcComponentConfigurationAndDocumentationTest.java
+++ b/components/camel-jdbc/src/test/java/org/apache/camel/component/jdbc/JdbcComponentConfigurationAndDocumentationTest.java
@@ -44,7 +44,7 @@ public class JdbcComponentConfigurationAndDocumentationTest extends CamelTestSup
 
         assertTrue(json.contains("\"outputClass\": { \"kind\": \"parameter\", \"type\": \"string\""));
         assertTrue(json.contains("\"allowNamedParameters\": { \"kind\": \"parameter\", \"type\": \"boolean\""));
-        assertTrue(json.contains("\"beanRowMapper\": { \"kind\": \"parameter\", \"type\": \"object\", \"javaType\": \"org.apache.camel.component.jdbc.BeanRowMapper\" }"));
+        assertTrue(json.contains("\"beanRowMapper\": { \"kind\": \"parameter\", \"type\": \"object\", \"javaType\": \"org.apache.camel.component.jdbc.BeanRowMapper\", \"deprecated\": \"false\" },"));
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EipExplainCommand.java
----------------------------------------------------------------------
diff --git a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EipExplainCommand.java b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EipExplainCommand.java
index b94002c..fac0012 100644
--- a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EipExplainCommand.java
+++ b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EipExplainCommand.java
@@ -86,6 +86,11 @@ public class EipExplainCommand extends AbstractContextCommand {
                 out.print("Java Type:     ");
                 out.println(javaType);
             }
+            String deprecated = option.get("deprecated");
+            if (deprecated != null) {
+                out.print("Deprecated:    ");
+                out.println(deprecated);
+            }
             String value = option.get("value");
             if (value != null) {
                 out.print("Value:         ");

http://git-wip-us.apache.org/repos/asf/camel/blob/f2fa8026/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
----------------------------------------------------------------------
diff --git a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
index f1e4787..f61e845 100644
--- a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
+++ b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
@@ -116,6 +116,11 @@ public class EndpointExplainCommand extends AbstractContextCommand {
                     out.print("Java Type:     ");
                     out.println(javaType);
                 }
+                String deprecated = option.get("deprecated");
+                if (deprecated != null) {
+                    out.print("Deprecated:    ");
+                    out.println(deprecated);
+                }
                 String value = option.get("value");
                 if (value != null) {
                     out.print("Value:         ");