camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ningji...@apache.org
Subject [1/2] git commit: fix for CAMEL-7883
Date Mon, 20 Oct 2014 02:33:49 GMT
Repository: camel
Updated Branches:
  refs/heads/master 35e1a82c0 -> f8c140f01


fix for CAMEL-7883


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

Branch: refs/heads/master
Commit: d57f402b7fecf11304016ac7f9817d5976b81237
Parents: 35e1a82
Author: Benjamin BONNET <benjamin.bonnet@m4x.org>
Authored: Wed Oct 1 00:36:43 2014 +0200
Committer: Willem Jiang <willem.jiang@gmail.com>
Committed: Mon Oct 20 10:18:59 2014 +0800

----------------------------------------------------------------------
 .../validator/DefaultLSResourceResolver.java    |  3 +-
 .../ValidatorIncludeEncodingRouteTest.java      | 85 ++++++++++++++++++++
 .../camel/component/validator/sentence.xsd      | 20 +++++
 .../apache/camel/component/validator/text.xsd   | 23 ++++++
 4 files changed, 129 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/d57f402b/camel-core/src/main/java/org/apache/camel/component/validator/DefaultLSResourceResolver.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/validator/DefaultLSResourceResolver.java
b/camel-core/src/main/java/org/apache/camel/component/validator/DefaultLSResourceResolver.java
index 622e257..38fa704 100644
--- a/camel-core/src/main/java/org/apache/camel/component/validator/DefaultLSResourceResolver.java
+++ b/camel-core/src/main/java/org/apache/camel/component/validator/DefaultLSResourceResolver.java
@@ -117,8 +117,7 @@ public class DefaultLSResourceResolver implements LSResourceResolver {
         
         @Override
         public Reader getCharacterStream() {
-            InputStream is = getByteStream();
-            return camelContext.getTypeConverter().convertTo(Reader.class, is);
+            return null;
         }
 
         @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/d57f402b/camel-core/src/test/java/org/apache/camel/component/validator/ValidatorIncludeEncodingRouteTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/validator/ValidatorIncludeEncodingRouteTest.java
b/camel-core/src/test/java/org/apache/camel/component/validator/ValidatorIncludeEncodingRouteTest.java
new file mode 100644
index 0000000..efb37f0
--- /dev/null
+++ b/camel-core/src/test/java/org/apache/camel/component/validator/ValidatorIncludeEncodingRouteTest.java
@@ -0,0 +1,85 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.validator;
+
+import org.apache.camel.ContextTestSupport;
+import org.apache.camel.Exchange;
+import org.apache.camel.LoggingLevel;
+import org.apache.camel.Processor;
+import org.apache.camel.ValidationException;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+
+/**
+ *
+ */
+public class ValidatorIncludeEncodingRouteTest extends ContextTestSupport {
+
+    protected MockEndpoint validEndpoint;
+    protected MockEndpoint finallyEndpoint;
+    protected MockEndpoint invalidEndpoint;
+
+    public void testValidMessage() throws Exception {
+        validEndpoint.expectedMessageCount(1);
+        finallyEndpoint.expectedMessageCount(1);
+        
+        String body = "<t:text xmlns:t=\"org.text\">\n"
+                + "  <t:sentence>J'aime les camélidés</t:sentence>\n"
+                + "</t:text>";
+
+        template.sendBody("direct:start", body);
+
+        MockEndpoint.assertIsSatisfied(validEndpoint, invalidEndpoint, finallyEndpoint);
+    }
+
+    
+
+    @Override
+    protected void setUp() throws Exception {
+        super.setUp();
+
+        validEndpoint = resolveMandatoryEndpoint("mock:valid", MockEndpoint.class);
+        invalidEndpoint = resolveMandatoryEndpoint("mock:invalid", MockEndpoint.class);
+        finallyEndpoint = resolveMandatoryEndpoint("mock:finally", MockEndpoint.class);
+    }
+
+    @Override
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        return new RouteBuilder() {
+            @Override
+            public void configure() throws Exception {
+                from("direct:start")
+                    .doTry()
+                        .to("validator:org/apache/camel/component/validator/text.xsd")
+                        .to("mock:valid")
+                    .doCatch(NumberFormatException.class)
+                 .process(new Processor() {
+                    
+                    @Override
+                    public void process(Exchange exchange) throws Exception {
+System.err.println("helo " + exchange.getException());                        
+                    }
+                })
+                        .to("mock:invalid")
+                    .doFinally()
+                        .to("mock:finally")
+                    .end();
+            }
+        };
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/d57f402b/camel-core/src/test/resources/org/apache/camel/component/validator/sentence.xsd
----------------------------------------------------------------------
diff --git a/camel-core/src/test/resources/org/apache/camel/component/validator/sentence.xsd
b/camel-core/src/test/resources/org/apache/camel/component/validator/sentence.xsd
new file mode 100644
index 0000000..6fd3762
--- /dev/null
+++ b/camel-core/src/test/resources/org/apache/camel/component/validator/sentence.xsd
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+	license agreements. See the NOTICE file distributed with this work for additional 
+	information regarding copyright ownership. The ASF licenses this file to 
+	You under the Apache License, Version 2.0 (the "License"); you may not use 
+	this file except in compliance with the License. You may obtain a copy of 
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+	by applicable law or agreed to in writing, software distributed under the 
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+	OF ANY KIND, either express or implied. See the License for the specific 
+	language governing permissions and limitations under the License. -->
+<xs:schema attributeFormDefault="unqualified"
+	elementFormDefault="qualified" targetNamespace="org.text.sentence"
+	xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<xs:simpleType name="sentence">
+		<xs:restriction base="xs:string">
+			<xs:pattern value="[a-zA-Z�' ]*" />
+		</xs:restriction>
+	</xs:simpleType>
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/d57f402b/camel-core/src/test/resources/org/apache/camel/component/validator/text.xsd
----------------------------------------------------------------------
diff --git a/camel-core/src/test/resources/org/apache/camel/component/validator/text.xsd b/camel-core/src/test/resources/org/apache/camel/component/validator/text.xsd
new file mode 100644
index 0000000..e49d58f
--- /dev/null
+++ b/camel-core/src/test/resources/org/apache/camel/component/validator/text.xsd
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+	license agreements. See the NOTICE file distributed with this work for additional 
+	information regarding copyright ownership. The ASF licenses this file to 
+	You under the Apache License, Version 2.0 (the "License"); you may not use 
+	this file except in compliance with the License. You may obtain a copy of 
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+	by applicable law or agreed to in writing, software distributed under the 
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+	OF ANY KIND, either express or implied. See the License for the specific 
+	language governing permissions and limitations under the License. -->
+<xs:schema attributeFormDefault="unqualified"
+	elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"
+	xmlns:p="org.text" targetNamespace="org.text" xmlns:s="org.text.sentence">
+	<xs:import schemaLocation="sentence.xsd" namespace="org.text.sentence" />
+	<xs:element name="text" type="p:textType">
+	</xs:element>
+	<xs:complexType name="textType">
+		<xs:sequence>
+			<xs:element type="s:sentence" name="sentence" minOccurs="0"/>
+		</xs:sequence>
+	</xs:complexType>
+</xs:schema>
\ No newline at end of file


Mime
View raw message