Author: joed
Date: Sat Apr 30 00:32:23 2011
New Revision: 1098032

URL: http://svn.apache.org/viewvc?rev=1098032&view=rev
Log:
Do not create a new exchange and drop the headers.

CAMEL-3920

Added:
    
camel/trunk/components/camel-dns/src/test/java/org/apache/camel/component/dns/DnsIpHeaderTransferTest.java
Modified:
    
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsDigEndpoint.java
    
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsIpEndpoint.java
    
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsLookupEndpoint.java
    
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/WikipediaEndpoint.java

Modified: 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsDigEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsDigEndpoint.java?rev=1098032&r1=1098031&r2=1098032&view=diff
==============================================================================
--- 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsDigEndpoint.java
 (original)
+++ 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsDigEndpoint.java
 Sat Apr 30 00:32:23 2011
@@ -68,7 +68,7 @@ public class DnsDigEndpoint extends Defa
                 Record rec = Record.newRecord(name, type, dclass);
                 Message query = Message.newQuery(rec);
                 Message response = resolver.send(query);
-                exchange.getOut().setBody(response);
+                exchange.getIn().setBody(response);
             }
         };
     }
@@ -76,5 +76,4 @@ public class DnsDigEndpoint extends Defa
     public boolean isSingleton() {
         return false;
     }
-
 }

Modified: 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsIpEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsIpEndpoint.java?rev=1098032&r1=1098031&r2=1098032&view=diff
==============================================================================
--- 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsIpEndpoint.java
 (original)
+++ 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsIpEndpoint.java
 Sat Apr 30 00:32:23 2011
@@ -45,7 +45,7 @@ public class DnsIpEndpoint extends Defau
                 ObjectHelper.notEmpty(domain, "Header " + 
DnsConstants.DNS_DOMAIN);
 
                 InetAddress address = Address.getByName(domain);
-                exchange.getOut().setBody(address);
+                exchange.getIn().setBody(address);
             }
         };
     }
@@ -57,5 +57,4 @@ public class DnsIpEndpoint extends Defau
     public boolean isSingleton() {
         return false;
     }
-
 }

Modified: 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsLookupEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsLookupEndpoint.java?rev=1098032&r1=1098031&r2=1098032&view=diff
==============================================================================
--- 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsLookupEndpoint.java
 (original)
+++ 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/DnsLookupEndpoint.java
 Sat Apr 30 00:32:23 2011
@@ -71,9 +71,9 @@ public class DnsLookupEndpoint extends D
 
                 lookup.run();
                 if (lookup.getAnswers() != null) {
-                    exchange.getOut().setBody(lookup.getAnswers());
+                    exchange.getIn().setBody(lookup.getAnswers());
                 } else {
-                    exchange.getOut().setBody(lookup.getErrorString());
+                    exchange.getIn().setBody(lookup.getErrorString());
                 }
             }
         };
@@ -82,5 +82,4 @@ public class DnsLookupEndpoint extends D
     public boolean isSingleton() {
         return false;
     }
-
 }

Modified: 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/WikipediaEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/WikipediaEndpoint.java?rev=1098032&r1=1098031&r2=1098032&view=diff
==============================================================================
--- 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/WikipediaEndpoint.java
 (original)
+++ 
camel/trunk/components/camel-dns/src/main/java/org/apache/camel/component/dns/WikipediaEndpoint.java
 Sat Apr 30 00:32:23 2011
@@ -62,9 +62,9 @@ public class WikipediaEndpoint extends D
                 Message response = resolver.send(query);
                 Record[] records = response.getSectionArray(Section.ANSWER);
                 if (records.length > 0) {
-                    exchange.getOut().setBody(records[0].rdataToString());
+                    exchange.getIn().setBody(records[0].rdataToString());
                 } else {
-                    exchange.getOut().setBody(null);
+                    exchange.getIn().setBody(null);
                 }
             }
         };
@@ -73,5 +73,4 @@ public class WikipediaEndpoint extends D
     public boolean isSingleton() {
         return false;
     }
-
 }

Added: 
camel/trunk/components/camel-dns/src/test/java/org/apache/camel/component/dns/DnsIpHeaderTransferTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-dns/src/test/java/org/apache/camel/component/dns/DnsIpHeaderTransferTest.java?rev=1098032&view=auto
==============================================================================
--- 
camel/trunk/components/camel-dns/src/test/java/org/apache/camel/component/dns/DnsIpHeaderTransferTest.java
 (added)
+++ 
camel/trunk/components/camel-dns/src/test/java/org/apache/camel/component/dns/DnsIpHeaderTransferTest.java
 Sat Apr 30 00:32:23 2011
@@ -0,0 +1,80 @@
+/*
+ * 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.dns;
+
+import org.apache.camel.EndpointInject;
+import org.apache.camel.Produce;
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.test.junit4.CamelTestSupport;
+import org.junit.Test;
+
+
+import static org.apache.camel.builder.Builder.constant;
+
+public class DnsIpHeaderTransferTest extends CamelTestSupport {
+
+    @EndpointInject(uri = "mock:result")
+    protected MockEndpoint resultEndpoint;
+
+    @Produce(uri = "direct:start")
+    protected ProducerTemplate template;
+
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        RouteBuilder routeBuilder = super.createRouteBuilder();
+        routeBuilder.from("direct:start").setHeader("foo", 
constant("bar")).to("dns:ip").to("mock:result");
+
+        return routeBuilder;
+    }
+
+    @Test
+    public void testNullIPRequests() throws Exception {
+        resultEndpoint.expectedMessageCount(0);
+
+        try {
+            template.sendBodyAndHeader("hello", "dns.domain", null);
+        } catch (Throwable t) {
+            assertTrue(t.getCause() instanceof IllegalArgumentException);
+        }
+        resultEndpoint.assertIsSatisfied();
+    }
+
+    @Test
+    public void testEmptyIPRequests() throws Exception {
+        resultEndpoint.expectedMessageCount(0);
+
+        try {
+            template.sendBodyAndHeader("hello", "dns.domain", "");
+        } catch (Throwable t) {
+            assertTrue(t.getCause() instanceof IllegalArgumentException);
+        }
+        resultEndpoint.assertIsSatisfied();
+    }
+
+    @Test
+    public void testValidIPRequests() throws Exception {
+        resultEndpoint.expectedMessageCount(1);
+
+        resultEndpoint.expectedBodiesReceived("192.0.32.10");
+        resultEndpoint.expectedHeaderReceived("foo", "bar");
+
+        template.sendBodyAndHeader("hello", "dns.domain", "www.example.com");
+        resultEndpoint.assertIsSatisfied();
+    }
+}


Reply via email to