activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r913078 - in /websites/production/activemq/content: broker-camel-component.html cache/main.pageCache
Date Fri, 20 Jun 2014 10:20:31 GMT
Author: buildbot
Date: Fri Jun 20 10:20:31 2014
New Revision: 913078

Log:
Production update by buildbot for activemq

Modified:
    websites/production/activemq/content/broker-camel-component.html
    websites/production/activemq/content/cache/main.pageCache

Modified: websites/production/activemq/content/broker-camel-component.html
==============================================================================
--- websites/production/activemq/content/broker-camel-component.html (original)
+++ websites/production/activemq/content/broker-camel-component.html Fri Jun 20 10:20:31 2014
@@ -81,21 +81,8 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="BrokerCamelComponent-BrokerCamelComponent">Broker
Camel Component</h2>
-<p><strong>Available as of AcitveMQ 5.9</strong></p>
-
-<p>Embedding Apache Camel inside the ActiveMQ broker provides great flexibility for
extending the message broker with the integration power of Camel. Apache Camel routes also
benefit in that you can avoid the serialization and network costs of connecting to ActiveMQ
remotely - if you use the <a shape="rect" class="external-link" href="http://camel.apache.org/activemq.html">activemq
component</a>.</p>
-
-<p>If however, you want to change the behaviour of messages flowing through the ActiveMQ
message broker itself you will be limited to the shipped set of ActiveMQ Broker<a shape="rect"
class="external-link" href="http://activemq.apache.org/interceptors.html">Interceptors</a>-
or develop your own<a shape="rect" class="external-link" href="http://activemq.apache.org/developing-plugins.html">Broker
plugin</a> and then introduce that as a jar on to the class path for the ActiveMQ broker.</p>
-
-<p>The <strong>broker</strong> camel component makes this even easier -
which intercepts messages as they move through the broker itself, allowing them to be modified
and manipulated before they are persisted to the message store or delivered to end consumers.</p>
-
-<p><a shape="rect" class="external-link" href="http://activemq.apache.org/how-should-i-package-applications-using-camel-and-activemq.html">You
can include a camel.xml file into your ActiveMQ broker config</a> and then if you want
to take all messages sent to a Queue and publish them to a Topic, changing their priority
along the way - you can do something like this:</p>
-
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;route id=&quot;setPriority&quot;&gt;
+<div class="wiki-content maincontent"><h2 id="BrokerCamelComponent-BrokerCamelComponent">Broker
Camel Component</h2><p><strong>Available as of AcitveMQ 5.9</strong></p><p>Embedding
Apache Camel inside the ActiveMQ broker provides great flexibility for extending the message
broker with the integration power of Camel. Apache Camel routes also benefit in that you can
avoid the serialization and network costs of connecting to ActiveMQ remotely - if you use
the <a shape="rect" class="external-link" href="http://camel.apache.org/activemq.html">activemq
component</a>.</p><p>If however, you want to change the behaviour of messages
flowing through the ActiveMQ message broker itself you will be limited to the shipped set
of ActiveMQ Broker<a shape="rect" class="external-link" href="http://activemq.apache.org/interceptors.html">Interceptors</a>-
or develop your own<a shape="rect" class="external-link" href="http://activemq.apache.org/developing-plugins.html">Broker
plugin</a> and then introduc
 e that as a jar on to the class path for the ActiveMQ broker.</p><p>The <strong>broker</strong>
camel component makes this even easier - which intercepts messages as they move through the
broker itself, allowing them to be modified and manipulated before they are persisted to the
message store or delivered to end consumers.</p><p><a shape="rect" class="external-link"
href="http://activemq.apache.org/how-should-i-package-applications-using-camel-and-activemq.html">You
can include a camel.xml file into your ActiveMQ broker config</a> and then if you want
to take all messages sent to a Topic and publish them to a Queue, changing their priority
along the way - you can do something like this:</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;route
id=&quot;setPriority&quot;&gt;
    &lt;from uri=&quot;broker:topic:test.broker.&gt;&quot;/&gt;
       &lt;setHeader headerName=&quot;JMSPriority&quot;&gt;
          &lt;constant&gt;9&lt;/constant&gt;
@@ -103,19 +90,8 @@
    &lt;to uri=&quot;broker:queue:test.broker.component.queue&quot;/&gt;
 &lt;/route&gt;
 ]]></script>
-</div></div>
-
-<p>A few things worth noting:</p>
-
-<ul><li>A broker component only adds an intercept into the broker if its started
- so the broker component will not add any overhead to the running broker until its used -
and then the overhead will be trivial.</li><li>You intercept messages using the
broker component when they have been received by the broker - but before they are processed
(persisted or routed to a destination).</li><li>The in message on the CamelExchange
is a Camel Message, but also a JMS Message (messages routed through ActiveMQ from Stomp/MQTT/AMQP
etc. are always translated into JMS messages).</li><li>You can <a shape="rect"
class="external-link" href="http://activemq.apache.org/wildcards.html">wildcards</a>
on a destination to intercept messages from destinations matching the wildcard.</li><li>After
the intercept, you have to explicitly send the message back to the broker component - this
allows you to either drop select messages (by not sending) - or, like in the above case -
re-route the message to a differ
 ent destination.</li><li>There is one deliberate caveat though, &#160;you
can only send messages to a broker component that have been intercepted - i.e. &#160;routing
a Camel message from another Component (e.g. File) would result in an error.</li></ul>
-
-
-<p>There are some extra classes that have been added to the activemq-broker package
- to enable views of the running broker without using JMX - and to support the use of the
broker component:<br clear="none">
-<a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/org/apache/activemq/broker/view/MessageBrokerView.html">MessageBrokerView</a>
-  which provides methods to retrieve statistics on a the broker, and from the MessageBrokerView
- you can retrieve a <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/org/apache/activemq/broker/view/BrokerDestinationView.html">BrokerDestinationView</a>
for a particular destination. This means you can add flexible routing inside the broker by
doing something &#160;like the following - to route messages when a destination's queue
depth reaches a certain limit:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;camelContext id=&quot;camel&quot; trace=&quot;false&quot; xmlns=&quot;http://camel.apache.org/schema/spring&quot;&gt;
+</div></div><p>A few things worth noting:</p><ul><li>A
broker component only adds an intercept into the broker if its started - so the broker component
will not add any overhead to the running broker until its used - and then the overhead will
be trivial.</li><li>You intercept messages using the broker component when they
have been received by the broker - but before they are processed (persisted or routed to a
destination).</li><li>The in message on the CamelExchange is a Camel Message,
but also a JMS Message (messages routed through ActiveMQ from Stomp/MQTT/AMQP etc. are always
translated into JMS messages).</li><li>You can <a shape="rect" class="external-link"
href="http://activemq.apache.org/wildcards.html">wildcards</a> on a destination to
intercept messages from destinations matching the wildcard.</li><li>After the
intercept, you have to explicitly send the message back to the broker component - this allows
you to either drop select messages (by not sending) - or, like in the 
 above case - re-route the message to a different destination.</li><li>There is
one deliberate caveat though, &#160;you can only send messages to a broker component that
have been intercepted - i.e. &#160;routing a Camel message from another Component (e.g.
File) would result in an error.</li></ul><p>There are some extra classes
that have been added to the activemq-broker package - to enable views of the running broker
without using JMX - and to support the use of the broker component:<br clear="none">
<a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/org/apache/activemq/broker/view/MessageBrokerView.html">MessageBrokerView</a>
- which provides methods to retrieve statistics on a the broker, and from the MessageBrokerView
- you can retrieve a <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/org/apache/activemq/broker/view/BrokerDestinationView.html">BrokerDestinationView</a>
for a particular destinatio
 n. This means you can add flexible routing inside the broker by doing something &#160;like
the following - to route messages when a destination's queue depth reaches a certain limit:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;camelContext
id=&quot;camel&quot; trace=&quot;false&quot; xmlns=&quot;http://camel.apache.org/schema/spring&quot;&gt;
     &lt;route id=&quot;routeAboveQueueLimitTest&quot;&gt;
         &lt;from uri=&quot;broker:queue:test.broker.queue&quot;/&gt;
         &lt;choice&gt;
@@ -137,8 +113,7 @@
         &lt;constructor-arg value=&quot;test.broker.component.route&quot;/&gt;
     &lt;/bean&gt;
 ]]></script>
-</div></div>
-<p>This is using the Camel Message Router pattern - note the use of Spring expression
language <em>spel</em> in the <strong>when</strong> clause.</p></div>
+</div></div><p>This is using the Camel Message Router pattern - note the
use of Spring expression language <em>spel</em> in the <strong>when</strong>
clause.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.



Mime
View raw message