CAMEL-8379: Camel catalog - Include xml schema and maven archetype catalog

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

Branch: refs/heads/master
Commit: 00b82cc0adffa6cb47cc4ea07e84cb8ea0f6221a
Parents: 0f6e1e7
Author: Claus Ibsen <davscl...@apache.org>
Authored: Thu Feb 19 10:52:53 2015 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Thu Feb 19 10:52:53 2015 +0100

----------------------------------------------------------------------
 .../camel/catalog/CamelComponentCatalog.java    | 21 ++++++++
 .../catalog/DefaultCamelComponentCatalog.java   | 50 ++++++++++++++++++++
 2 files changed, 71 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/00b82cc0/platforms/catalog/src/main/java/org/apache/camel/catalog/CamelComponentCatalog.java
----------------------------------------------------------------------
diff --git 
a/platforms/catalog/src/main/java/org/apache/camel/catalog/CamelComponentCatalog.java
 
b/platforms/catalog/src/main/java/org/apache/camel/catalog/CamelComponentCatalog.java
index d9bb8ec..027cf83 100644
--- 
a/platforms/catalog/src/main/java/org/apache/camel/catalog/CamelComponentCatalog.java
+++ 
b/platforms/catalog/src/main/java/org/apache/camel/catalog/CamelComponentCatalog.java
@@ -123,4 +123,25 @@ public interface CamelComponentCatalog {
      * @return a set of all the labels.
      */
     Set<String> findModelLabels();
+
+    /**
+     * Returns the Apache Camel Maven Archetype catalog in XML format.
+     *
+     * @return the catalog in XML
+     */
+    String archetypeCatalogAsXml();
+
+    /**
+     * Returns the Camel Spring XML schema
+     *
+     * @return the spring XML schema
+     */
+    String springSchemaAsXml();
+
+    /**
+     * Returns the Camel Blueprint XML schema
+     *
+     * @return the blueprint XML schema
+     */
+    String blueprintSchemaAsXml();
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/00b82cc0/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelComponentCatalog.java
----------------------------------------------------------------------
diff --git 
a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelComponentCatalog.java
 
b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelComponentCatalog.java
index 47ecaa7..a633b98 100644
--- 
a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelComponentCatalog.java
+++ 
b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelComponentCatalog.java
@@ -42,6 +42,8 @@ public class DefaultCamelComponentCatalog implements 
CamelComponentCatalog {
     private static final String COMPONENTS_JSON = 
"org/apache/camel/catalog/components";
     private static final String DATA_FORMATS_JSON = 
"org/apache/camel/catalog/dataformats";
     private static final String LANGUAGE_JSON = 
"org/apache/camel/catalog/languages";
+    private static final String ARCHETYPES_CATALOG = 
"org/apache/camel/catalog/archetypes/camel-catalog.xml";
+    private static final String SCHEMAS_XML = 
"org/apache/camel/catalog/schemas";
 
     @Override
     public List<String> findComponentNames() {
@@ -383,6 +385,54 @@ public class DefaultCamelComponentCatalog implements 
CamelComponentCatalog {
         return answer;
     }
 
+    @Override
+    public String archetypeCatalogAsXml() {
+        String file = ARCHETYPES_CATALOG;
+
+        InputStream is = 
DefaultCamelComponentCatalog.class.getClassLoader().getResourceAsStream(file);
+        if (is != null) {
+            try {
+                return loadText(is);
+            } catch (IOException e) {
+                // ignore
+            }
+        }
+
+        return null;
+    }
+
+    @Override
+    public String springSchemaAsXml() {
+        String file = SCHEMAS_XML + "/camel-spring.xsd";
+
+        InputStream is = 
DefaultCamelComponentCatalog.class.getClassLoader().getResourceAsStream(file);
+        if (is != null) {
+            try {
+                return loadText(is);
+            } catch (IOException e) {
+                // ignore
+            }
+        }
+
+        return null;
+    }
+
+    @Override
+    public String blueprintSchemaAsXml() {
+        String file = SCHEMAS_XML + "/camel-blueprint.xsd";
+
+        InputStream is = 
DefaultCamelComponentCatalog.class.getClassLoader().getResourceAsStream(file);
+        if (is != null) {
+            try {
+                return loadText(is);
+            } catch (IOException e) {
+                // ignore
+            }
+        }
+
+        return null;
+    }
+
     /**
      * Loads the entire stream into memory as a String and returns it.
      * <p/>

Reply via email to