svn commit: r859560 - /websites/production/camel/content/cache/main.pageCache
Author: cmueller Date: Tue Apr 23 06:02:54 2013 New Revision: 859560 Log: trigger a full export of the Camel WIKI sites Removed: websites/production/camel/content/cache/main.pageCache
svn commit: r859564 [3/3] - in /websites/production/camel/content: 2007/08/18/ 2007/08/20/ 2007/10/01/ 2007/10/28/ 2008/04/08/ 2008/04/22/ 2008/04/28/ 2008/07/22/ 2008/10/31/ 2009/01/19/ 2009/02/03/ 2
Modified: websites/production/camel/content/2012/04/18/apache-camel-292-released.html == --- websites/production/camel/content/2012/04/18/apache-camel-292-released.html (original) +++ websites/production/camel/content/2012/04/18/apache-camel-292-released.html Tue Apr 23 06:28:09 2013 @@ -75,7 +75,13 @@ tbody tr td valign=top width=100% -div id=site-quicklinkspa shape=rect href=download.html title=DownloadDownload/a | a shape=rect href=javadoc.html title=JavaDocJavaDoc/a | a shape=rect href=source.html title=SourceSource/a | a shape=rect href=discussion-forums.html title=Discussion ForumsForums/a | a shape=rect href=support.html title=SupportSupport/a/p/div +div class=wiki-content maincontentpThe Camel community continues its efforts to issue patch releases on a predictable schedule. Today we are proud to announce a new patch release Apache Camel 2.9.2. This release comes with 58 issues fixed, about 6 weeks after the previous release - camel-2.9.1. Development continues as strong as ever, with a release to follow shortly for the still supported 2.8.x branch. The trunk already contains an impressive number of fixes, improvements and new features and it won't be long before camel-2.10.0 will be available as well./p + +pThe artifacts are now published and are ready for you to a shape=rect href=../../../download.html title=Downloaddownload/a either from the Apache mirrors or from the Central Maven repository.br clear=none +For more details please take a look at the a shape=rect href=../../../camel-292-release.html title=Camel 2.9.2 Releaserelease notes/a./p + +pMany thanks to all contributors for making this release possible./p +/div /td td valign=top div class=navigation Modified: websites/production/camel/content/2012/05/02/apache-camel-285-released.html == --- websites/production/camel/content/2012/05/02/apache-camel-285-released.html (original) +++ websites/production/camel/content/2012/05/02/apache-camel-285-released.html Tue Apr 23 06:28:09 2013 @@ -75,7 +75,12 @@ tbody tr td valign=top width=100% -div id=site-quicklinkspa shape=rect href=download.html title=DownloadDownload/a | a shape=rect href=javadoc.html title=JavaDocJavaDoc/a | a shape=rect href=source.html title=SourceSource/a | a shape=rect href=discussion-forums.html title=Discussion ForumsForums/a | a shape=rect href=support.html title=SupportSupport/a/p/div +div class=wiki-content maincontentpWe are a bit late with announcing the 2.8.5 release which was actually available in the public repos for a few days now. The 2.8.5 release comes with 46 issues fixed. While the 2.8.x and 2.9.x branches are still actively supported, we will now focus on getting 2.10.0 out the door./p + +pThe artifacts are published and ready for you to a shape=rect href=../../../download.html title=Downloaddownload/a either from the Apache mirrors or from the Central Maven repository. For more details please take a look at the a shape=rect href=../../../camel-285-release.html title=Camel 2.8.5 Releaserelease notes/a./p + +pThanks everybody for the continued support.br clear=none +Hadrian/p/div /td td valign=top div class=navigation Modified: websites/production/camel/content/2012/07/04/apache-camel-2100-released.html == --- websites/production/camel/content/2012/07/04/apache-camel-2100-released.html (original) +++ websites/production/camel/content/2012/07/04/apache-camel-2100-released.html Tue Apr 23 06:28:09 2013 @@ -75,7 +75,14 @@ tbody tr td valign=top width=100% -div id=site-quicklinkspa shape=rect href=download.html title=DownloadDownload/a | a shape=rect href=javadoc.html title=JavaDocJavaDoc/a | a shape=rect href=source.html title=SourceSource/a | a shape=rect href=discussion-forums.html title=Discussion ForumsForums/a | a shape=rect href=support.html title=SupportSupport/a/p/div +div class=wiki-content maincontentpThe Camel community announces the immediate availability of a new minor release camel-2.10.0. This release is issued after 6 months of intense effors. During this period the camel community continued to support previous versions and issued 5 patch releases as well./p + +pThe camel-2.10.0 release comes with an impressive 483 issues fixed. Camel is the open source integration framework with the largest support of protocols and data formats on the market. This release adds another 14 components, supporting technologies like mongodb, cdi, hbase, twitter./p + +pThe artifacts are published and ready for you to download a shape=rect href=../../../download.html title=Downloaddownload/a either from the Apache mirrors or from the Central Maven
svn commit: r1470838 - in /camel/trunk/tooling/maven/camel-package-maven-plugin: pom.xml src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java src/main/resources/camel-package-maven-plugin.
Author: jstrachan Date: Tue Apr 23 07:53:38 2013 New Revision: 1470838 URL: http://svn.apache.org/r1470838 Log: added a maven report plugin for endpoint documentation, generated from the @UriEndpoint / @UriParam / @UriParams annotations and javadoc. See CAMEL-6304 Added: camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java (with props) camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/camel-package-maven-plugin.properties (contents, props changed) - copied, changed from r1467765, camel/trunk/tooling/maven/camel-maven-plugin/src/main/resources/camel-maven-plugin.properties Modified: camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml Modified: camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml URL: http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml?rev=1470838r1=1470837r2=1470838view=diff == --- camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml (original) +++ camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml Tue Apr 23 07:53:38 2013 @@ -58,6 +58,14 @@ scopeprovided/scope version2.2.1/version /dependency +dependency + groupIdorg.apache.maven.reporting/groupId + artifactIdmaven-reporting-api/artifactId +/dependency +dependency + groupIdorg.apache.maven.reporting/groupId + artifactIdmaven-reporting-impl/artifactId +/dependency !-- add some logging to the classpath -- Added: camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java URL: http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java?rev=1470838view=auto == --- camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java (added) +++ camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java Tue Apr 23 07:53:38 2013 @@ -0,0 +1,472 @@ +/** + * + * 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.maven.packaging; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FilenameFilter; +import java.util.Locale; +import java.util.ResourceBundle; + +import org.apache.maven.doxia.sink.Sink; +import org.apache.maven.doxia.siterenderer.Renderer; +import org.apache.maven.project.MavenProject; +import org.apache.maven.reporting.AbstractMavenReport; +import org.apache.maven.reporting.MavenReportException; +import org.codehaus.plexus.util.IOUtil; + +/** + * Generates a HTML report for all the Camel endpoints and their configuration parameters + * + * @goal endpoints + * @phase site + */ +public class EndpointMojo extends AbstractMavenReport { + +/** + * Reference to Maven Project. + * + * @parameter property=project + * @required + * @readonly + */ +private MavenProject project; + +/** + * @component + * @required + * @readonly + */ +private Renderer renderer; + +/** + * Base output directory for reports. + * + * @parameter default-value=${project.build.directory}/site + * @required + */ +private File outputDirectory; + + +protected void executeReport(final Locale locale) throws MavenReportException { +try { +File dir = new File(project.getBuild().getOutputDirectory(), org/apache/camel/component); +getLog().info(Looking into directory + dir.getAbsolutePath()); +if (dir.exists() dir.isDirectory()) { +File[] files = dir.listFiles(new FilenameFilter() { +@Override +public boolean accept(File dir, String name) { +return name.toLowerCase().endsWith(.html); +} +}); +if (files != null files.length 0) { +boolean
svn commit: r1470842 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/component/bean/ camel-core/src/main/java/org/apache/camel/component/timer/ components/camel-jms/src/main/java/org/apac
Author: jstrachan Date: Tue Apr 23 08:02:18 2013 New Revision: 1470842 URL: http://svn.apache.org/r1470842 Log: port a bunch of components to use the new UriEndpointComponent base class for Component implementations which makes use of the new @UriEndpoint / @UriParam annotations to provide better metadata in their ComponentConfiguration implementation; see CAMEL-6306 and CAMEL-6304 Added: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java (with props) Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java camel/trunk/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsComponent.java camel/trunk/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlComponent.java camel/trunk/components/camel-ssh/src/main/java/org/apache/camel/component/ssh/SshComponent.java Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java?rev=1470842r1=1470841r2=1470842view=diff == --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java Tue Apr 23 08:02:18 2013 @@ -16,23 +16,23 @@ */ package org.apache.camel.component.bean; -import java.util.Map; - import org.apache.camel.Endpoint; import org.apache.camel.Processor; -import org.apache.camel.impl.DefaultComponent; import org.apache.camel.impl.ProcessorEndpoint; +import org.apache.camel.impl.UriEndpointComponent; import org.apache.camel.util.LRUSoftCache; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.Map; + /** * The a href=http://camel.apache.org/bean.html;Bean Component/a * will look up the URI in the {@link org.apache.camel.spi.Registry} and use that to handle message dispatching. * * @version */ -public class BeanComponent extends DefaultComponent { +public class BeanComponent extends UriEndpointComponent { private static final transient Logger LOG = LoggerFactory.getLogger(BeanComponent.class); // use an internal soft cache for BeanInfo as they are costly to introspect @@ -40,6 +40,7 @@ public class BeanComponent extends Defau private final LRUSoftCacheBeanInfoCacheKey, BeanInfo cache = new LRUSoftCacheBeanInfoCacheKey, BeanInfo(1000); public BeanComponent() { +super(BeanEndpoint.class); } /** Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java?rev=1470842r1=1470841r2=1470842view=diff == --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java Tue Apr 23 08:02:18 2013 @@ -25,6 +25,7 @@ import java.util.Timer; import org.apache.camel.Endpoint; import org.apache.camel.impl.DefaultComponent; +import org.apache.camel.impl.UriEndpointComponent; /** * Represents the component that manages {@link TimerEndpoint}. It holds the @@ -32,9 +33,13 @@ import org.apache.camel.impl.DefaultComp * * @version */ -public class TimerComponent extends DefaultComponent { +public class TimerComponent extends UriEndpointComponent { private final MapString, Timer timers = new HashMapString, Timer(); +public TimerComponent() { +super(TimerEndpoint.class); +} + public Timer getTimer(TimerEndpoint endpoint) { String key = endpoint.getTimerName(); if (!endpoint.isDaemon()) { Modified: camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java?rev=1470842r1=1470841r2=1470842view=diff == --- camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java (original) +++ camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java Tue Apr 23 08:02:18 2013 @@ -25,7 +25,7 @@ import javax.jms.Session; import org.apache.camel.CamelContext; import org.apache.camel.Endpoint; import
[CONF] Apache Camel Endpoint Annotations
Endpoint Annotations Page added by James Strachan Endpoint Annotations As of Camel 2.12 you can annotate Endpoint and Consumer classes so that their configuration documentation can be automatically generated by the maven plugin. The following annotations are supported: Annotation Description @UriEndpoint Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint @UriParam Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used. @UriParams Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annnotated with one or more @UriParam or @UriParams annotations For example here is the TimerEndpoint, notice the use of these annotations and in its base classes. Change Notification Preferences View Online | Add Comment
[CONF] Apache Camel Endpoint Annotations
Endpoint Annotations Page edited by James Strachan Changes (0) h2. Endpoint Annotations As of *Camel 2.12* you can annotate [Endpoint] and Consumer classes so that their configuration documentation can be automatically generated by the maven plugin. The following annotations are supported: ... Full Content Endpoint Annotations As of Camel 2.12 you can annotate Endpoint and Consumer classes so that their configuration documentation can be automatically generated by the maven plugin. The following annotations are supported: Annotation Description @UriEndpoint Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint @UriParam Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used. @UriParams Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annnotated with one or more @UriParam or @UriParams annotations For example here is the TimerEndpoint, notice the use of these annotations and in its base classes. Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel Endpoint Annotations
Endpoint Annotations Page edited by James Strachan Changes (6) h2. Endpoint Annotations As of *Camel 2.12* you can annotate [Endpoint] and Consumer classes so that their configuration documentation can be automatically generated by the maven plugin. camel-package-maven-plugin. The following annotations are supported: The documentation is then included into the jar as org/apache/camel/component/scheme.html as well as appearing in the maven site documentation as a project report. h3. Supported annotations ||Annotation||Description|| |@UriEndpoint|Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint| |@UriParam|Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used.| |@UriParams|Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annnotated with one or more @UriParam or @UriParams annotations| For example here is the [TimerEndpoint|https://github.com/apache/camel/blob/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java#L40], notice the use of these annotations and in its base classes. Not only are the annotations useful for automatically generating the documentation; we can use them to refine the validation of the code during configuration and they can be useful for tool providers so they can more easily introspect the configuration options. See the [ComponentConfiguration] documentation on the tooling aspect. Full Content Endpoint Annotations As of Camel 2.12 you can annotate Endpoint and Consumer classes so that their configuration documentation can be automatically generated by the camel-package-maven-plugin. The documentation is then included into the jar as org/apache/camel/component/scheme.html as well as appearing in the maven site documentation as a project report. Supported annotations Annotation Description @UriEndpoint Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint @UriParam Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used. @UriParams Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annotated with one or more @UriParam or @UriParams annotations For example here is the TimerEndpoint, notice the use of these annotations and in its base classes. Not only are the annotations useful for automatically generating the documentation; we can use them to refine the validation of the code during configuration and they can be useful for tool providers so they can more easily introspect the configuration options. See the ComponentConfiguration documentation on the tooling aspect. Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel ComponentConfiguration
ComponentConfiguration Page added by James Strachan ComponentConfiguration API The new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API check out the test case. For example given a Component object you can create a new configuration; then introspect the available properties... Component component = context.getComponent("seda"); ComponentConfiguration configuration = component.createComponentConfiguration(); // now lets introspect the available parameters... SortedMapString, ParameterConfiguration parameterMap = configuration.getParameterConfigurationMap(); // or lets look up a named parameter ParameterConfiguration config = configuration.getParameterConfiguration("foo"); // lets get or set the parameter values... configuration.setParameter("concurrentConsumers", 5); configuration.setParameter("size", 1000); // or lets set the base URI and parameters from a URI string configuration.setUriString("foo?concurrentConsumers=5size=1000"); // now lets convert the configuration to a URI string String uriString = configuration.getUriString(); // now lets convert the configuration to an Endpoint Endpoint newEndpoint = configuration.createEndpoint(); Change Notification Preferences View Online | Add Comment
[CONF] Apache Camel ComponentConfiguration
ComponentConfiguration Page edited by James Strachan Changes (1) ... {code:java} Component component = camelContext.getComponent(seda); ComponentConfiguration configuration = component.createComponentConfiguration(); ... // lets get or set the parameter values... configuration.setParameter(concurrentConsumers, 5); ... Full Content ComponentConfiguration API The new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API check out the test case. For example given a Component object you can create a new configuration; then introspect the available properties... Component component = camelContext.getComponent("seda"); ComponentConfiguration configuration = component.createComponentConfiguration(); // now lets introspect the available parameters... SortedMapString, ParameterConfiguration parameterMap = configuration.getParameterConfigurationMap(); // or lets look up a named parameter ParameterConfiguration config = configuration.getParameterConfiguration("foo"); // lets get or set the parameter values... configuration.setParameter("concurrentConsumers", 5); configuration.setParameter("size", 1000); // or lets set the base URI and parameters from a URI string configuration.setUriString("foo?concurrentConsumers=5size=1000"); // now lets convert the configuration to a URI string String uriString = configuration.getUriString(); // now lets convert the configuration to an Endpoint Endpoint newEndpoint = configuration.createEndpoint(); Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel ComponentConfiguration
ComponentConfiguration Page edited by James Strachan Changes (1) h2. ComponentConfiguration API The As of *Camel 2.12* there is a new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API [check out the test case|https://github.com/apache/camel/blob/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java#L69]. ... Full Content ComponentConfiguration API As of Camel 2.12 there is a new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API check out the test case. For example given a Component object you can create a new configuration; then introspect the available properties... Component component = camelContext.getComponent("seda"); ComponentConfiguration configuration = component.createComponentConfiguration(); // now lets introspect the available parameters... SortedMapString, ParameterConfiguration parameterMap = configuration.getParameterConfigurationMap(); // or lets look up a named parameter ParameterConfiguration config = configuration.getParameterConfiguration("foo"); // lets get or set the parameter values... configuration.setParameter("concurrentConsumers", 5); configuration.setParameter("size", 1000); // or lets set the base URI and parameters from a URI string configuration.setUriString("foo?concurrentConsumers=5size=1000"); // now lets convert the configuration to a URI string String uriString = configuration.getUriString(); // now lets convert the configuration to an Endpoint Endpoint newEndpoint = configuration.createEndpoint(); Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel ComponentConfiguration
ComponentConfiguration Page edited by James Strachan Changes (1) h2. ComponentConfiguration API As of *Camel 2.12* there is a new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create/edit URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API [check out the test case|https://github.com/apache/camel/blob/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java#L69]. ... Full Content ComponentConfiguration API As of Camel 2.12 the new ComponentConfiguration API provides a mechanism for tools (command line, IDE, web based) to introspect the available Camel components and introspect what configuration parameters are available on the components to create new endpoints, edit existing endpoints or create/edit URIs for endpoints (if the aim is to allow UI editting of Camel routes for example). To get an idea for the kinds of things you can do with the ComponentConfiguration API check out the test case. For example given a Component object you can create a new configuration; then introspect the available properties... Component component = camelContext.getComponent("seda"); ComponentConfiguration configuration = component.createComponentConfiguration(); // now lets introspect the available parameters... SortedMapString, ParameterConfiguration parameterMap = configuration.getParameterConfigurationMap(); // or lets look up a named parameter ParameterConfiguration config = configuration.getParameterConfiguration("foo"); // lets get or set the parameter values... configuration.setParameter("concurrentConsumers", 5); configuration.setParameter("size", 1000); // or lets set the base URI and parameters from a URI string configuration.setUriString("foo?concurrentConsumers=5size=1000"); // now lets convert the configuration to a URI string String uriString = configuration.getUriString(); // now lets convert the configuration to an Endpoint Endpoint newEndpoint = configuration.createEndpoint(); Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel Endpoint Annotations
Endpoint Annotations Page edited by James Strachan Changes (1) h2. Endpoint Annotations As of *Camel 2.12* you can annotate [Endpoint] and Consumer classes so that their configuration documentation can be automatically generated by the camel-package-maven-plugin (rather like maven plugin goals get their parameters documented automatically). The documentation is then included into the jar as org/apache/camel/component/scheme.html as well as appearing in the maven site documentation as a project report. ... Full Content Endpoint Annotations As of Camel 2.12 you can annotate Endpoint and Consumer classes so that their configuration documentation can be automatically generated by the camel-package-maven-plugin (rather like maven plugin goals get their parameters documented automatically). The documentation is then included into the jar as org/apache/camel/component/scheme.html as well as appearing in the maven site documentation as a project report. Supported annotations Annotation Description @UriEndpoint Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint @UriParam Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used. @UriParams Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annotated with one or more @UriParam or @UriParams annotations For example here is the TimerEndpoint, notice the use of these annotations and in its base classes. Not only are the annotations useful for automatically generating the documentation; we can use them to refine the validation of the code during configuration and they can be useful for tool providers so they can more easily introspect the configuration options. See the ComponentConfiguration documentation on the tooling aspect. Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel Writing Components
Writing Components Page edited by James Strachan Changes (1) ... If your endpoint is a polling-centric component you can derive from [DefaultPollingEndpoint|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/DefaultPollingEndpoint.html] and then implement [createPollingConsumer()|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html#createPollingConsumer()]; the [createConsumer()|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html#createConsumer(org.apache.camel.Processor)] method will be created for you which avoids you having to write any polling code. h3. Annotating your Endpoint As of *Camel 2.12* if you want to benefit from the automatic generation of HTML documentation for all the parameters on your endpoint as part of the maven site reports, you need to [annotate your Endpoints parameters|Endpoint Annotations]. So this means you add a @UriEndpoint annotation to your Endpoint class and then annotate each parameter you wish to be configured via the URI configuration mechanism with @UriParam (or @UriParams for nested configuration objects). In addition its recommended that your Component implementation inherit from the UriEndpointComponent base class as that means your Component will automatically generate better metadata for the [ComponentConfiguration] API. Refer to the [Endpoint Annotations guide for details|Endpoint Annotations]. h3. Using a Processor ... Full Content Writing Components Apache Camel is designed to make it very easy to drop in new components whether they be routing components, transformers, transports etc. The idea of a component is to be a factory and manager of Endpoints. Here are the main steps to writing a component. write a POJO which implements the Component interface. The simplest approach is just to derive from DefaultComponent to support auto-discovery of your component add a file to META-INF/services/org/apache/camel/component/FOO where FOO is the URI scheme for your component and any related endpoints created on the fly. The latter file should contain the definition of the component class. For example if your component is implemented by the com.example.CustomComponent class, the service file should contain the following line - class=com.example.CustomComponent . Users can then either explicitly create your component, configure it and register with a CamelContext or users can use a URI which auto-creates your component. Writing Endpoints When implementing an Endpoint you typically may implement one or more of the following methods createProducer() will create a Producer for sending message exchanges to the endpoint createConsumer() implements the Event Driven Consumer pattern for consuming message exchanges from the endpoint via a Processor when creating a Consumer createPollingConsumer() implements the Polling Consumer pattern for consuming message exchanges from the endpoint via a PollingConsumer Typically you just derive from DefaultEndpoint and implement the createProducer() and / or createConsumer() methods. The createPollingConsumer() method will be created by default for you in the DefaultEndpoint class. If your endpoint is a polling-centric component you can derive from DefaultPollingEndpoint and then implement createPollingConsumer(); the createConsumer() method will be created for you which avoids you having to write any polling code. Annotating your Endpoint As of Camel 2.12 if you want to benefit from the automatic generation of HTML documentation for all the parameters on your endpoint as part of the maven site reports, you need to annotate your Endpoint's parameters. So this means you add a @UriEndpoint annotation to your Endpoint class and then annotate each parameter you wish to be configured via the URI configuration mechanism with @UriParam (or @UriParams for nested configuration objects). In addition its recommended that your Component implementation inherit from the UriEndpointComponent base class as that means your Component will automatically generate better metadata for the ComponentConfiguration API. Refer to the Endpoint Annotations guide for details. Using a Processor If you are writing a simple endpoint which just processes messages in some way, you can just implement a Processor and use that to create an endpoint. Dependency injection and auto-discovery When using auto-discovery the CamelContext will default to its Injector implementation to inject any required or optional dependencies on the component. This allows you to use auto-discovery of components via URIs while still getting the benefits of dependency injection. For example your
[CONF] Apache Camel Endpoint Annotations
Endpoint Annotations Page edited by James Strachan Changes (1) ... Not only are the annotations useful for automatically generating the documentation; we can use them to refine the validation of the code during configuration and they can be useful for tool providers so they can more easily introspect the configuration options. See the [ComponentConfiguration] documentation on the tooling aspect. h3. Using the UriEndpointComponent base class If you use the @UriEndpoint annotation on your Endpoint along with one or more @UriParam / @UriParams annotations on your class (or any base classes of your endpoint) its recommended that your Component class inherit from the UriEndpointComponent base class as that means your Component will automatically generate better metadata for the [ComponentConfiguration] API. This will allow your component to work better inside tools which make use of the [ComponentConfiguration] API to generate nice forms and so forth. Full Content Endpoint Annotations As of Camel 2.12 you can annotate Endpoint and Consumer classes so that their configuration documentation can be automatically generated by the camel-package-maven-plugin (rather like maven plugin goals get their parameters documented automatically). The documentation is then included into the jar as org/apache/camel/component/scheme.html as well as appearing in the maven site documentation as a project report. Supported annotations Annotation Description @UriEndpoint Specifies that an endpoint is annotated with @UriParam and/or @UriParams annotations. Also specifies the default scheme to use in the generated documentation and the associated Consumer class for this endpoint @UriParam Used to annotate a parameter value; usually specified via ?foo=bar syntax in the URI strings in Camel. Used currently only on field declarations but in the future could be used on setter methods too. If no name is specified then the name of the field/setter property is used. @UriParams Specifies that a field is a nested object of one or more configuration parameters; then the class of this field should be annotated with one or more @UriParam or @UriParams annotations For example here is the TimerEndpoint, notice the use of these annotations and in its base classes. Not only are the annotations useful for automatically generating the documentation; we can use them to refine the validation of the code during configuration and they can be useful for tool providers so they can more easily introspect the configuration options. See the ComponentConfiguration documentation on the tooling aspect. Using the UriEndpointComponent base class If you use the @UriEndpoint annotation on your Endpoint along with one or more @UriParam / @UriParams annotations on your class (or any base classes of your endpoint) its recommended that your Component class inherit from the UriEndpointComponent base class as that means your Component will automatically generate better metadata for the ComponentConfiguration API. This will allow your component to work better inside tools which make use of the ComponentConfiguration API to generate nice forms and so forth. Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel Camel 2.12.0 Release
Camel 2.12.0 Release Page edited by James Strachan Changes (2) ... Welcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) * highlighted issue fixed * highlighted issue fixed * [Endpoint Annotations] along with automatically created HTML documentation for the endpoint parameters. * [ComponentConfiguration] API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings. h3. Fixed Issues ... Full Content Camel 2.12.0 release (currently in progress) New and Noteworthy Welcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) Endpoint Annotations along with automatically created HTML documentation for the endpoint parameters. ComponentConfiguration API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings. Fixed Issues Fixed setting .id in Java DSL on some EIPs such as the Validate New Enterprise Integration Patterns New Components New DSL New Annotations New Data Formats New Languages New Examples New Tutorials API breaking Known Issues Important changes to consider when upgrading Getting the Distributions Binary Distributions Description Download Link PGP Signature file of download Windows Distribution apache-camel-2.12.0.zip apache-camel-2.12.0.zip.asc Unix/Linux/Cygwin Distribution apache-camel-2.12.0.tar.gz apache-camel-2.12.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.12.0-src.zip apache-camel-2.12.0-src.zip.asc Source for Unix/Linux/Cygwin apache-camel-2.12.0-src.tar.gz apache-camel-2.12.0-src.tar.gz.asc Getting the Binaries using Maven 2 To use this release in your maven project, the proper dependency configuration that you should use in your Maven POM is: dependency groupIdorg.apache.camel/groupId artifactIdcamel-core/artifactId version2.12.0/version /dependency SVN Tag Checkout svn co http://svn.apache.org/repos/asf/camel/tags/camel-2.12.0 Changelog For a more detailed view of new features and bug fixes, see the: release notes for 2.12.0 Change Notification Preferences View Online | View Changes | Add Comment
[CONF] Apache Camel Camel 2.12.0 Release
Camel 2.12.0 Release Page edited by James Strachan Changes (2) ... Welcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) * [Endpoint Annotations] along with automatically created HTML documentation for the endpoint parameters. * [Endpoint Annotations] along with automatically created HTML documentation for the endpoint parameters; this makes it easier for component developers to add a few refactoring-safe annotations to their Endpoint or Consumer implementations and, (along with javadoc comments on the field or setter method), get nice user documentation on how to use the endpoint for free. * [ComponentConfiguration] API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings. ... Full Content Camel 2.12.0 release (currently in progress) New and Noteworthy Welcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) Endpoint Annotations along with automatically created HTML documentation for the endpoint parameters; this makes it easier for component developers to add a few refactoring-safe annotations to their Endpoint or Consumer implementations and, (along with javadoc comments on the field or setter method), get nice user documentation on how to use the endpoint for free. ComponentConfiguration API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings. Fixed Issues Fixed setting .id in Java DSL on some EIPs such as the Validate New Enterprise Integration Patterns New Components New DSL New Annotations New Data Formats New Languages New Examples New Tutorials API breaking Known Issues Important changes to consider when upgrading Getting the Distributions Binary Distributions Description Download Link PGP Signature file of download Windows Distribution apache-camel-2.12.0.zip apache-camel-2.12.0.zip.asc Unix/Linux/Cygwin Distribution apache-camel-2.12.0.tar.gz apache-camel-2.12.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.12.0-src.zip apache-camel-2.12.0-src.zip.asc Source for Unix/Linux/Cygwin apache-camel-2.12.0-src.tar.gz apache-camel-2.12.0-src.tar.gz.asc Getting the Binaries using Maven 2 To use this release in your maven project, the proper dependency configuration that you should use in your Maven POM is: dependency groupIdorg.apache.camel/groupId artifactIdcamel-core/artifactId version2.12.0/version /dependency SVN Tag Checkout svn co http://svn.apache.org/repos/asf/camel/tags/camel-2.12.0 Changelog For a more detailed view of new features and bug fixes, see the: release notes for 2.12.0 Change Notification Preferences View Online | View Changes | Add Comment
svn commit: r859595 - in /websites/production/camel/content: cache/main.pageCache camel-2120-release.html
Author: buildbot Date: Tue Apr 23 11:18:08 2013 New Revision: 859595 Log: Production update by buildbot for camel Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-2120-release.html Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: websites/production/camel/content/camel-2120-release.html == --- websites/production/camel/content/camel-2120-release.html (original) +++ websites/production/camel/content/camel-2120-release.html Tue Apr 23 11:18:08 2013 @@ -84,7 +84,7 @@ pWelcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)/p -ullia shape=rect href=endpoint-annotations.html title=Endpoint AnnotationsEndpoint Annotations/a along with automatically created HTML documentation for the endpoint parameters./lilia shape=rect href=componentconfiguration.html title=ComponentConfigurationComponentConfiguration/a API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings./li/ul +ullia shape=rect href=endpoint-annotations.html title=Endpoint AnnotationsEndpoint Annotations/a along with automatically created HTML documentation for the endpoint parameters; this makes it easier for component developers to add a few refactoring-safe annotations to their Endpoint or Consumer implementations and, (along with javadoc comments on the field or setter method), get nice user documentation on how to use the endpoint for free./lilia shape=rect href=componentconfiguration.html title=ComponentConfigurationComponentConfiguration/a API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings./li/ul h3a shape=rect name=Camel2.12.0Release-FixedIssues/aFixed Issues/h3
svn commit: r1471174 - /camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java
Author: cmueller Date: Tue Apr 23 22:01:41 2013 New Revision: 1471174 URL: http://svn.apache.org/r1471174 Log: use a logger instead of System.out.println() Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java?rev=1471174r1=1471173r2=1471174view=diff == --- camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/impl/ComponentConfigurationTest.java Tue Apr 23 22:01:41 2013 @@ -179,7 +179,7 @@ public class ComponentConfigurationTest configuration.setParameter(doesNotExist, 1000); fail(Should have got InvalidPropertyException thrown!); } catch (InvalidPropertyException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } SedaEndpoint endpoint = TestSupport @@ -198,7 +198,7 @@ public class ComponentConfigurationTest configuration.setEndpointParameter(endpoint, doesNotExist, 1000); fail(Should have got InvalidPropertyException thrown!); } catch (InvalidPropertyException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } } @@ -221,7 +221,7 @@ public class ComponentConfigurationTest assertEquals(foo, xyz, endpoint.getFoo()); assertEquals(bar, 5, endpoint.getBar()); -System.out.println(Created endpoint + endpoint + on URI + endpoint.getEndpointUri()); +LOG.info(Created endpoint + endpoint + on URI + endpoint.getEndpointUri()); // lets try configure a parameter configuration.setEndpointParameter(endpoint, bar, 6); @@ -232,7 +232,7 @@ public class ComponentConfigurationTest configuration.setEndpointParameter(endpoint, doesNotExist, 1000); fail(Should have got InvalidPropertyException thrown!); } catch (InvalidPropertyException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } ComponentConfiguration badConfiguration = component.createComponentConfiguration(); @@ -249,9 +249,8 @@ public class ComponentConfigurationTest badConfiguration.createEndpoint(); fail(Should have got ResolveEndpointFailedException thrown!); } catch (ResolveEndpointFailedException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } - } /** @@ -275,7 +274,7 @@ public class ComponentConfigurationTest assertEquals(concurrentConsumersConfig.getParameterType(), int.class, concurrentConsumersConfig.getParameterType()); -System.out.println(component + has has configuration properties + parameterMap.keySet()); +LOG.info({} has has configuration properties {}, component, parameterMap.keySet()); } /** @@ -333,7 +332,7 @@ public class ComponentConfigurationTest configuration.setEndpointParameter(endpoint, doesNotExist, 1000); fail(Should have got InvalidPropertyException thrown!); } catch (InvalidPropertyException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } } @@ -366,7 +365,7 @@ public class ComponentConfigurationTest configuration.setEndpointParameter(endpoint, doesNotExist, 1000); fail(Should have got InvalidPropertyException thrown!); } catch (InvalidPropertyException e) { -System.out.println(Got expected exception: + e); +LOG.info(Got expected exception: + e); } }
svn commit: r1471180 - /camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java
Author: cmueller Date: Tue Apr 23 22:11:34 2013 New Revision: 1471180 URL: http://svn.apache.org/r1471180 Log: use a logger instead of System.out.println() Modified: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java Modified: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java?rev=1471180r1=1471179r2=1471180view=diff == --- camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java (original) +++ camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java Tue Apr 23 22:11:34 2013 @@ -20,11 +20,12 @@ package org.apache.camel.component.jms; import org.apache.camel.CamelContext; import org.apache.camel.Component; import org.apache.camel.ComponentConfiguration; -import org.apache.camel.Endpoint; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.impl.ParameterConfiguration; import org.apache.camel.test.junit4.CamelTestSupport; import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.jms.ConnectionFactory; @@ -38,6 +39,9 @@ import static org.apache.camel.component * Lets test the use of the ComponentConfiguration on the JMS endpoint */ public class JmsComponentConfigurationTest extends CamelTestSupport { + +private static final Logger LOG = LoggerFactory.getLogger(JmsComponentConfigurationTest.class); + protected String componentName = activemq456; protected boolean verbose = false; @@ -51,7 +55,7 @@ public class JmsComponentConfigurationTe for (Map.EntryString, ParameterConfiguration entry : entries) { String name = entry.getKey(); ParameterConfiguration config = entry.getValue(); -System.out.println(Has name: + name + with type + config.getParameterType().getName()); +LOG.info(Has name: {} with type {}, name, config.getParameterType().getName()); } }
[CONF] Apache Camel Release Guide
Release Guide Page edited by Christian Mueller Changes (1) ... svn ci -m Update the pom version for next patch release {code} # Set up a new continuous integration build, if we release a new major/minor version: https://builds.apache.org/view/A-D/view/Camel/ Full Content How to create and announce a Camel release. This release guide is based on the General guide for releasing Maven-based projects at Apache, so be sure to check it out before continuing and meet all prerequisites. Note: Make sure that you are using JDK 6. Prerequisites To prepare or perform a release you MUST BE at least an Apache Camel committer. The artifacts for each and every release must be SIGNED; your public key should be added to the KEYS file Your public key must also be cross-signed by other Apache committers (this can be done at key signing parties at ApacheCon for instance) Make sure you have the correct maven configuration in ~/.m2/settings.xml Use Maven 2.2.1+ (Maven 2.1.x is known to produce wrong gpg pom signatures - MGPG-14) From Camel 2.10 onwards we will require to use Maven 3.0.2+ From Camel 2.11 onwards we will require to use Maven 3.0.4+ You may want to get familiar with the release settings in the parent apache POM. Make sure you have installed Prince to be able to generate the Camel manual Add your Prince installation bin directory to your PATH variable: PATH=$PATH:/usr/local/bin/prince Maven 2 Setup Before you deploy anything to the maven repository using Maven 2, you should configure your /.m2/settings.xml file so that the file permissions of the deployed artifacts are group writable. If you do not do this, other developers will not able to overwrite your SNAPSHOT releases with newer versions. The settings follow the guidelines used by the Maven project. Please pay particular attention to the password encryption recommendations. settings ... servers !-- Per http://maven.apache.org/developers/committer-settings.html -- !-- To publish a snapshot of some part of Maven -- server idapache.snapshots.https/id username !-- YOUR APACHE LDAP USERNAME -- /username password !-- YOUR APACHE LDAP PASSWORD -- /password /server !-- To publish a website of some part of Maven -- server idapache.website/id username !-- YOUR APACHE LDAP USERNAME -- /username filePermissions664/filePermissions directoryPermissions775/directoryPermissions /server !-- To stage a release of some part of Maven -- server idapache.releases.https/id username !-- YOUR APACHE LDAP USERNAME -- /username password !-- YOUR APACHE LDAP PASSWORD -- /password /server !-- To stage a website of some part of Maven -- server idstagingSite/id !-- must match hard-coded repository identifier in site:stage-deploy -- username !-- YOUR APACHE LDAP USERNAME -- /username filePermissions664/filePermissions directoryPermissions775/directoryPermissions /server /servers ... profiles profile idapache-release/id properties gpg.useagentfalse/gpg.useagent gpg.passphrase!-- YOUR GPG PASSPHRASE --/gpg.passphrase testfalse/test /properties /profile /profiles ... /settings It is also essential that you configure your umask to 2 on people.apache.org for non-interactive login. You can do that by including the snipped below in your .profile. umask 002 Creating the Camel Release The release plugin will prompt for a release version, tag and next release version. Use a three digit release version of the form: 2.x.x and for the tag use a string of the form: camel-2.x.x. The next version string should use the two digit from: 2.x-SNAPSHOT as this can be consistent for future SNAPSHOT releases. Grab the latest source from SVN svn co https://svn.apache.org/repos/asf/camel/trunk camel cd camel Verify headers with rat mvn -e org.apache.rat:apache-rat-plugin:check grep -e ' !?' target/rat.txt -- will show any files without licenses Do a release dry run to check for problems mvn release:prepare -DdryRun=true Check that you are happy with the results. The poms for the proposed tags will be in pom.xml.tag. Check also the generated signature files: cmueller$ gpg camel-core/target/camel-core-2.7.5-SNAPSHOT.jar.asc gpg: Signature made Tue Jan 10 20:50:27 2012 CET using RSA key ID 2A239C2C gpg: Good signature from "Christian Mueller (CODE SIGNING KEY) cmuel...@apache.org" When you like the results, clean up: mvn release:clean Prepare the release mvn release:prepare This will create the tag in svn and leave various stuff around locally to direct the perform phase. Note: If you're located in Europe
svn commit: r859668 - in /websites/production/camel/content: cache/main.pageCache release-guide.html
Author: buildbot Date: Tue Apr 23 23:18:04 2013 New Revision: 859668 Log: Production update by buildbot for camel Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/release-guide.html Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: websites/production/camel/content/release-guide.html == --- websites/production/camel/content/release-guide.html (original) +++ websites/production/camel/content/release-guide.html Tue Apr 23 23:18:04 2013 @@ -306,6 +306,9 @@ find ./ -name pom.xml |xargs perl -pi -e svn ci -m span class=code-quoteUpdate the pom version span class=code-keywordfor/span next patch release/span /pre /div/div/li/ol + + +olliSet up a new continuous integration build, if we release a new major/minor version: a shape=rect class=external-link href=https://builds.apache.org/view/A-D/view/Camel/;https://builds.apache.org/view/A-D/view/Camel//a/li/ol /div /td td valign=top