You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ra...@apache.org on 2017/01/04 10:30:07 UTC
svn commit: r1777276 [8/12] - in /synapse/site: css/ fonts/ images/
images/profiles/ img/ js/ userguide/ userguide/samples/ userguide/transports/
Added: synapse/site/userguide/samples/sample857.html
URL: http://svn.apache.org/viewvc/synapse/site/userguide/samples/sample857.html?rev=1777276&view=auto
==============================================================================
--- synapse/site/userguide/samples/sample857.html (added)
+++ synapse/site/userguide/samples/sample857.html Wed Jan 4 10:30:06 2017
@@ -0,0 +1,405 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2017-01-04
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+ <head>
+ <meta charset="UTF-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <meta name="Date-Revision-yyyymmdd" content="20170104" />
+ <meta http-equiv="Content-Language" content="en" />
+ <title>Apache Synapse -
+ Apache Synapse - Sample 857</title>
+ <link rel="stylesheet" href="../../css/apache-maven-fluido-1.4.min.css" />
+ <link rel="stylesheet" href="../../css/site.css" />
+ <link rel="stylesheet" href="../../css/print.css" media="print" />
+
+
+ <script type="text/javascript" src="../../js/apache-maven-fluido-1.4.min.js"></script>
+
+
+ </head>
+ <body class="topBarDisabled">
+
+
+
+ <div class="container-fluid">
+ <div id="banner">
+ <div class="pull-left">
+ <div id="bannerLeft">
+ <h2>Apache Synapse</h2>
+ </div>
+ </div>
+ <div class="pull-right"> </div>
+ <div class="clear"><hr/></div>
+ </div>
+
+ <div id="breadcrumbs">
+ <ul class="breadcrumb">
+
+
+ <li id="publishDate">Last Published: 2017-01-04
+ <span class="divider">|</span>
+ </li>
+ <li id="projectVersion">Version: 3.0.0
+ </li>
+
+
+
+
+ </ul>
+ </div>
+
+
+ <div class="row-fluid">
+ <div id="leftColumn" class="span2">
+ <div class="well sidebar-nav">
+
+
+ <ul class="nav nav-list">
+ <li class="nav-header">Main Menu</li>
+
+ <li>
+
+ <a href="../../index.html" title="Home">
+ <span class="none"></span>
+ Home</a>
+ </li>
+
+ <li>
+
+ <a href="../../download.html" title="Download">
+ <span class="none"></span>
+ Download</a>
+ </li>
+
+ <li>
+
+ <a href="../../history.html" title="History">
+ <span class="none"></span>
+ History</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="License">
+ <span class="none"></span>
+ License</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">
+ <span class="none"></span>
+ Thanks</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship">
+ <span class="none"></span>
+ Sponsorship</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/security/" class="externalLink" title="Security">
+ <span class="none"></span>
+ Security</a>
+ </li>
+ <li class="nav-header">Documentation</li>
+
+ <li>
+
+ <a href="../../userguide/installation.html" title="Installation Guide">
+ <span class="none"></span>
+ Installation Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/quick_start.html" title="Quick Start Guide">
+ <span class="none"></span>
+ Quick Start Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/samples/setup/index.html" title="Samples Setup Guide">
+ <span class="none"></span>
+ Samples Setup Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/samples.html" title="Samples Catalog">
+ <span class="none"></span>
+ Samples Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/config.html" title="Configuration Language">
+ <span class="none"></span>
+ Configuration Language</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/mediators.html" title="Mediators Catalog">
+ <span class="none"></span>
+ Mediators Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/transports.html" title="Transports Catalog">
+ <span class="none"></span>
+ Transports Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/properties.html" title="Properties Catalog">
+ <span class="none"></span>
+ Properties Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/xpath.html" title="XPath functions and Variables">
+ <span class="none"></span>
+ XPath functions and Variables</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/extending.html" title="Extending Synapse">
+ <span class="none"></span>
+ Extending Synapse</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/template_library.html" title="Synapse Template Libraries">
+ <span class="none"></span>
+ Synapse Template Libraries</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/upgrading.html" title="Upgrading">
+ <span class="none"></span>
+ Upgrading</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/deployment.html" title="Deployment">
+ <span class="none"></span>
+ Deployment</a>
+ </li>
+
+ <li>
+
+ <a href="../../apidocs/" title="Javadocs">
+ <span class="none"></span>
+ Javadocs</a>
+ </li>
+
+ <li>
+
+ <a href="../../userguide/faq.html" title="FAQ">
+ <span class="none"></span>
+ FAQ</a>
+ </li>
+ <li class="nav-header">Developer Resources</li>
+
+ <li>
+
+ <a href="../../dev/developer-guide.html" title="Developer Guide">
+ <span class="none"></span>
+ Developer Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../../dev/best-practices.html" title="Development Best Practices">
+ <span class="none"></span>
+ Development Best Practices</a>
+ </li>
+
+ <li>
+
+ <a href="../../dev/release-process.html" title="Release Process">
+ <span class="none"></span>
+ Release Process</a>
+ </li>
+ <li class="nav-header">Project Details</li>
+
+ <li>
+
+ <a href="../../project-info.html" title="Overview">
+ <span class="none"></span>
+ Overview</a>
+ </li>
+
+ <li>
+
+ <a href="../../mail-lists.html" title="Mailing Lists">
+ <span class="none"></span>
+ Mailing Lists</a>
+ </li>
+
+ <li>
+
+ <a href="../../source-repository.html" title="Source Repository">
+ <span class="none"></span>
+ Source Repository</a>
+ </li>
+
+ <li>
+
+ <a href="../../issue-tracking.html" title="Issue Tracking">
+ <span class="none"></span>
+ Issue Tracking</a>
+ </li>
+
+ <li>
+
+ <a href="../../dependency-management.html" title="Dependencies">
+ <span class="none"></span>
+ Dependencies</a>
+ </li>
+
+ <li>
+
+ <a href="../../team-list.html" title="Project Team">
+ <span class="none"></span>
+ Project Team</a>
+ </li>
+ </ul>
+
+
+
+ <hr />
+
+ <div id="poweredBy">
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+ <img class="builtBy" alt="Built by Maven" src="../../images/logos/maven-feather.png" />
+ </a>
+ </div>
+ </div>
+ </div>
+
+
+ <div id="bodyColumn" class="span10" >
+
+ <!-- ~ 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. -->
+
+ <div class="section">
+<h2>Sample 857: Introduction to Synapse Recipient List eip function template<a name="Sample_857:_Introduction_to_Synapse_Recipient_List_eip_function_template"></a></h2>
+
+<div class="xmlConf"><!-- Introduction to Synapse Recipient List eip function template -->
+<definitions xmlns="http://ws.apache.org/ns/synapse">
+<import xmlns="http://ws.apache.org/ns/synapse" name="EipLibrary" package="synapse.lang.eip" />
+ <sequence name="main">
+ <property name="OUT_ONLY" value="true"/>
+ <property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
+ <call-template target="synapse.lang.eip.recipient_list">
+ <with-param name="recipient_list" value="http://localhost:9000/services/SimpleStockQuoteService,http://localhost:9001/services/SimpleStockQuoteService"/>
+ </call-template>
+ <drop/>
+</sequence>
+</definitions></div>
+
+<div class="section">
+<h3>Objective<a name="Objective"></a></h3>
+
+<p>
+This sample is an introduction to Synapse Recipient List eip function template.
+ </p>
+ </div>
+
+<div class="section">
+<h3>Pre-requisites<a name="Pre-requisites"></a></h3>
+
+<p>
+ </p>
+<ul>
+
+<li>
+ Start two instances of sample Axis2 server on HTTP ports 9000,9001. And deploy the SimpleStockQuoteService in all of them.
+ </li>
+
+<li>
+ Start Synapse using the configuration numbered 857 (repository/conf/sample/synapse_sample_857.xml)
+
+<div class="command">
+ Unix/Linux: sh synapse.sh -sample 857<br />
+ Windows: synapse.bat -sample 857
+ </div>
+ </li>
+ </ul>
+
+ </div>
+
+<div class="section">
+<h3>Executing the Client<a name="Executing_the_Client"></a></h3>
+
+<p>
+In this sample, the messages sent to Synapse will be route to the endpoints defined under recipient_list parameter.
+</p>
+
+<p>
+ Invoke the client as follows.
+ </p>
+
+<div class="command">ant stockquote -Dtrpurl=http://localhost:8280/</div>
+ </div>
+ </div>
+
+<p><a href="../samples.html">Back to Catalog</a></p>
+
+
+ </div>
+ </div>
+ </div>
+
+ <hr/>
+
+ <footer>
+ <div class="container-fluid">
+ <div class="row-fluid">
+ <p >Copyright © 2005–2017
+ <a href="http://www.apache.org/">Apache Software Foundation</a>.
+ All rights reserved.
+
+ </p>
+ </div>
+
+
+ </div>
+ </footer>
+ </body>
+</html>
Added: synapse/site/userguide/template_library.html
URL: http://svn.apache.org/viewvc/synapse/site/userguide/template_library.html?rev=1777276&view=auto
==============================================================================
--- synapse/site/userguide/template_library.html (added)
+++ synapse/site/userguide/template_library.html Wed Jan 4 10:30:06 2017
@@ -0,0 +1,829 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2017-01-04
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+ <head>
+ <meta charset="UTF-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <meta name="Date-Revision-yyyymmdd" content="20170104" />
+ <meta http-equiv="Content-Language" content="en" />
+ <title>Apache Synapse -
+ Apache Synapse - Synapse Template Libraries</title>
+ <link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
+ <link rel="stylesheet" href="../css/site.css" />
+ <link rel="stylesheet" href="../css/print.css" media="print" />
+
+
+ <script type="text/javascript" src="../js/apache-maven-fluido-1.4.min.js"></script>
+
+
+ </head>
+ <body class="topBarDisabled">
+
+
+
+ <div class="container-fluid">
+ <div id="banner">
+ <div class="pull-left">
+ <div id="bannerLeft">
+ <h2>Apache Synapse</h2>
+ </div>
+ </div>
+ <div class="pull-right"> </div>
+ <div class="clear"><hr/></div>
+ </div>
+
+ <div id="breadcrumbs">
+ <ul class="breadcrumb">
+
+
+ <li id="publishDate">Last Published: 2017-01-04
+ <span class="divider">|</span>
+ </li>
+ <li id="projectVersion">Version: 3.0.0
+ </li>
+
+
+
+
+ </ul>
+ </div>
+
+
+ <div class="row-fluid">
+ <div id="leftColumn" class="span2">
+ <div class="well sidebar-nav">
+
+
+ <ul class="nav nav-list">
+ <li class="nav-header">Main Menu</li>
+
+ <li>
+
+ <a href="../index.html" title="Home">
+ <span class="none"></span>
+ Home</a>
+ </li>
+
+ <li>
+
+ <a href="../download.html" title="Download">
+ <span class="none"></span>
+ Download</a>
+ </li>
+
+ <li>
+
+ <a href="../history.html" title="History">
+ <span class="none"></span>
+ History</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="License">
+ <span class="none"></span>
+ License</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">
+ <span class="none"></span>
+ Thanks</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship">
+ <span class="none"></span>
+ Sponsorship</a>
+ </li>
+
+ <li>
+
+ <a href="http://www.apache.org/security/" class="externalLink" title="Security">
+ <span class="none"></span>
+ Security</a>
+ </li>
+ <li class="nav-header">Documentation</li>
+
+ <li>
+
+ <a href="../userguide/installation.html" title="Installation Guide">
+ <span class="none"></span>
+ Installation Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/quick_start.html" title="Quick Start Guide">
+ <span class="none"></span>
+ Quick Start Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/samples/setup/index.html" title="Samples Setup Guide">
+ <span class="none"></span>
+ Samples Setup Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/samples.html" title="Samples Catalog">
+ <span class="none"></span>
+ Samples Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/config.html" title="Configuration Language">
+ <span class="none"></span>
+ Configuration Language</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/mediators.html" title="Mediators Catalog">
+ <span class="none"></span>
+ Mediators Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/transports.html" title="Transports Catalog">
+ <span class="none"></span>
+ Transports Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/properties.html" title="Properties Catalog">
+ <span class="none"></span>
+ Properties Catalog</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/xpath.html" title="XPath functions and Variables">
+ <span class="none"></span>
+ XPath functions and Variables</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/extending.html" title="Extending Synapse">
+ <span class="none"></span>
+ Extending Synapse</a>
+ </li>
+
+ <li class="active">
+
+ <a href="#"><span class="none"></span>Synapse Template Libraries</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/upgrading.html" title="Upgrading">
+ <span class="none"></span>
+ Upgrading</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/deployment.html" title="Deployment">
+ <span class="none"></span>
+ Deployment</a>
+ </li>
+
+ <li>
+
+ <a href="../apidocs/" title="Javadocs">
+ <span class="none"></span>
+ Javadocs</a>
+ </li>
+
+ <li>
+
+ <a href="../userguide/faq.html" title="FAQ">
+ <span class="none"></span>
+ FAQ</a>
+ </li>
+ <li class="nav-header">Developer Resources</li>
+
+ <li>
+
+ <a href="../dev/developer-guide.html" title="Developer Guide">
+ <span class="none"></span>
+ Developer Guide</a>
+ </li>
+
+ <li>
+
+ <a href="../dev/best-practices.html" title="Development Best Practices">
+ <span class="none"></span>
+ Development Best Practices</a>
+ </li>
+
+ <li>
+
+ <a href="../dev/release-process.html" title="Release Process">
+ <span class="none"></span>
+ Release Process</a>
+ </li>
+ <li class="nav-header">Project Details</li>
+
+ <li>
+
+ <a href="../project-info.html" title="Overview">
+ <span class="none"></span>
+ Overview</a>
+ </li>
+
+ <li>
+
+ <a href="../mail-lists.html" title="Mailing Lists">
+ <span class="none"></span>
+ Mailing Lists</a>
+ </li>
+
+ <li>
+
+ <a href="../source-repository.html" title="Source Repository">
+ <span class="none"></span>
+ Source Repository</a>
+ </li>
+
+ <li>
+
+ <a href="../issue-tracking.html" title="Issue Tracking">
+ <span class="none"></span>
+ Issue Tracking</a>
+ </li>
+
+ <li>
+
+ <a href="../dependency-management.html" title="Dependencies">
+ <span class="none"></span>
+ Dependencies</a>
+ </li>
+
+ <li>
+
+ <a href="../team-list.html" title="Project Team">
+ <span class="none"></span>
+ Project Team</a>
+ </li>
+ </ul>
+
+
+
+ <hr />
+
+ <div id="poweredBy">
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <div class="clear"></div>
+ <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+ <img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" />
+ </a>
+ </div>
+ </div>
+ </div>
+
+
+ <div id="bodyColumn" class="span10" >
+
+ <!-- ~ 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. -->
+
+ <div class="section">
+<h2>Synapse Template Libraries<a name="Synapse_Template_Libraries"></a></h2>
+
+<p>
+ Synapse template libraries are a mechanism to group synapse templates and automatically
+ expose it as a self contained set of function modules. It can be considered as a container
+ consisting a set of templates grouped in a particular order. Currently a synapse template
+ library is shipped as a ".zip" file and should be deployed inside
+ {$SYNAPSE_HOME}/repository/conf/synapse-libs .
+ If a given template container is successfully deployed, all
+ templates within the library will be accessible to any Synapse user.
+ </p>
+
+<p>Following is a sample skeleton structure of a template library</p>
+
+<div class="xmlConf">|-- artifacts.xml
+|-- com
+| `-- synapse
+| `-- sample
+| `-- SynapseLibTestMediator.class
+|-- lib
+| `-- test-mediator-1.0.0.jar
+|-- template_dir-1
+| |-- artifact.xml
+| |-- templ1_ns1.xml
+| `-- templ2_ns1.xml
+`-- template_dir-2
+ |-- artifact.xml
+ |-- templ1_ns2.xml
+ `-- templ2_ns2.xml</div>
+
+<p>Following are these components at an overview.</p>
+
+<p>
+ </p>
+<ul>
+
+<li>artifacts.xml
+ <br />
+ This contains synapse library name , package name information and template groupings.
+
+<div class="xmlConf"><artifacts>
+ <artifact name="synapse.lib.name" package="synapse.lib.package.name">
+ <dependency artifact="template.group.name"/>*
+ <description>sample synapse library</description>?
+ </artifact>
+</artifacts></div></li>
+
+<li>artifact.xml
+ <br />
+ This contains information about each individual template group.
+ <br />
+ ie: - names of the templates in the group , corresponding configuration file ,etc.
+
+<div class="xmlConf"><artifact name="template.group.name" type="synapse/template">
+ <subArtifacts>
+ <artifact name="template.name">
+ <file>template_file.xml</file>
+ <description>a sample synapse library function</description>?
+ </artifact>*
+ </subArtifacts>
+</artifact></div>
+ </li>
+
+<li>template_file.xml
+ <br />
+ This contains the implementation of each individual template configuration
+ </li>
+
+<li>./lib
+ <br />
+ This is the directory to add any classes for class loading or can contain the .class files from
+ the root
+ level.
+ </li>
+ </ul>
+
+
+<p>Also utilizing a synapse library is a three step process.</p>
+
+<p>
+ </p>
+<ul>
+
+<li>Create and deploy the library</li>
+
+<li>Importing the library into synapse
+ Users should deploy a import_lib_name.xml into
+ {$SYNAPSE_HOME}/repository/conf/synapse-config/imports
+
+<div class="xmlConf"><import xmlns="http://ws.apache.org/ns/synapse" name="SampleLibrary" package="synapse.lib"/></div>
+ </li>
+
+<li>Execute functions of library using a template invoker. Target template is a
+ combination of the package of synapse library and the target template name
+ target == {synapse_lib_package}.{template name}
+
+
+<div class="xmlConf"><call-template target="synapse.lib.pkg.name.template_name">
+ <with-param name="..." value="..."/>*
+</call-template></div>
+ </li>
+ </ul>
+
+ </div>
+
+<div class="section">
+<h2>Synapse Enterprise Integration Patterns library<a name="Synapse_Enterprise_Integration_Patterns_library"></a></h2>
+
+<p>Synapse Enterprise Integration Patterns library is a container consisting a set of
+ templates grouped in a particular order by implementing commonly used
+ <a class="externalLink" href="http://www.eaipatterns.com">Enterprise
+ Integration Patterns
+ </a>
+ from the set of patterns introduced by Gregor Hohpe and Bobby Woolf.
+ Users can design their solutions using these well-known patterns and then simply configure
+ and use these same patterns in Apache Synapse by calling up the function as required.
+ So this will greatly reduce the effort required when building integrations.
+ </p>
+
+<p>Following lists all the built-in patterns of Synapse EIP library currently supports and
+ describes their usage, functionality and configuration syntax.
+ This excludes all generic EIP patterns supported by synapse out of the box.
+ </p>
+
+<p>
+ </p>
+<ul>
+
+<li>
+ <a href="#CalloutBlock">Callout Block</a>
+ </li>
+
+<li>
+ <a href="#Splitter">Splitter</a>
+ </li>
+
+<li>
+ <a href="#Aggregator">Aggregator</a>
+ </li>
+
+<li>
+ <a href="#SplitterAggregator">Splitter-Aggregator</a>
+ </li>
+
+<li>
+ <a href="#ScatterGather">Scatter-Gather</a>
+ </li>
+
+<li>
+ <a href="#WireTap">Wire Tap</a>
+ </li>
+
+<li>
+ <a href="#ContentBasedRouter">Content-Based Router</a>
+ </li>
+
+<li>
+ <a href="#DynamicRouter">Dynamic Router</a>
+ </li>
+
+<li>
+ <a href="#RecipientList">Recipient List</a>
+ </li>
+ </ul>
+
+ <a name="CalloutBlock"></a>
+<div class="section" id="CalloutBlock">
+<h3>Callout Block<a name="Callout_Block"></a></h3>
+
+<p>
+ This pattern is pretty much identical to the
+ <a class="externalLink" href="http://www.eaipatterns.com/RoutingTable.html">Routing slip pattern</a>
+ and this blocks
+ external service invocation during mediation. And useful in scenarios such as service chaining.
+ As default values are assigned to source and target xpaths,
+ one can simply utilize this pattern by just defining serviceURL.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.callout_block</b>
+ <br />
+ Parameters
+ <br />
+ <b>service_URL</b>
+ - URL of the service
+ <br />
+ <b>[action]</b>
+ - SOAP action(Optional)
+ <br />
+ <b>[source_xpath | source_key]</b>
+ - Payload of the message( either Xpath or key and Optional)
+ <br />
+ <b>[target_xpath | target_key]</b>
+ - A node to attach the response element ( either Xpath or key and optional)
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample850.html">Sample 850</a>
+ </p>
+ </div>
+ <a name="Splitter"></a>
+<div class="section" id="Splitter">
+<h3>Splitter<a name="Splitter"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/Sequencer.html">Splitter pattern</a>
+ breaks out the composite message into a series of individual messages by
+ finding matching elements for the XPath expression specified and then redirected to the given
+ endpoint.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.splitter</b>
+ <br />
+ Parameters
+ <br />
+ <b>iterate_exp</b>
+ - Xpath expression from which element you want to split the message.
+ <br />
+ <b>[attach_path]</b>
+ - Xpath expression to specify which elements needs to be attached to form new messages.( Optional)
+ <br />
+ <b>endpoint_url</b>
+ - Endpoint which newly created messages are redirected to.
+ <br />
+ <b>[attach_path_enabled]</b>
+ - Boolean value to enable attach path. Optional and by default this is false.
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample851.html">Sample 851</a>
+ </p>
+ </div>
+
+ <a name="Aggregator"></a>
+<div class="section" id="Aggregator">
+<h3>Aggregator<a name="Aggregator"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/Aggregator.html">Aggregator pattern</a>
+ builds a single message distilled from the individual messages.
+ And messages will be merged by using the XPath expression specified for aggregator_exp.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.aggregator</b>
+ <br />
+ Parameters
+ <br />
+ <b>aggregator_exp</b>
+ - An XPath expression specifying based on which elements to aggregate.
+ <br />
+ <b>[sequence_ref]</b>
+ - target sequence which message should be mediated after aggregation. (Optional and if this is not
+ specified aggregator will send the aggregated message to the client).
+ <br />
+ <b>[oncomplete_seq_enabled]</b>
+ - Boolean value to enable target sequence. (Optional and by default this is false)
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample851.html">Sample 851</a>
+ </p>
+ </div>
+
+ <a name="SplitterAggregator"></a>
+<div class="section" id="SplitterAggregator">
+<h3>Splitter-Aggregator<a name="Splitter-Aggregator"></a></h3>
+
+<p>
+ This pattern provides the combined functionality of Splitter and Aggregator patterns.
+ Which is when you specified following parameters this pattern will split the message and
+ does a synchronized call for the given endpoint and aggregates replies then send back to
+ client or mediates to the defined target sequence.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.splitter_aggregator</b>
+ <br />
+ Parameters
+ <br />
+ <b>iterate_exp</b>
+ - An Xpath expression from which element you want to split the message.
+ <br />
+ <b>[attach_path]</b>
+ - An Xpath expression to specify which elements needs to be attached to form new messages.(
+ Optional)
+ <br />
+ <b>endpoint_url</b>
+ - Endpoint which newly created messages are redirected to.
+ <br />
+ <b>[attach_path_enabled]</b>
+ - Boolean value to enable attach path. Optional and by default this is false.
+ <br />
+ <b>aggregator_exp</b>
+ - An XPath expression specifying based on which elements to aggregate.
+ <br />
+ <b>[sequence_ref]</b>
+ - Target sequence which message should be mediated after aggregation. (Optional and if this is not
+ specified aggregator will send the aggregated message to the client).
+ <br />
+ <b>[oncomplete_seq_enabled]</b>
+ - Boolean value to enable target sequence. (Optional and by default this is false)
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample852.html">Sample 852</a>
+ </p>
+ </div>
+
+ <a name="ScatterGather"></a>
+<div class="section" id="ScatterGather">
+<h3>Scatter-Gather<a name="Scatter-Gather"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/BroadcastAggregate.html">Scatter-Gather pattern</a>
+ broadcasts a message to multiple recipients and re-aggregates the
+ responses back into a single message and send back to client or mediates to the defined
+ target sequence.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.scatter_gather</b>
+ <br />
+ Parameters
+ <br />
+ <b>aggregator_exp</b>
+ - An XPath expression specifying based on which elements to aggregate.
+ <br />
+ <b>[sequence_ref]</b>
+ - Target sequence which message should be mediated after aggregation. (Optional and if this is not
+ specified aggregator will send the aggregated message to the client).
+ <br />
+ <b>[oncomplete_seq_enabled]</b>
+ - Boolean value to enable target sequence. (Optional and by default this is false)
+ <br />
+ <b>recipient_list</b>
+ - Set of recipient endpoints , which should be specified as comma separated values
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample853.html">Sample 853</a>
+ </p>
+ </div>
+
+ <a name="WireTap"></a>
+<div class="section" id="WireTap">
+<h3>Wire Tap<a name="Wire_Tap"></a></h3>
+
+<p>
+ <a class="externalLink" href="http://www.eaipatterns.com/WireTap.html">Wire Tap pattern</a>
+ enables route messages to a secondary channel while they are being forwarded to the main channel.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.wire_tap</b>
+ <br />
+ Parameters
+ <br />
+ <b>destination_uri</b>
+ - Endpoint of main channel
+ <br />
+ <b>wiretap_uri</b>
+ - Endpoint of secondary channel
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample854.html">Sample 854</a>
+ </p>
+ </div>
+
+ <a name="ContentBasedRouter"></a>
+<div class="section" id="ContentBasedRouter">
+<h3>Content-Based Router<a name="Content-Based_Router"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/ContentBasedRouter.html">Content Based Router pattern</a>
+ route messages to the appropriate sequence, according to the message contents.
+ Routing decision is taken by matching given Xpath expression and Regular Expression.
+ User can define multiple matching elements as regular expressions and a target sequence where
+ if any of matching element evaluates to true then it mediates using the target sequence.
+ If none of the case statements are matching and default case is specified, it will be executed.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.content_base_router</b>
+ <br />
+ Parameters
+ <br />
+ <b>routing_exp</b>
+ - Here you can specify the source xpath to be evaluated
+ <br />
+ <b>match_content</b>
+ - This is a String which contains the matching conditions. Following is the syntax of it
+ <b>"IBM:cnd1_seq,MSFT:cnd2_seq;cnd3_seq"</b>
+ <br />
+ User can define multiple matching conditions using "," splitter. regular expressions and
+ target sequence should be separated by inserting":". And finally default sequence needs to be
+ defined
+ after inserting ";". If there is no any target sequence
+ defined for a particular regular expression , default it will be mediated to the main sequence.
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample855.html">Sample 855</a>
+ </p>
+ </div>
+
+ <a name="DynamicRouter"></a>
+<div class="section" id="DynamicRouter">
+<h3>Dynamic Router<a name="Dynamic_Router"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/DynamicRouter.html">Dynamic Router pattern</a>
+ route a message consecutively through a series of condition steps,
+ which is parsed by the “conditions” parameter. The list of sequences through which the message
+ should pass is decided dynamically at run time.
+ It checks whether the route condition evaluates to true and mediates using the given sequence and
+ user can define
+ routing decision based on the message contents such as HTTP url,HTTP headers or combination of both.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.dynamic_router</b>
+ <br />
+ Parameters
+ <br />
+ <b>conditions</b>
+ - This is a String which contains the routing rules. Following is the syntax of it.
+ <br />
+ <b>
+ "header=foo:bar.*{AND}url=/services/;seq=seq1,header=header1:bar.*{OR}header=header1:foo.*;seq=seq2,header=header2:foo.*;seq=seq3"
+ </b>
+ <br />
+ User can define multiple routing rules by using "," splitter. Routing rule contains following
+ format,
+ <br />
+ To match HTTP headers , use
+ <b>header=regEx:seqRef</b>
+ <br />
+ header source and regular expression should be separated by inserting ":"
+ <br />
+ To match HTTP url, use
+ <b>url=/url</b>
+ <br />
+ Then target sequence needs to be defined after inserting ";"
+ <br />
+
+ Also you can use<b>"{AND}"</b>as to specify logical AND ,
+ <b>"{OR}"</b>
+ as to specify logical OR to match
+ multiple headers and url in your expression.
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample856.html">Sample 856</a>
+ </p>
+ </div>
+
+ <a name="RecipientList"></a>
+<div class="section" id="RecipientList">
+<h3>Recipient List<a name="Recipient_List"></a></h3>
+
+<p>
+ The
+ <a class="externalLink" href="http://www.eaipatterns.com/RecipientList.html">Recipient List pattern</a>
+ forward the message to all channels associated with the defined set of recipients.
+ <br />
+ <br />
+
+ Call template target -
+ <b>synapse.lang.eip.recipient_list</b>
+ <br />
+ Parameters
+ <br />
+ <b>recipient_list</b>
+ - set of recipient endpoints , which should be specified as comma separated values
+ <br />
+ <br />
+ Related Sample - <a href="samples/sample857.html">Sample 857</a>
+ </p>
+ </div>
+ </div>
+
+
+ </div>
+ </div>
+ </div>
+
+ <hr/>
+
+ <footer>
+ <div class="container-fluid">
+ <div class="row-fluid">
+ <p >Copyright © 2005–2017
+ <a href="http://www.apache.org/">Apache Software Foundation</a>.
+ All rights reserved.
+
+ </p>
+ </div>
+
+
+ </div>
+ </footer>
+ </body>
+</html>