Author: hiranya
Date: Thu Dec 22 14:22:19 2011
New Revision: 1222249

URL: http://svn.apache.org/viewvc?rev=1222249&view=rev
Log:
Documentation update

Added:
    synapse/trunk/scratch/hiranya/website/src/site/xdoc/download.xml
    synapse/trunk/scratch/hiranya/website/src/site/xdoc/history.xml
      - copied unchanged from r1222213, 
synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/history.xml
Removed:
    synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/history.xml
Modified:
    synapse/trunk/scratch/hiranya/website/src/site/site.xml
    synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/config.xml
    synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/mediators.xml

Modified: synapse/trunk/scratch/hiranya/website/src/site/site.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/scratch/hiranya/website/src/site/site.xml?rev=1222249&r1=1222248&r2=1222249&view=diff
==============================================================================
--- synapse/trunk/scratch/hiranya/website/src/site/site.xml (original)
+++ synapse/trunk/scratch/hiranya/website/src/site/site.xml Thu Dec 22 14:22:19 
2011
@@ -27,10 +27,13 @@
     <body>
         <menu name="Main Menu">
             <item name="Home" href="index.html"/>
-            <item name="Download"/>
-            <item name="History" href="userguide/history.html"/>
+            <item name="Download" href="download.html"/>
+            <item name="History" href="history.html"/>
             <item name="News"/>
             <item name="License" 
href="http://www.apache.org/licenses/LICENSE-2.0"/>
+            <item name="Thanks" 
href="http://www.apache.org/foundation/thanks.html"/>
+            <item name="Sponsorship" 
href="http://www.apache.org/foundation/sponsorship.html"/>
+            <item name="Security" href="http://www.apache.org/security/"/>
         </menu>
         <menu name="Documentation">
             <item name="Installation Guide" 
href="userguide/installation.html"/>
@@ -46,19 +49,24 @@
             <item name="FAQ" href="apidocs/"/>
         </menu>
         <menu name="Developer Resources">
-            <item name="Checkout the Source"/>
             <item name="Building Synapse"/>
             <item name="Developer Guidelines"/>
             <item name="Release Process"/>
-            <item name="Wiki"/>
         </menu>
         <menu name="Project Details">
+            <item name="Overview" href="project-details.html"/>
             <item name="Mailing Lists" href="mail-lists.html"/>
             <item name="Source Repository" href="source-repository.html"/>
             <item name="Issue Tracking" href="issue-tracking.html"/>
             <item name="Dependencies" href="dependencies.html"/>
             <item name="Project Team" href="team-list.html"/>
             <item name="Project Summary" href="project-summary.html"/>
-        </menu>        
+        </menu>
+        <menu name="Previous Releases">
+            <item name="Version 2.0" href="2_0/index.html"/>
+            <item name="Version 1.1.1" href="1_1_1/content.html"/>
+            <item name="Version 1.1" href="1_1/content.html"/>
+            <item name="Version 1.0" href="1_0/content.html"/>
+        </menu>
     </body>
 </project>

Added: synapse/trunk/scratch/hiranya/website/src/site/xdoc/download.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/scratch/hiranya/website/src/site/xdoc/download.xml?rev=1222249&view=auto
==============================================================================
--- synapse/trunk/scratch/hiranya/website/src/site/xdoc/download.xml (added)
+++ synapse/trunk/scratch/hiranya/website/src/site/xdoc/download.xml Thu Dec 22 
14:22:19 2011
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!--
+  ~  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.
+  -->
+
+<document>
+    <properties>
+        <title>Apache Synapse - Downloads</title>
+    </properties>
+    <body>
+        <section name="Download Latest Stable Release">
+            <p>
+                The latest stable release of Apache Synapse is 2.1. It is 
highly recommended
+                to use the latest stable release so that you can use our 
newest features
+                while benefiting from all the recent bug fixes and 
improvements.
+            </p>
+            <table>
+                <tr>
+                    <th>Version</th>
+                    <th>Release Date</th>
+                    <th>Release Note</th>
+                </tr>
+                <th>
+                    <td><a href="download/2.1/download.cgi">2.1</a></td>
+                    <td>22-Dec-2011</td>
+                    <td>View</td>
+                </th>
+            </table>
+        </section>
+        <section name="Download Previous Releases">
+            <table>
+                <tr>
+                    <th>Version</th>
+                    <th>Release Date</th>
+                </tr>
+                <th>
+                    <td><a href="download/2.0.0/download.cgi">2.0.0</a></td>
+                    <td>30-Nov-2010</td>
+                </th>
+                <th>
+                    <td><a href="download/1.2/download.cgi">1.2</a></td>
+                    <td>9-Jun-2008</td>
+                </th>
+                <th>
+                    <td><a href="download/1.1.1/download.cgi">1.1.1</a></td>
+                    <td>28-Jan-2008</td>
+                </th>
+                <th>
+                    <td><a href="download/1.1/download.cgi">1.1</a></td>
+                    <td>12-Nov-2007</td>
+                </th>
+                <th>
+                    <td><a href="download/2.0.0/download.cgi">1.0</a></td>
+                    <td>08-Jun-2007</td>
+                </th>
+            </table>
+        </section>
+    </body>
+</document>
\ No newline at end of file

Modified: 
synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/config.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/config.xml?rev=1222249&r1=1222248&r2=1222249&view=diff
==============================================================================
--- synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/config.xml 
(original)
+++ synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/config.xml 
Thu Dec 22 14:22:19 2011
@@ -46,6 +46,7 @@
                         <li><a href="#Registry">Remote Registry and Local 
Registry</a></li>
                         <li><a href="#API">APIs</a></li>
                         <li><a href="#PriorityExecutors">Priority 
Executors</a></li>
+                        <li><a href="#Stores">Message Stores and 
Processors</a></li>
                     </ul>
                 </li>
                 <li><a href="#ConfigFiles">Synapse Configuration Files</a></li>
@@ -71,6 +72,7 @@
                 <li><a href="#EventSourceConfig">Event Source 
Configuration</a></li>
                 <li><a href="#APIConfig">API Configuration</a></li>
                 <li><a href="#ExecutorConfig">Priority Executor 
Configuration</a></li>
+                <li><a href="#StoresConfig">Message Stores and Processors 
Configuration</a></li>
             </ul>
         </section>
         <section name="Introduction" id="Intro">
@@ -415,6 +417,32 @@
                     with priority 1.
                 </p>
             </subsection>
+            <subsection name="Message Stores and Processors" id="Stores">
+                <p>
+                    Message store acts as a unit of storage for messages/data 
exchanged during synapse
+                    runtime. By default synapse ships with a in-memory message 
store and the storage
+                    can be plugged in depending on the requirement. There is a 
specific mediator called
+                    store mediator which is able to direct message traffic to 
a particular message
+                    store at runtime.
+                </p>
+                <p>
+                    On the other hand a Message processor has the ability to 
connect to a message
+                    store and perform message mediation or required data 
manipulations. Essentially
+                    a particular message processor will be coupled with a 
message store and as a
+                    result respective message processor will be inherited with 
the traits of that
+                    particular message storage.
+                </p>
+                <p>
+                    For example in the eye of a message processor,  
data/messages coming from in-memory
+                    message store will be seen as more volatile compared to a 
persistent message store.
+                    Nevertheless it will find it can perform operations much 
faster on the former.
+                    This is in fact a very powerful concept and hence 
depending on the processor and
+                    store combination users can define limitless number of EI 
patterns in synapse
+                    that could meet different runtime requirements and SLA's. 
Synapse by default
+                    support two processors which are scheduled message 
processor and sampling
+                    processor.
+                </p>
+            </subsection>
         </section>
         <section name="Synapse Configuration Files" id="ConfigFiles">
             <p>
@@ -1542,5 +1570,58 @@
     &lt;/conditions&gt;
 &lt;/Priority-Configuration&gt;</div>
         </section>
+        <section name="Message Stores and Processors Configuration" 
id="StoresConfig">
+            <p>
+                Both Message Stores and processors are top level configuration 
of synapse. Following
+                section tries to describe some of the syntax of the message 
store/processors
+                configurations.
+            </p>
+
+            <p>
+                The syntax outline of a message store definition is given 
below.
+            </p>
+
+            <div class="xmlConf"> &lt;messageStore name=&quot;string&quot; 
class=&quot;classname&quot; &gt;
+    &lt;parameter name=&quot;string&quot; &gt; &quot;string&quot; 
&lt;/parameter&gt;*
+&lt;/messageStore&gt;</div>
+
+            <p>
+                The 'class' attribute value is the fully qualified class name 
of the underlying message
+                store implementation. There can be many message store 
implementations.Users can write
+                their own message store implementation and use it. Parameters 
section is used to
+                configure the parameters that is needed by underlying message 
store implementation.
+            </p>
+            <p>
+                The syntax outline of a message processor definition is given 
below.
+            </p>
+
+            <div class="xmlConf"> &lt;messageProcessor name=&quot;string&quot; 
class=&quot;class name&quot; messageStore=&quot;classname&quot; &gt;
+    &lt;parameter name=&quot;string&quot; &gt; &quot;string&quot; 
&lt;/parameter&gt;*
+&lt;/messageProcessor&gt;</div>
+
+            <p>
+                The 'class' attribute value is the fully qualified class name 
of the underlying message
+                processor implementation. There are two message processor 
implementations shipped by
+                default. There can be many message processor 
implementations.Users can write their
+                own message processor implementation and use it. Similar to 
message stores ,parameters
+                section here as well is used to configure the parameters that 
is needed by underlying
+                message processor implementation
+            </p>
+
+            <div class="xmlConf">Message Forwarding Processor : 
org.apache.synapse.message.processors.forward.ScheduledMessageForwardingProcessor</div>
+
+            <div class= "xmlConf">Sampling Processor : 
org.apache.synapse.message.processors.sampler.SamplingProcessor</div>
+
+            <p>
+                As mentioned earlier, there are several message 
store/processor implementations
+                shipped by default. However if users wants to extend these 
following interfaces are
+                available.
+            </p>
+            <div class="xmlConf">Interface: 
org.apache.synapse.message.store.MessageStore
+Abstract Class: org.apache.synapse.message.store.AbstractMessageStore
+
+Interface: org.apache.synapse.message.processors.MessageProcessor
+Abstract Class: 
org.apache.synapse.message.processors.AbstractMessageProcessor</div>
+        </section>
     </body>
 </document>
\ No newline at end of file

Modified: 
synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/mediators.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/mediators.xml?rev=1222249&r1=1222248&r2=1222249&view=diff
==============================================================================
--- synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/mediators.xml 
(original)
+++ synapse/trunk/scratch/hiranya/website/src/site/xdoc/userguide/mediators.xml 
Thu Dec 22 14:22:19 2011
@@ -44,6 +44,17 @@
                         <li><a href="#Spring">Spring Mediator</a></li>
                     </ul>
                 </li>
+                <li>
+                    <a href="#AdvancedMediators">Advanced Mediators</a>
+                    <ul>
+                        <li><a href="#Aggregate">Aggregate Mediator</a></li>
+                        <li><a href="#Cache">Cache Mediator</a></li>
+                        <li><a href="#Callout">Callout Mediator</a></li>
+                        <li><a href="#Clone">Clone Mediator</a></li>
+                        <li><a href="#Iterate">Iterate Mediator</a></li>
+                        <li><a href="#Transaction">Transaction 
Mediator</a></li>
+                    </ul>
+                </li>
             </ul>
         </section>
         <section name="Introduction" id="Intro">
@@ -712,5 +723,178 @@
                 </p>
             </subsection>
         </section>
+        <section name="Advanced Mediators" id="AdvancedMediators">
+            <subsection name="Aggregate Mediator" id="Aggregate">
+                <p>
+                    Aggregate mediator implements the Message Aggregator EIP 
by aggregating the
+                    messages or responses for split messages generated using 
either the clone or
+                    iterate mediator.
+                </p>
+                <div class="xmlConf">&lt;aggregate [id="string"]&gt;
+    &lt;correlateOn expression="xpath"/&gt;?
+    &lt;completeCondition [timeout="time-in-seconds"]&gt;
+        &lt;messageCount min="int-min" max="int-max"/&gt;?
+    &lt;/completeCondition&gt;?
+    &lt;onComplete expression="xpath" [sequence="sequence-ref"]&gt;
+        (mediator +)?
+    &lt;/onComplete&gt;
+&lt;/aggregate&gt;</div>
+                <p>
+                    This mediator can also aggregate messages on the presence 
of matching elements
+                    specified by the correlateOn XPath expression. Aggregate 
will collect the
+                    messages coming into it until the messages collected on 
the aggregation
+                    satisfies the complete condition. The completion condition 
can specify a minimum
+                    or maximum number of messages to be collected, or a 
timeout value in seconds,
+                    after which the aggregation terminates. On completion of 
the aggregation it will
+                    merge all of the collected messages and invoke the 
onComplete sequence on it.
+                    The merged message would be created using the XPath 
expression specified by the
+                    attribute 'expression' on the 'onComplete' element.
+                </p>
+            </subsection>
+            <subsection name="Cache Mediator" id="Cache">
+                <p>
+                    Cache mediator is used for simple response message caching 
in Synapse. When a
+                    message reaches the cache mediator, it checks weather an 
equivalent message is
+                    already cached using a hash value.
+                </p>
+                <p>
+                    When the cache mediator detects that the message is a 
cached message, it fetches
+                    the cached response and prepares Synapse for sending the 
response. If a sequence
+                    is specified for a cache hit, user can send back the 
response message within
+                    this sequence using a send mediator. If a sequence is not 
specified, then cached
+                    response is sent back to the client.
+                </p>
+                <div class="xmlConf">&lt;cache [id="string"] 
[hashGenerator="class"] [timeout="seconds"] [scope=(per-host | per-mediator)]
+        collector=(true | false) [maxMessageSize="in-bytes"]&gt;
+    &lt;onCacheHit [sequence="key"]&gt;
+        (mediator)+
+    &lt;/onCacheHit&gt;?
+    &lt;implementation type=(memory | disk) maxSize="int"/&gt;
+&lt;/cache&gt;</div>
+                <p>
+                    This mediator will evaluate the hash value of an incoming 
message as described
+                    in the optional hash generator implementation (which 
should be a class
+                    implementing the org.wso2.caching.digest.DigestGenerator 
interface). The default
+                    hash generator is 
'org.wso2.caching.digest.DOMHashGenerator'. If the generated
+                    hash value has been found in the cache then the cache 
mediator will execute the
+                    onCacheHit sequence which can be specified inline or 
referenced. The cache
+                    mediator must be specified with an 'id' and two instances 
with this same 'id'
+                    that correlates the response message into the cache for 
the request message
+                    hash. The optional 'timeout' specifies the valid duration 
for cached elements,
+                    and the scope defines if mediator instances share a common 
cache per every host
+                    instance, or per every cache mediator pair (i.e. 'id') 
instance. 'collector'
+                    attribute value 'true' specifies that the mediator 
instance is a response
+                    collection instance, and 'false' specifies that its a 
cache serving instance.
+                    The maximum size of a message to be cached could be 
specified with the optional
+                    'maxMessageSize' attributes in bytes and defaults to 
unlimited. Finally,
+                    'implementation' element may define if the cache is disk 
or memory based, and
+                    'maxSize' attribute defines the maximum number of elements 
to be cached.
+                </p>
+            </subsection>
+            <subsection name="Callout Mediator" id="Callout">
+                <p>
+                    Callout mediator performs a blocking external service 
invocation during
+                    mediation. 'serviceURL' and optional 'action' attributes 
specify the parameters
+                    for the external service call. The source element 
specifies the payload for the
+                    request message using an XPath expression; or a registry 
key. The target element
+                    specifies a node, at which the response payload will be 
attached into the
+                    current message, or the name of a key/property using which 
the response would be
+                    attached to the current message context as a property.
+                </p>
+                <div class="xmlConf">&lt;callout serviceURL="string" 
[action="string"]&gt;
+    &lt;configuration [axis2xml="string"] [repository="string"]/&gt;?
+    &lt;source xpath="expression" | key="string"&gt;
+    &lt;target xpath="expression" | key="string"/&gt;
+&lt;/callout&gt;</div>
+                <p>
+                    Since the callout mediator performs a blocking call, it 
cannot use the default
+                    non-blocking http/s transports based on Java NIO, and thus 
defaults to using the
+                    samples/axis2Client/client_repo/conf/axis2.xml as the 
Axis2 configuration, and
+                    samples/axis2Client/client_repo as the client repository 
unless these are
+                    specified otherwise inside the 'configuration' subelement.
+                </p>
+            </subsection>
+            <subsection name="Clone Mediator" id="Clone">
+                <p>
+                    Clone mediator can be used to create several clones or 
copies of a message. This
+                    mediator implements the Message Splitter EIP by splitting 
the message into
+                    number of identical messages which will be processed in 
parallel. They can also
+                    be set to process sequentially by setting the value of the 
optional 'sequential'
+                    attribute to 'true'.
+                </p>
+                <div class="xmlConf">&lt;clone [id="string"] [sequential=(true 
| false)] [continueParent=(true | false)]&gt;
+    &lt;target [to="uri"] [soapAction="qname"] [sequence="sequence_ref"] 
[endpoint="endpoint_ref"]&gt;
+        &lt;sequence&gt;
+            (mediator)+
+        &lt;/sequence&gt;?
+        &lt;endpoint&gt;
+            endpoint
+        &lt;/endpoint&gt;?
+    &lt;/target&gt;+
+&lt;/clone&gt;</div>
+                <p>
+                    The original message can be continued or dropped depending 
on the boolean value
+                    of the optional 'continueParent' attribute. Optionally a 
custom 'To' address
+                    and/or a 'Action' may be specified for cloned messages. 
The optional 'id'
+                    attribute can be used to identify the clone mediator which 
created a particular
+                    split message when nested clone mediators are used. This 
is particularly useful
+                    when aggregating responses of messages that were created 
using nested clone
+                    mediators.
+                </p>
+            </subsection>
+            <subsection name="Iterate Mediator" id="Iterate">
+                <p>
+                    Iterate mediator splits the message into number of 
different messages
+                    derived from the parent message by finding matching 
elements for the XPath
+                    expression specified. New messages will be created for 
each matching element and
+                    processed in parallel (default behavior) using either the 
specified sequence or
+                    endpoint.
+                </p>
+                <div class="xmlConf">&lt;iterate [id="string"] 
[continueParent=(true | false)] [preservePayload=(true | false)] 
[sequential=(true | false)]
+        (attachPath="xpath")? expression="xpath"&gt;
+    &lt;target [to="uri"] [soapAction="qname"] [sequence="sequence_ref"] 
[endpoint="endpoint_ref"]&gt;
+        &lt;sequence&gt;
+            (mediator)+
+        &lt;/sequence&gt;?
+        &lt;endpoint&gt;
+            endpoint
+        &lt;/endpoint&gt;?
+    &lt;/target&gt;+
+ &lt;/iterate&gt;</div>
+                <p>
+                    Created messages can also be set to process sequentially 
by setting the optional
+                    'sequential' attribute to 'true'. Parent message can be 
continued or dropped in
+                    the same way as in the clone mediator. The 
'preservePayload' attribute specifies
+                    if the original message should be used as a template when 
creating the split
+                    messages, and defaults to 'false', in which case the split 
messages would
+                    contain the split elements as the SOAP body. The optional 
'id' attribute can be
+                    used to identify the iterator which created a particular 
split message when
+                    nested iterate mediators are used. This is particularly 
useful when aggregating
+                    responses of messages that are created using nested 
iterate mediators.
+                </p>
+            </subsection>
+            <subsection name="Transaction Mediator" id="Transaction">
+                <p>
+                    Transaction mediator can provide transaction facility for 
a set of mediators
+                    defined as its child mediators. A transaction mediator 
with the action "new"
+                    indicates the entry point for the transaction. A 
transaction is marked completed
+                    by a transaction mediator with the action "commit". The 
suspend and resume
+                    actions are used to pause a transaction at some point and 
start it again later.
+                    Additionally, the transaction mediator supports three 
other actions, i.e.
+                    use-existing-or-new, fault-if-no-tx, rollback.
+                </p>
+                <div class="xmlConf">&lt;transaction 
action="new|use-existing-or-new|fault-if-no-tx|commit|rollback|suspend|resume"/&gt;</div>
+                <ul>
+                    <li>Commit transaction: End the transaction</li>
+                    <li>Fault if no transaction: Go to error handler if no 
transaction</li>
+                    <li>Initiate new transaction: Entry point for new 
transaction</li>
+                    <li>Resume transaction: Resume a puased transaction</li>
+                    <li>Suspend transaction: Puase a transaction</li>
+                    <li>Rollback transaction: Rollback a transaction</li>
+                    <li>Use existing or initiate transaction: If a transaction 
already exists
+                        continue it or create a new transaction</li>
+                </ul>
+            </subsection>
+        </section>
     </body>
 </document>
\ No newline at end of file


Reply via email to