svn commit: r859560 - /websites/production/camel/content/cache/main.pageCache

2013-04-23 Thread cmueller
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

2013-04-23 Thread buildbot
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.

2013-04-23 Thread jstrachan
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

2013-04-23 Thread jstrachan
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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread confluence







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

2013-04-23 Thread buildbot
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

2013-04-23 Thread cmueller
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

2013-04-23 Thread cmueller
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

2013-04-23 Thread confluence







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

2013-04-23 Thread buildbot
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