svn commit: r891579 - /camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas
Author: ningjiang Date: Thu Dec 17 08:17:44 2009 New Revision: 891579 URL: http://svn.apache.org/viewvc?rev=891579view=rev Log: Commit the change of the camel-osgi spring.schemas file that I just missed Modified: camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas Modified: camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas?rev=891579r1=891578r2=891579view=diff == --- camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas (original) +++ camel/trunk/components/camel-osgi/src/main/resources/META-INF/spring.schemas Thu Dec 17 08:17:44 2009 @@ -21,4 +21,5 @@ http\://camel.apache.org/schema/osgi/camel-osgi-2.0-M2.xsd=camel-osgi.xsd http\://camel.apache.org/schema/osgi/camel-osgi-2.0-M3.xsd=camel-osgi.xsd http\://camel.apache.org/schema/osgi/camel-osgi-2.0.0.xsd=camel-osgi.xsd -http\://camel.apache.org/schema/osgi/camel-osgi-${pom.version}.xsd=camel-osgi.xsd \ No newline at end of file +http\://camel.apache.org/schema/osgi/camel-osgi-2.1.0.xsd=camel-osgi.xsd +http\://camel.apache.org/schema/osgi/camel-osgi-${pom.version}.xsd=camel-osgi.xsd
[CONF] Apache Camel Camel 2.2.0 Release
Camel 2.2.0 Release Page edited by Claus Ibsen Camel 2.2.0 release (currently in progress) New and Noteworthy Welcome to the 2.2.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) Routing Slip now breaks when an exception occurred MINA now supports easier configuration of multiple custom codecs, which is needed when working with SSL. Improved TransactionErrorHandler two fold by reducing complexity of internal logic in Camel when working with transactions. And added better support for using multiple transactions in multiple routes. See more at section Using multiple routes with different propagation behaviors at Transactional Client. Recipient List now supports parallelProcessing, stopOnException and references for AggregationStrategy and thread pools. This applies to the @RecipientList annotation as well. Cleanup of spring jar dependencies. File Language is now merged directly into Simple language which among others makes Content Based Router in Spring XML using file language syntax easier. Camel Http is now using CamelContext Properties instead of System Properties to set the http proxy configuration. Fixed Camel Proxy throwing exception if null was returned. Improved error handling with Recipient List and Multicast which now performs redelivery etc. on that output node instead of starting again from the scratch. SEDA now supports multipleConsumers which allows you to use it for pub-sub messaging where each consumer concurrently will receive a copy of the Exchange. This is done with the help from Multicast EIP. DefaultErrorHandler will now log a log line at ERROR level in case an Exception was thrown which could not be redelivered either. This aid to see that an Exception occurred instead of relying on the client logging it. You can customize this behavior on the Error Handler. New Enterprise Integration Patterns New Components camel-ftp now supports FTPS (FTP over SSL/TLS) camel-smpp New DSL markRollbackOnlyLast New Annotations New Data Formats New Languages New Examples API breaking DefaultComponent The methods DefaultComponent.resolveAndRemoveReferenceParameter and DefaultComponent.resolveAndRemoveReferenceParameterList have been changed to make the leading # sign for bean references optional and to throw an IllegalArgumentException if a referenced bean is not in the registry. For details see CAMEL-2248. Exchange The property Exchange.FILTETED have been removed as part of CAMEL-2288. ExceptionHandler The class org.apache.camel.spi.ExceptionHandler now have two additional methods which accepts more details when an Exception occurred such as a message and the current Exchange. @EndpointInject The name attribute in @EndpointInject has been renamed to ref to be consistent with the other annotations. Its a reference for an Endpoint to be looked up in the Registry. Known Issues See known issues from previous releases. Important changes to consider when upgrading Spring jar dependencies have been cut down in camel-core. The pom.xml file for camel-core have cut down number of spring jar dependencies to allow Camel to easily run without any Spring .jars at all. However this affects you if you use maven and use camel-core without camel-spring or spring at all. If you want to use JMX with Camel then you need to add the following 4 spring jars required: spring-core.jar, spring-beans.jar, spring-context.jar, spring-aop.jar. With maven you only need to depend on spring-context and spring-aop as they will bring in the other two jars. See also Camel jar dependencies and Camel JMX. Using filter in Splitter The filter no long influence the split and its AggregationStrategy as it was just too confusing why it did that. See CAMEL-2288 for details. camel-http and proxy The HTTP component used to read Proxy settings directly from system properties. You should instead configure proxy wide information as properties to the CamelContext instead. See HTTP for details. Getting the Distributions Binary Distributions Description Download Link PGP Signature file of download Windows Distribution apache-camel-2.2.0.zip apache-camel-2.2.0.zip.asc Unix/Linux/Cygwin Distribution apache-camel-2.2.0.tar.gz apache-camel-2.2.0.tar.gz.asc The above URLs use redirectionThe above URLs use the Apache Mirror system to redirect you to a suitable mirror for your download. Some users have experienced issues with some versions of browsers (e.g. some Safari browsers). If the download doesn't seem to work for you from the above URL then try using FireFox Source Distributions Description Download Link PGP Signature file of download Source for Windows apache-camel-2.2.0-src.zip apache-camel-2.2.0-src.zip.asc Source for Unix/Linux/Cygwin apache-camel-2.2.0-src.tar.gz apache-camel-2.2.0-src.tar.gz.asc Getting the Binaries using Maven 2
svn commit: r891619 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/ camel-core/src/test/java/org/apache/camel/impl/ components/camel-guice/src/main/java/org/apache/camel/guice/impl/ comp
Author: davsclaus Date: Thu Dec 17 10:06:31 2009 New Revision: 891619 URL: http://svn.apache.org/viewvc?rev=891619view=rev Log: CAMEL-2300: Renamed name attribute on @EndpointInject to ref. Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java camel/trunk/camel-core/src/test/java/org/apache/camel/impl/CamelPostProcessorHelperTest.java camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/impl/EndpointInjector.java camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelBeanPostProcessor.java camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/InjectedBean.java camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/NodeIdReferenceTest.java camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/SpringConsumerTemplateTest.java camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/config/scan/route/MyRouteBuilder.java camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/file/SpringFileAntPathMatcherFileFilterTest.java camel/trunk/examples/camel-example-axis/src/main/java/org/apache/camel/example/axis/ReportIncidentService.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFileAntPathMatcherRemoteFileFilterTest.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFtpEndpointTest.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpRoute.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpTXTest.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpTXWithOnExceptionAndNoTransactionErrorHandlerConfiguredTest.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpTXWithOnExceptionTest.java camel/trunk/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpTXWithRollbackTest.java Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java?rev=891619r1=891618r2=891619view=diff == --- camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java Thu Dec 17 10:06:31 2009 @@ -30,7 +30,7 @@ * can be specified on this annotation, or a name can be specified which is resolved in the * {...@link org.apache.camel.spi.Registry} such as in your Spring ApplicationContext. * - * If no name or uri is specified then the name is defaulted from the field, property or method name. + * If no ref or uri is specified then the ref is defaulted from the field, property or method name. * * @version $Revision$ */ @@ -39,6 +39,6 @@ @Target({ElementType.FIELD, ElementType.METHOD, ElementType.CONSTRUCTOR }) public @interface EndpointInject { String uri() default ; -String name() default ; +String ref() default ; String context() default ; } Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/impl/CamelPostProcessorHelperTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/CamelPostProcessorHelperTest.java?rev=891619r1=891618r2=891619view=diff == --- camel/trunk/camel-core/src/test/java/org/apache/camel/impl/CamelPostProcessorHelperTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/impl/CamelPostProcessorHelperTest.java Thu Dec 17 10:06:31 2009 @@ -79,7 +79,7 @@ Class?[] parameterTypes = method.getParameterTypes(); for (Class type : parameterTypes) { String propertyName = ObjectHelper.getPropertyName(method); -Object value = helper.getInjectionValue(type, endpointInject.uri(), endpointInject.name(), propertyName); +Object value = helper.getInjectionValue(type, endpointInject.uri(), endpointInject.ref(), propertyName); ObjectHelper.invokeMethod(method, bean, value); } @@ -102,7 +102,7 @@ Class?[] parameterTypes = method.getParameterTypes(); for (Class type : parameterTypes) { String propertyName = ObjectHelper.getPropertyName(method); -Object value = helper.getInjectionValue(type, endpointInject.uri(), endpointInject.name(), propertyName); +Object value = helper.getInjectionValue(type, endpointInject.uri(), endpointInject.ref(), propertyName); ObjectHelper.invokeMethod(method, bean, value); } @@ -129,7 +129,7 @@ Class?[] parameterTypes = method.getParameterTypes(); for (Class type : parameterTypes) {
[CONF] Apache Camel Articles
Articles Page edited by Claus Ibsen See alsoSee also Camel User Stories. Articles on Apache Camel A bit more meat: Camel applied : JMS to File by Mike McLean Mathew Thomas posted his thoughts on Apache Camel including a sample project Matteo wrote a blog entry about using Camel with iBatis Knowledge Tree integration using Apache Camel Integrating Apache Camel with JBoss ESB by Edgar Ankiewsky Simple DSL OSGi bundle example by Andrej Koelewijn Realization of EAI Patterns with Apache Camel by Pascal Kolb at the Universität Stuttgart Using Camel with Maven to access web services and message queues by Glen Mazza Spring Remoting with JMS Example on Amin Abbaspour's Weblog Implementing Enterprise Integration Patterns with Apache Camel presentation by Eduard Hildebrandt. Very nice power point presentation. Implementing Fuji integration scenario using Camel SE by Louis Polycarpou on using Camel with Open ESB Using the Camel aggregator correctly by Torsten Mielke, a great blog entry how to use the Camel aggregator. Camel routes and HL7 by Roger Searjeant on using Camel and its HL7 support in the health care space. Combining ApacheCamel+BSF to make JBoss ESB polyglot by Edgard Ankiewsky Silva, a JBoss employeer. Groovy and Grape - easiest way to send gtalk message with Apache Camel by Andrej Koelewijn how easy it is to use Groovy and Grape to quickly try out new frameworks such as Apache Camel. Domain-Specific Languages (DSLs) in Apache Camel (Spanish) by Gema Perdiguero, Tecsisa. Apache Camel integration in ServiceMix (Spanish) by Sebastián Gómez, Tecsisa. Apache Camel: Integration Nirvana by Jonathan Anstey Great for learning what Camel is and what it can do Leverage EIP with Apache Camel and Twitter by Bruno Borges Apache Camel Reference Card at DZone (the first card out of two) by Claus Ibsen Using RSS with Apache Camel by Jeroen Reijn Using Groovy and Camel to pool Google Analyst email reports by Mr. Haki Using grails-camel plugin to work with Camel in Grails land by Mr. Haki Send mail with Apache Camel from Gails by Mr. Haki Navigating the Integration Landscape - Claus Ibsen on Apache Camel Claus Ibsen was interviewed at DZone discussing the integration landscape Apache Camel: Enterprise Integration met scripttalen en DSLs (Dutch) by Peter Maas, Finalist IT Group. Axis 2 ride with Camel how to use Axis 2 with the Camel report incident tutorial by Sagara Introduction to the Open eHealth Integration Platform (based on top of Apache Camel) Excellent DZone article by Martin Krasser An IRC alerter written using Apache Camel and Java how to easily integrate IRC with Camel to monitor and do alerts. Entreprise Integration Pattern with Apache Camel 2.0 by Julien Dechmann, how to use Camel to split and transform CSV files to POJO and XML and sending to a JMS destination A Camel based XML payload HTTP polling provider by Christopher Hunt to use Camel with AJAX. Interesting read. Camel vs. JBI by Adrian Trenaman. Things to consider when selecting between Apache Camel and Apache Servicemix by Ashwin Karpe Dead Simple Integration with Apache Camel presentation by Aaron Mulder from Chariot Solutions. Groovy and Camel for monitoring ActiveMQ by Eric Hauser how to monitor AMQ Advisory queues from a single groovy file. Camellos - Discovering Apache Camel by Gunnar Hillert. A very nice and short blog series about Camel showing its powers in a simple and intuitive way. Highly recommended for new users Apache Camel alternatives by Gunnar Hillert. He presents a brief overview of other projects in the integration space. First steps with Apache Camel on Google App Engine by Martin Krasser posts his findings to get Camel running on the GAE. A jira notification system for irc using Camel by Guillaume Nodet - all code is in a single XML hot deployed in Apache Karaf. Camel, CXF and JMS by Example by Silvester van der Bijl. Good blog entry how to use CXF and Camel together. A simple file monitoring console with camel, cometd and jquery by Andrej Koelewijn. Shows how to use Camel to monitor log files and push lines changed using cometd to a webpage. All in a few files using Groovy. A Groovy ride on Camel by Jack Hung. Shows how to use Groovy with Camel to do a great content based route and transformation. First step with Apache Camel by Lukas Gdansk. Great first steps where Lukas does a fairly complex route as his first encounter with Camel. Webinar or Video presentations on Camel James Strachan's Devoxx 2009 talk is mostly about Camel and ActiveMQ ScreenCast: an introduction to Apache Camel and the use of Enterprise Integration Patterns in Medium Resolution or High Resolution by James Strachan Taking Camel for a ride presentation by Bruce Snyder at ApacheCon US 2008 (Click on link to the presentation in his blog). JavaZone Conference - Taking Apache Camel for a Rider - Video presentation by Bruce Snyder at JavaZone
svn commit: r891737 - in /camel/trunk/components/camel-web: ./ src/main/java/org/apache/camel/web/resources/ src/main/resources/META-INF/services/
Author: jstrachan Date: Thu Dec 17 14:50:48 2009 New Revision: 891737 URL: http://svn.apache.org/viewvc?rev=891737view=rev Log: fix for CAMEL-2301 to switch to jackson for JSON marshalling Added: camel/trunk/components/camel-web/src/main/resources/META-INF/services/ camel/trunk/components/camel-web/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyReader camel/trunk/components/camel-web/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter Modified: camel/trunk/components/camel-web/pom.xml camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java Modified: camel/trunk/components/camel-web/pom.xml URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=891737r1=891736r2=891737view=diff == --- camel/trunk/components/camel-web/pom.xml (original) +++ camel/trunk/components/camel-web/pom.xml Thu Dec 17 14:50:48 2009 @@ -91,9 +91,9 @@ version${jersey-version}/version /dependency dependency - groupIdcom.sun.jersey/groupId - artifactIdjersey-json/artifactId - version${jersey-version}/version + groupIdorg.codehaus.jackson/groupId + artifactIdjackson-jaxrs/artifactId + version1.3.2/version /dependency dependency groupIdcom.sun.jersey/groupId Modified: camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java?rev=891737r1=891736r2=891737view=diff == --- camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java (original) +++ camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java Thu Dec 17 14:50:48 2009 @@ -95,7 +95,7 @@ @GET // TODO we can replace this long expression with a static constant // when Jersey supports JAX-RS 1.1 -@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) +@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, text/json}) public Camel getCamel() { return new Camel(camelContext, getVersion()); } Modified: camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java?rev=891737r1=891736r2=891737view=diff == --- camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java (original) +++ camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java Thu Dec 17 14:50:48 2009 @@ -23,7 +23,7 @@ public static final String HTML_MIME_TYPES = text/html;qs=5; -public static final String DATA_MIME_TYPES = text/xml,application/xml,application/json; +public static final String DATA_MIME_TYPES = text/xml,application/xml,application/json,text/json; public static final String DOT_MIMETYPE = text/vnd.graphviz; public static final String JAXB_PACKAGES = org.apache.camel.model.Constants.JAXB_CONTEXT_PACKAGES + :org.apache.camel.web.model; Modified: camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java?rev=891737r1=891736r2=891737view=diff == --- camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java (original) +++ camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java Thu Dec 17 14:50:48 2009 @@ -53,7 +53,7 @@ * Returns a list of endpoints available in this context */ @GET -@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) +@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, text/json}) public Endpoints getDTO() { return new Endpoints(getCamelContext()); } Modified:
svn commit: r891780 - /camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java
Author: davsclaus Date: Thu Dec 17 15:51:13 2009 New Revision: 891780 URL: http://svn.apache.org/viewvc?rev=891780view=rev Log: Added a setter on iBatisComponent to configure the SqlMapConfig xml file where its to be loaded. Modified: camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java Modified: camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java?rev=891780r1=891779r2=891780view=diff == --- camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java (original) +++ camel/trunk/components/camel-ibatis/src/main/java/org/apache/camel/component/ibatis/IBatisComponent.java Thu Dec 17 15:51:13 2009 @@ -44,7 +44,7 @@ * * bOR/b * - * 2. A SqlMapClient explicityly set. + * 2. A SqlMapClient explicit set. * * Using Ibatis as a source of data (lt;fromgt;) you can use this component * to treat a database table as a logical queue. @@ -120,6 +120,10 @@ return sqlMapConfig; } +public void setSqlMapConfig(String sqlMapConfig) { +this.sqlMapConfig = sqlMapConfig; +} + public boolean isUseTransactions() { return useTransactions; }
svn commit: r891808 - /camel/sandbox/components/camel-activemq-web/pom.xml
Author: jstrachan Date: Thu Dec 17 17:32:15 2009 New Revision: 891808 URL: http://svn.apache.org/viewvc?rev=891808view=rev Log: updated to latest camel activemq versions Modified: camel/sandbox/components/camel-activemq-web/pom.xml Modified: camel/sandbox/components/camel-activemq-web/pom.xml URL: http://svn.apache.org/viewvc/camel/sandbox/components/camel-activemq-web/pom.xml?rev=891808r1=891807r2=891808view=diff == --- camel/sandbox/components/camel-activemq-web/pom.xml (original) +++ camel/sandbox/components/camel-activemq-web/pom.xml Thu Dec 17 17:32:15 2009 @@ -22,7 +22,7 @@ parent artifactIdcomponents/artifactId groupIdorg.apache.camel/groupId -version2.1-SNAPSHOT/version +version2.2-SNAPSHOT/version /parent modelVersion4.0.0/modelVersion artifactIdcamel-activemq-web/artifactId @@ -45,10 +45,11 @@ scoperuntime/scope /dependency +!-- lets add some camel components -- dependency groupIdorg.apache.activemq/groupId artifactIdactivemq-camel/artifactId - version5.2.0/version + version5.3.0/version /dependency dependency groupIdorg.apache.xbean/groupId @@ -65,15 +66,6 @@ version${jetty-version}/version configuration - !-- -connectors - connector implementation=org.mortbay.jetty.nio.SelectChannelConnector -port${jetty.port}/port -maxIdleTime6/maxIdleTime - /connector -/connectors - -- - webAppConfig contextPath//contextPath /webAppConfig
svn commit: r891853 - /camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java
Author: davsclaus Date: Thu Dec 17 19:23:37 2009 New Revision: 891853 URL: http://svn.apache.org/viewvc?rev=891853view=rev Log: Ported an unit test from trunk to 1.x due to user claiming it does not work in 1.x Added: camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java (with props) Added: camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java?rev=891853view=auto == --- camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java (added) +++ camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java Thu Dec 17 19:23:37 2009 @@ -0,0 +1,70 @@ +/** + * 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.builder.xml; + +import org.apache.camel.ContextTestSupport; +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.component.mock.MockEndpoint; + +/** + * @version $Revision$ + */ +public class ExtractXPathWithNamespaceTest extends ContextTestSupport { + +public void testXPathWithNamespace() throws Exception { +MockEndpoint mock = getMockEndpoint(mock:result); +mock.expectedBodiesReceived(number xmlns=\http://acme.com/cheese\;55/number); +mock.message(0).header(foo).isEqualTo(55); + +template.sendBody(direct:in, number xmlns=\http://acme.com/cheese\;55/number); + +mock.assertIsSatisfied(); +} + +public void testXPathWithNamespaceOther() throws Exception { +MockEndpoint mock = getMockEndpoint(mock:result); +mock.expectedBodiesReceived(number xmlns=\http://acme.com/cheese\;99/number); +mock.message(0).header(foo).isEqualTo(99); + +template.sendBody(direct:in, number xmlns=\http://acme.com/cheese\;99/number); + +mock.assertIsSatisfied(); +} + +public void testXPathWithNamespaceDifferentNamespace() throws Exception { +MockEndpoint mock = getMockEndpoint(mock:result); +mock.expectedBodiesReceived(number xmlns=\http://acme.com/cake\;55/number); +mock.message(0).header(foo).isEqualTo(0); + +template.sendBody(direct:in, number xmlns=\http://acme.com/cake\;55/number); + +mock.assertIsSatisfied(); +} + +protected RouteBuilder createRouteBuilder() throws Exception { +return new RouteBuilder() { +public void configure() throws Exception { +Namespaces ns = new Namespaces(c, http://acme.com/cheese;); + +from(direct:in) +.setHeader(foo).xpath(/c:number, Integer.class, ns) +.to(mock:result); +} +}; +} + +} Propchange: camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java -- svn:eol-style = native Propchange: camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/builder/xml/ExtractXPathWithNamespaceTest.java -- svn:keywords = Rev Date
svn commit: r892109 [1/2] - in /camel/trunk: camel-core/src/main/java/org/apache/camel/builder/ camel-core/src/main/java/org/apache/camel/model/dataformat/ camel-core/src/main/resources/org/apache/cam
Author: ningjiang Date: Fri Dec 18 02:12:12 2009 New Revision: 892109 URL: http://svn.apache.org/viewvc?rev=892109view=rev Log: CAMEL-2148 Added DataFormat for Google Protocol Buffers Added: camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/ProtobufDataFormat.java (with props) camel/trunk/components/camel-protobuf/ camel/trunk/components/camel-protobuf/pom.xml (with props) camel/trunk/components/camel-protobuf/src/ camel/trunk/components/camel-protobuf/src/main/ camel/trunk/components/camel-protobuf/src/main/java/ camel/trunk/components/camel-protobuf/src/main/java/org/ camel/trunk/components/camel-protobuf/src/main/java/org/apache/ camel/trunk/components/camel-protobuf/src/main/java/org/apache/camel/ camel/trunk/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/ camel/trunk/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ camel/trunk/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java (with props) camel/trunk/components/camel-protobuf/src/main/resources/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/LICENSE.txt (with props) camel/trunk/components/camel-protobuf/src/main/resources/META-INF/NOTICE.txt (with props) camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/org/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/org/apache/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/org/apache/camel/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/org/apache/camel/dataformat/ camel/trunk/components/camel-protobuf/src/main/resources/META-INF/services/org/apache/camel/dataformat/protobuf camel/trunk/components/camel-protobuf/src/test/ camel/trunk/components/camel-protobuf/src/test/java/ camel/trunk/components/camel-protobuf/src/test/java/org/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/dataformat/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/dataformat/protobuf/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/dataformat/protobuf/ProtobufMarshalTest.java (with props) camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/dataformat/protobuf/generated/ camel/trunk/components/camel-protobuf/src/test/java/org/apache/camel/dataformat/protobuf/generated/AddressBookProtos.java (with props) camel/trunk/components/camel-protobuf/src/test/resources/ camel/trunk/components/camel-protobuf/src/test/resources/addressbook.proto (with props) camel/trunk/components/camel-protobuf/src/test/resources/readme.txt (with props) Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java?rev=892109r1=892108r2=892109view=diff == --- camel/trunk/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java Fri Dec 18 02:12:12 2009 @@ -31,6 +31,7 @@ import org.apache.camel.model.dataformat.JaxbDataFormat; import org.apache.camel.model.dataformat.JsonDataFormat; import org.apache.camel.model.dataformat.JsonLibrary; +import org.apache.camel.model.dataformat.ProtobufDataFormat; import org.apache.camel.model.dataformat.RssDataFormat; import org.apache.camel.model.dataformat.SerializationDataFormat; import org.apache.camel.model.dataformat.StringDataFormat; @@ -178,6 +179,17 @@ json.setUnmarshalType(unmarshalType); return dataFormat(json); } + +/** + * Uses the protobuf data format + */ +public T protobuf() { +return dataFormat(new ProtobufDataFormat()); +} + +public T protobuf(String instanceClassName) { +return dataFormat(new ProtobufDataFormat(instanceClassName)); +} /** * Uses the RSS data format Added: camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/ProtobufDataFormat.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/ProtobufDataFormat.java?rev=892109view=auto