diff --git a/modules/commons/pom.xml b/modules/commons/pom.xml
index b034609..d04ee0b 100644
--- a/modules/commons/pom.xml
+++ b/modules/commons/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/commons</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/commons</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/commons</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/commons</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/commons</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/commons</url>
     </scm>
 
     <build>
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 7f08f6c..738611e 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -39,9 +36,9 @@
     <url>http://synapse.apache.org</url>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/core</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/core</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/core</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/core</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/core</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/core</url>
     </scm>
 
     <build>
@@ -84,11 +81,11 @@
                         <phase>generate-test-resources</phase>
                         <configuration>
                             <tasks>
-                                <echo message="*** Creating a testing repository ***"/>
-                                <mkdir dir="target/test_repos"/>
-                                <mkdir dir="target/test_repos/synapse/modules"/>
-                                <mkdir dir="target/test_repos/synapse/services"/>
-                                <mkdir dir="target/test_repos/client/modules"/>
+                                <echo message="*** Creating a testing repository ***" />
+                                <mkdir dir="target/test_repos" />
+                                <mkdir dir="target/test_repos/synapse/modules" />
+                                <mkdir dir="target/test_repos/synapse/services" />
+                                <mkdir dir="target/test_repos/client/modules" />
                             </tasks>
                         </configuration>
                         <goals>
diff --git a/modules/distribution/pom.xml b/modules/distribution/pom.xml
index a92d3bf..5963fe6 100644
--- a/modules/distribution/pom.xml
+++ b/modules/distribution/pom.xml
@@ -17,15 +17,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>pom</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/distribution</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/distribution</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/distribution</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/distribution</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/distribution</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/distribution</url>
     </scm>
 
     <dependencies>
diff --git a/modules/experimental/pom.xml b/modules/experimental/pom.xml
index 2d1a17d..bf315fc 100644
--- a/modules/experimental/pom.xml
+++ b/modules/experimental/pom.xml
@@ -1,78 +1,75 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~  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.
-  -->
-
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.apache.synapse</groupId>
-        <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
-        <relativePath>../../pom.xml</relativePath>
-    </parent>
-
-    <groupId>org.apache.synapse</groupId>
-    <artifactId>synapse-experimental</artifactId>
-    
-    <name>Apache Synapse - Experimental code</name>
-    <description>Apache Synapse - Experimental code (use at your own risk!)</description>
-    <packaging>bundle</packaging>
-
-    <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/experimental</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/experimental</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/experimental</url>
-    </scm>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.0</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-                        <Export-Package>
-                            org.apache.synapse.experimental.*,
-                        </Export-Package>
-                        <Import-Package>
-                            !javax.xml.namespace,
-                            javax.xml.namespace; version=0.0.0,
-                            *;resolution:=optional,
-                        </Import-Package>
-                        <DynamicImport-Package>*</DynamicImport-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.synapse</groupId>
-            <artifactId>synapse-core</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~  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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.synapse</groupId>
+        <artifactId>Apache-Synapse</artifactId>
+        <version>2.1.0</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.synapse</groupId>
+    <artifactId>synapse-experimental</artifactId>
+    
+    <name>Apache Synapse - Experimental code</name>
+    <description>Apache Synapse - Experimental code (use at your own risk!)</description>
+    <packaging>bundle</packaging>
+
+    <scm>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/experimental</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/experimental</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/experimental</url>
+    </scm>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>1.4.0</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+                        <Export-Package>
+                            org.apache.synapse.experimental.*,
+                        </Export-Package>
+                        <Import-Package>
+                            !javax.xml.namespace,
+                            javax.xml.namespace; version=0.0.0,
+                            *;resolution:=optional,
+                        </Import-Package>
+                        <DynamicImport-Package>*</DynamicImport-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.synapse</groupId>
+            <artifactId>synapse-core</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git a/modules/extensions/pom.xml b/modules/extensions/pom.xml
index 68b3155..079feb2 100644
--- a/modules/extensions/pom.xml
+++ b/modules/extensions/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/extensions</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/extensions</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/extensions</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/extensions</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/extensions</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/extensions</url>
     </scm>
 
     <build>
diff --git a/modules/handler/pom.xml b/modules/handler/pom.xml
index 32d86b3..ee2c54e 100644
--- a/modules/handler/pom.xml
+++ b/modules/handler/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/handler</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/handler</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/handler</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/handler</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/handler</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/handler</url>
     </scm>
 
     <build>
@@ -79,8 +76,7 @@
                         <phase>package</phase>
                         <configuration>
                             <tasks>
-                                <copy file="target/synapse-handler-${synapse.version}.jar"
-                                      tofile="target/synapse-handler-${synapse.version}.mar"/>
+                                <copy file="target/synapse-handler-${synapse.version}.jar" tofile="target/synapse-handler-${synapse.version}.mar" />
                             </tasks>
                         </configuration>
                         <goals>
diff --git a/modules/integration/pom.xml b/modules/integration/pom.xml
index f61de5c..25d5fb3 100644
--- a/modules/integration/pom.xml
+++ b/modules/integration/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <!--<packaging>bundle</packaging>-->
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/integration</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/integration</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/integration</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/integration</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/integration</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/integration</url>
     </scm>
 
     <build>
@@ -56,182 +53,182 @@
                         <phase>generate-test-resources</phase>
                         <configuration>
                             <tasks>
-                                <echo message="*** Creating testing repositories for synapse samples"/>
+                                <echo message="*** Creating testing repositories for synapse samples" />
 
-                                <mkdir dir="target/test_repos"/>
-                                <mkdir dir="target/test_repos/axis2Server"/>
-                                <mkdir dir="target/test_repos/axis2Client"/>
-                                <mkdir dir="target/test_repos/synapse"/>
-                                <mkdir dir="target/test_repos/synapse"/>
-                                <mkdir dir="target/test_repos/synapse/modules"/>
-                                <mkdir dir="target/test_repos/synapse/conf"/>
-                                <mkdir dir="target/test_repos/axis2Server/services"/>
-                                <mkdir dir="target/test_repos/axis2Server/modules"/>
-                                <mkdir dir="target/test_repos/axis2Server/conf"/>
-                                <mkdir dir="target/test_repos/axis2Client/modules"/>
-                                <mkdir dir="target/test_repos/axis2Client/conf"/>
+                                <mkdir dir="target/test_repos" />
+                                <mkdir dir="target/test_repos/axis2Server" />
+                                <mkdir dir="target/test_repos/axis2Client" />
+                                <mkdir dir="target/test_repos/synapse" />
+                                <mkdir dir="target/test_repos/synapse" />
+                                <mkdir dir="target/test_repos/synapse/modules" />
+                                <mkdir dir="target/test_repos/synapse/conf" />
+                                <mkdir dir="target/test_repos/axis2Server/services" />
+                                <mkdir dir="target/test_repos/axis2Server/modules" />
+                                <mkdir dir="target/test_repos/axis2Server/conf" />
+                                <mkdir dir="target/test_repos/axis2Client/modules" />
+                                <mkdir dir="target/test_repos/axis2Client/conf" />
 
                                 <copy todir="target/test_repos/axis2Server/conf/">
                                     <fileset dir="src/test/resources/axis2Xml/axis2Server">
-                                        <include name="*.xml"/>
+                                        <include name="*.xml" />
                                     </fileset>
                                 </copy>
                                 <copy todir="target/test_repos/synapse/conf/">
                                     <fileset dir="src/test/resources/axis2Xml/synapse">
-                                        <include name="*.xml"/>
+                                        <include name="*.xml" />
                                     </fileset>
                                 </copy>
                                 <copy todir="target/test_repos/axis2Client/conf/">
                                     <fileset dir="src/test/resources/axis2Xml/axis2Client">
-                                        <include name="*.xml"/>
+                                        <include name="*.xml" />
                                     </fileset>
                                 </copy>
 
                                 <!--<copy file="src/test/resources/trust.jks"-->
-                                <!--tofile="target/test_repos/synapse/conf/trust.jks"/>-->
+                                <!--tofile="target/test_repos/synapse/conf/trust.jks" />-->
                                 <!--<copy file="src/test/resources/identity.jks"-->
-                                <!--tofile="target/test_repos/synapse/conf/identity.jks"/>-->
+                                <!--tofile="target/test_repos/synapse/conf/identity.jks" />-->
                                 <!--<copy file="../core/src/test/resources/keystore.jks"-->
-                                <!--tofile="target/test_repos/synapse/conf/keystore.jks"/>-->
+                                <!--tofile="target/test_repos/synapse/conf/keystore.jks" />-->
 
-                                <property name="temp.dir" value="target/temp"/>
-                                <property name="classes" value="${temp.dir}/classes"/>
-                                <property name="services" value="target/test_repos/axis2Server/services"/>
+                                <property name="temp.dir" value="target/temp" />
+                                <property name="classes" value="${temp.dir}/classes" />
+                                <property name="services" value="target/test_repos/axis2Server/services" />
 
-                                <property name="src" value="../samples/services/SimpleStockQuoteService/src"/>
+                                <property name="src" value="../samples/services/SimpleStockQuoteService/src" />
 
-                                <mkdir dir="${temp.dir}"/>
-                                <mkdir dir="${classes}"/>
+                                <mkdir dir="${temp.dir}" />
+                                <mkdir dir="${classes}" />
 
                                 <javac debug="on" destdir="${classes}" fork="true" includeantruntime="false">
-                                    <src path="${src}"/>
-                                    <classpath refid="maven.compile.classpath"/>
+                                    <src path="${src}" />
+                                    <classpath refid="maven.compile.classpath" />
                                 </javac>
 
-                                <property name="SSQ.dir" value="${temp.dir}/SimpleStockQuote"/>
-                                <mkdir dir="${SSQ.dir}"/>
+                                <property name="SSQ.dir" value="${temp.dir}/SimpleStockQuote" />
+                                <mkdir dir="${SSQ.dir}" />
 
-                                <mkdir dir="${SSQ.dir}/META-INF"/>
-                                <copy file="${src}/../conf/services.xml" tofile="${SSQ.dir}/META-INF/services.xml"/>
+                                <mkdir dir="${SSQ.dir}/META-INF" />
+                                <copy file="${src}/../conf/services.xml" tofile="${SSQ.dir}/META-INF/services.xml" />
                                 <!--<copy file="${src}/../wsdl/SimpleStockQuoteService.wsdl"-->
-                                <!--tofile="${SSQ.dir}/META-INF/service.wsdl"/>-->
+                                <!--tofile="${SSQ.dir}/META-INF/service.wsdl" />-->
                                 <copy toDir="${SSQ.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/*.class"/>
+                                        <include name="**/*.class" />
                                     </fileset>
                                 </copy>
 
                                 <jar destfile="${services}/SimpleStockQuoteService.aar">
-                                    <fileset dir="${SSQ.dir}"/>
+                                    <fileset dir="${SSQ.dir}" />
                                 </jar>
 
-                                <property name="src2" value="../samples/services/SecureStockQuoteService/src"/>
-                                <delete dir="${temp.dir}"/>
-                                <mkdir dir="${temp.dir}"/>
-                                <mkdir dir="${classes}"/>
+                                <property name="src2" value="../samples/services/SecureStockQuoteService/src" />
+                                <delete dir="${temp.dir}" />
+                                <mkdir dir="${temp.dir}" />
+                                <mkdir dir="${classes}" />
                                 <javac debug="on" destdir="${classes}" fork="true" includeantruntime="false">
-                                    <src path="${src2}"/>
-                                    <classpath refid="maven.compile.classpath"/>
+                                    <src path="${src2}" />
+                                    <classpath refid="maven.compile.classpath" />
                                 </javac>
-                                <property name="SSQ2.dir" value="${temp.dir}/SecureStockQuoteService"/>
-                                <mkdir dir="${SSQ2.dir}"/>
-                                <mkdir dir="${SSQ2.dir}/META-INF"/>
-                                <copy file="${src2}/../conf/services.xml" tofile="${SSQ2.dir}/META-INF/services.xml"/>
+                                <property name="SSQ2.dir" value="${temp.dir}/SecureStockQuoteService" />
+                                <mkdir dir="${SSQ2.dir}" />
+                                <mkdir dir="${SSQ2.dir}/META-INF" />
+                                <copy file="${src2}/../conf/services.xml" tofile="${SSQ2.dir}/META-INF/services.xml" />
                                 <!--<copy file="${src2}/../wsdl/SimpleStockQuoteService.wsdl"-->
-                                <!--tofile="${SSQ2.dir}/META-INF/service.wsdl"/>-->
-                                <copy file="${src2}/../store.jks" tofile="${SSQ2.dir}/store.jks"/>
+                                <!--tofile="${SSQ2.dir}/META-INF/service.wsdl" />-->
+                                <copy file="${src2}/../store.jks" tofile="${SSQ2.dir}/store.jks" />
                                 <copy toDir="${SSQ2.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/*.class"/>
+                                        <include name="**/*.class" />
                                     </fileset>
                                 </copy>
                                 <jar destfile="${services}/SecureStockQuoteService.aar">
-                                    <fileset dir="${SSQ2.dir}"/>
+                                    <fileset dir="${SSQ2.dir}" />
                                 </jar>
 
-                                <property name="src3" value="../samples/services/MTOMSwASampleService/src"/>
-                                <delete dir="${temp.dir}"/>
-                                <mkdir dir="${temp.dir}"/>
-                                <mkdir dir="${classes}"/>
+                                <property name="src3" value="../samples/services/MTOMSwASampleService/src" />
+                                <delete dir="${temp.dir}" />
+                                <mkdir dir="${temp.dir}" />
+                                <mkdir dir="${classes}" />
                                 <javac debug="on" destdir="${classes}" fork="true" includeantruntime="false">
-                                    <src path="${src3}"/>
-                                    <classpath refid="maven.compile.classpath"/>
+                                    <src path="${src3}" />
+                                    <classpath refid="maven.compile.classpath" />
                                 </javac>
-                                <property name="SSQ3.dir" value="${temp.dir}/MTOMSwASampleService"/>
-                                <mkdir dir="${SSQ3.dir}"/>
-                                <mkdir dir="${SSQ3.dir}/META-INF"/>
-                                <copy file="${src3}/../conf/services.xml" tofile="${SSQ3.dir}/META-INF/services.xml"/>
+                                <property name="SSQ3.dir" value="${temp.dir}/MTOMSwASampleService" />
+                                <mkdir dir="${SSQ3.dir}" />
+                                <mkdir dir="${SSQ3.dir}/META-INF" />
+                                <copy file="${src3}/../conf/services.xml" tofile="${SSQ3.dir}/META-INF/services.xml" />
                                 <copy toDir="${SSQ3.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/*.class"/>
+                                        <include name="**/*.class" />
                                     </fileset>
                                 </copy>
                                 <jar destfile="${services}/MTOMSwASampleService.aar">
-                                    <fileset dir="${SSQ3.dir}"/>
+                                    <fileset dir="${SSQ3.dir}" />
                                 </jar>
 
-                                <property name="src4" value="../samples/services/ReliableStockQuoteService/src"/>
-                                <delete dir="${temp.dir}"/>
-                                <mkdir dir="${temp.dir}"/>
-                                <mkdir dir="${classes}"/>
+                                <property name="src4" value="../samples/services/ReliableStockQuoteService/src" />
+                                <delete dir="${temp.dir}" />
+                                <mkdir dir="${temp.dir}" />
+                                <mkdir dir="${classes}" />
                                 <javac debug="on" destdir="${classes}" fork="true" includeantruntime="false">
-                                    <src path="${src4}"/>
-                                    <classpath refid="maven.compile.classpath"/>
+                                    <src path="${src4}" />
+                                    <classpath refid="maven.compile.classpath" />
                                 </javac>
-                                <property name="RSQ.dir" value="${temp.dir}/ReliableStockQuoteService"/>
-                                <mkdir dir="${RSQ.dir}"/>
+                                <property name="RSQ.dir" value="${temp.dir}/ReliableStockQuoteService" />
+                                <mkdir dir="${RSQ.dir}" />
 
-                                <mkdir dir="${RSQ.dir}/META-INF"/>
-                                <copy file="${src4}/../conf/services.xml" tofile="${RSQ.dir}/META-INF/services.xml"/>
+                                <mkdir dir="${RSQ.dir}/META-INF" />
+                                <copy file="${src4}/../conf/services.xml" tofile="${RSQ.dir}/META-INF/services.xml" />
                                 <!--<copy file="${src4}/../wsdl/ReliableStockQuoteService.wsdl"-->
-                                <!--tofile="${RSQ.dir}/META-INF/service.wsdl"/>-->
+                                <!--tofile="${RSQ.dir}/META-INF/service.wsdl" />-->
                                 <copy toDir="${RSQ.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/*.class"/>
+                                        <include name="**/*.class" />
                                     </fileset>
                                 </copy>
 
                                 <jar destfile="${services}/ReliableStockQuoteService.aar">
-                                    <fileset dir="${RSQ.dir}"/>
+                                    <fileset dir="${RSQ.dir}" />
                                 </jar>
 
-                                <property name="src5" value="../samples/services/LoadbalanceFailoverService/src"/>
-                                <delete dir="${temp.dir}"/>
-                                <mkdir dir="${temp.dir}"/>
-                                <mkdir dir="${classes}"/>
+                                <property name="src5" value="../samples/services/LoadbalanceFailoverService/src" />
+                                <delete dir="${temp.dir}" />
+                                <mkdir dir="${temp.dir}" />
+                                <mkdir dir="${classes}" />
                                 <javac debug="on" destdir="${classes}" fork="true" includeantruntime="false">
-                                    <src path="${src5}"/>
-                                    <classpath refid="maven.compile.classpath"/>
+                                    <src path="${src5}" />
+                                    <classpath refid="maven.compile.classpath" />
                                 </javac>
 
-                                <property name="LBFA1.dir" value="${temp.dir}/LBService1"/>
-                                <mkdir dir="${LBFA1.dir}"/>
+                                <property name="LBFA1.dir" value="${temp.dir}/LBService1" />
+                                <mkdir dir="${LBFA1.dir}" />
 
-                                <mkdir dir="${LBFA1.dir}/META-INF"/>
-                                <copy file="${src5}/../conf/service1/services.xml" tofile="${LBFA1.dir}/META-INF/services.xml"/>
+                                <mkdir dir="${LBFA1.dir}/META-INF" />
+                                <copy file="${src5}/../conf/service1/services.xml" tofile="${LBFA1.dir}/META-INF/services.xml" />
                                 <copy toDir="${LBFA1.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/LBService1.class"/>
+                                        <include name="**/LBService1.class" />
                                     </fileset>
                                 </copy>
 
                                 <jar destfile="${services}/LBService1.aar">
-                                    <fileset dir="${LBFA1.dir}"/>
+                                    <fileset dir="${LBFA1.dir}" />
                                 </jar>
 
-                                <property name="LBFA2.dir" value="${temp.dir}/LBService2"/>
-                                <mkdir dir="${LBFA2.dir}"/>
+                                <property name="LBFA2.dir" value="${temp.dir}/LBService2" />
+                                <mkdir dir="${LBFA2.dir}" />
 
-                                <mkdir dir="${LBFA2.dir}/META-INF"/>
-                                <copy file="${src5}/../conf/service2/services.xml" tofile="${LBFA2.dir}/META-INF/services.xml"/>
+                                <mkdir dir="${LBFA2.dir}/META-INF" />
+                                <copy file="${src5}/../conf/service2/services.xml" tofile="${LBFA2.dir}/META-INF/services.xml" />
                                 <copy toDir="${LBFA2.dir}">
                                     <fileset dir="${classes}">
-                                        <include name="**/LBService2.class"/>
+                                        <include name="**/LBService2.class" />
                                     </fileset>
                                 </copy>
 
                                 <jar destfile="${services}/LBService2.aar">
-                                    <fileset dir="${LBFA2.dir}"/>
+                                    <fileset dir="${LBFA2.dir}" />
                                 </jar>
 
                             </tasks>
diff --git a/modules/migrator/pom.xml b/modules/migrator/pom.xml
index c70d108..4ff45c8 100644
--- a/modules/migrator/pom.xml
+++ b/modules/migrator/pom.xml
@@ -18,15 +18,13 @@
   ~  under the License.
   -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -40,9 +38,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/migrator</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/migrator</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/migrator</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/migrator</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/migrator</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/migrator</url>
     </scm>
 
     <build>
diff --git a/modules/packaging/package-archetype/pom.xml b/modules/packaging/package-archetype/pom.xml
index 22eb7fa..3372034 100644
--- a/modules/packaging/package-archetype/pom.xml
+++ b/modules/packaging/package-archetype/pom.xml
@@ -17,15 +17,12 @@
   ~  specific language governing permissions and limitations
   ~  under the License.
   -->
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../../pom.xml</relativePath>
     </parent>
     <artifactId>synapse-package-archetype</artifactId>
@@ -37,9 +34,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/packaging/package-archetype</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/packaging/package-archetype</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/packaging/package-archetype</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/packaging/package-archetype</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/packaging/package-archetype</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/packaging/package-archetype</url>
     </scm>
 
     <build>
diff --git a/modules/packaging/package-skeleton/pom.xml b/modules/packaging/package-skeleton/pom.xml
index 34f4ce7..e20fcff 100644
--- a/modules/packaging/package-skeleton/pom.xml
+++ b/modules/packaging/package-skeleton/pom.xml
@@ -17,15 +17,12 @@
   ~  specific language governing permissions and limitations
   ~  under the License.
   -->
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../../pom.xml</relativePath>
     </parent>
     <artifactId>synapse-package-skeleton</artifactId>
@@ -38,9 +35,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/packaging/package-skeleton</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/packaging/package-skeleton</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/packaging/package-skeleton</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/packaging/package-skeleton</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/packaging/package-skeleton</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/packaging/package-skeleton</url>
     </scm>
 
     <dependencies>
diff --git a/modules/patches/pom.xml b/modules/patches/pom.xml
index 607a1dc..2f61fa0 100644
--- a/modules/patches/pom.xml
+++ b/modules/patches/pom.xml
@@ -17,15 +17,12 @@
   ~  specific language governing permissions and limitations
   ~  under the License.
   -->
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
     <artifactId>synapse-patches</artifactId>
@@ -38,9 +35,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/patches</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/patches</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/patches</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/patches</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/patches</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/patches</url>
     </scm>
 
     <build>
@@ -73,7 +70,7 @@
                             <tasks>
                                 <unjar dest="${project.build.outputDirectory}">
                                     <fileset dir="${basedir}/jars">
-                                        <include name="**/*.jar"/>
+                                        <include name="**/*.jar" />
                                     </fileset>
                                 </unjar>
                             </tasks>
diff --git a/modules/samples/pom.xml b/modules/samples/pom.xml
index 9eb8e07..c2f7896 100644
--- a/modules/samples/pom.xml
+++ b/modules/samples/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/samples</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/samples</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/samples</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/samples</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/samples</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/samples</url>
     </scm>
 
     <profiles>
@@ -58,189 +55,163 @@
                                 <phase>generate-test-resources</phase>
                                 <configuration>
                                     <tasks>
-                                        <echo message="*** Creating a sample n2n testing repository ***"/>
+                                        <echo message="*** Creating a sample n2n testing repository ***" />
 
-                                        <mkdir dir="target/test_repos"/>
-                                        <mkdir dir="target/test_repos/axis2Server"/>
-                                        <mkdir dir="target/test_repos/axis2Client"/>
-                                        <mkdir dir="target/test_repos/synapse"/>
-                                        <mkdir dir="target/test_repos/synapse"/>
-                                        <mkdir dir="target/test_repos/synapse/modules"/>
-                                        <mkdir dir="target/test_repos/synapse/conf"/>
-                                        <mkdir dir="target/test_repos/axis2Server/services"/>
-                                        <mkdir dir="target/test_repos/axis2Server/modules"/>
-                                        <mkdir dir="target/test_repos/axis2Server/conf"/>
-                                        <mkdir dir="target/test_repos/axis2Client/modules"/>
-                                        <mkdir dir="target/test_repos/axis2Client/conf"/>
+                                        <mkdir dir="target/test_repos" />
+                                        <mkdir dir="target/test_repos/axis2Server" />
+                                        <mkdir dir="target/test_repos/axis2Client" />
+                                        <mkdir dir="target/test_repos/synapse" />
+                                        <mkdir dir="target/test_repos/synapse" />
+                                        <mkdir dir="target/test_repos/synapse/modules" />
+                                        <mkdir dir="target/test_repos/synapse/conf" />
+                                        <mkdir dir="target/test_repos/axis2Server/services" />
+                                        <mkdir dir="target/test_repos/axis2Server/modules" />
+                                        <mkdir dir="target/test_repos/axis2Server/conf" />
+                                        <mkdir dir="target/test_repos/axis2Client/modules" />
+                                        <mkdir dir="target/test_repos/axis2Client/conf" />
 
-                                        <copy file="../../repository/conf/sample/resources/misc/server/axis2.xml"
-                                              tofile="target/test_repos/axis2Server/conf/axis2.xml"/>
-                                        <copy file="../../repository/conf/sample/resources/misc/client/axis2.xml"
-                                              tofile="target/test_repos/axis2Client/conf/axis2.xml"/>
-                                        <copy file="../../repository/conf/axis2.xml"
-                                              tofile="target/test_repos/synapse/conf/axis2.xml"/>
-                                        <copy file="../core/src/main/resources/trust.jks"
-                                              tofile="target/test_repos/synapse/conf/trust.jks"/>
-                                        <copy file="../core/src/main/resources/identity.jks"
-                                              tofile="target/test_repos/synapse/conf/identity.jks"/>
-                                        <copy file="../core/src/test/resources/keystore.jks"
-                                              tofile="target/test_repos/synapse/conf/keystore.jks"/>
+                                        <copy file="../../repository/conf/sample/resources/misc/server/axis2.xml" tofile="target/test_repos/axis2Server/conf/axis2.xml" />
+                                        <copy file="../../repository/conf/sample/resources/misc/client/axis2.xml" tofile="target/test_repos/axis2Client/conf/axis2.xml" />
+                                        <copy file="../../repository/conf/axis2.xml" tofile="target/test_repos/synapse/conf/axis2.xml" />
+                                        <copy file="../core/src/main/resources/trust.jks" tofile="target/test_repos/synapse/conf/trust.jks" />
+                                        <copy file="../core/src/main/resources/identity.jks" tofile="target/test_repos/synapse/conf/identity.jks" />
+                                        <copy file="../core/src/test/resources/keystore.jks" tofile="target/test_repos/synapse/conf/keystore.jks" />
 
-                                        <property name="temp.dir" value="target/temp"/>
-                                        <property name="classes" value="${temp.dir}/classes"/>
-                                        <property name="services"
-                                                  value="target/test_repos/axis2Server/services"/>
+                                        <property name="temp.dir" value="target/temp" />
+                                        <property name="classes" value="${temp.dir}/classes" />
+                                        <property name="services" value="target/test_repos/axis2Server/services" />
 
-                                        <property name="src"
-                                                  value="services/SimpleStockQuoteService/src"/>
+                                        <property name="src" value="services/SimpleStockQuoteService/src" />
 
-                                        <mkdir dir="${temp.dir}"/>
-                                        <mkdir dir="${classes}"/>
+                                        <mkdir dir="${temp.dir}" />
+                                        <mkdir dir="${classes}" />
 
                                         <javac debug="on" destdir="${classes}" fork="true">
-                                            <src path="${src}"/>
-                                            <classpath refid="maven.compile.classpath"/>
+                                            <src path="${src}" />
+                                            <classpath refid="maven.compile.classpath" />
                                         </javac>
 
-                                        <property name="SSQ.dir"
-                                                  value="${temp.dir}/SimpleStockQuote"/>
-                                        <mkdir dir="${SSQ.dir}"/>
+                                        <property name="SSQ.dir" value="${temp.dir}/SimpleStockQuote" />
+                                        <mkdir dir="${SSQ.dir}" />
 
-                                        <mkdir dir="${SSQ.dir}/META-INF"/>
-                                        <copy file="${src}/../conf/services.xml"
-                                              tofile="${SSQ.dir}/META-INF/services.xml"/>
-                                        <copy file="${src}/../wsdl/SimpleStockQuoteService.wsdl"
-                                              tofile="${SSQ.dir}/META-INF/service.wsdl"/>
+                                        <mkdir dir="${SSQ.dir}/META-INF" />
+                                        <copy file="${src}/../conf/services.xml" tofile="${SSQ.dir}/META-INF/services.xml" />
+                                        <copy file="${src}/../wsdl/SimpleStockQuoteService.wsdl" tofile="${SSQ.dir}/META-INF/service.wsdl" />
                                         <copy toDir="${SSQ.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/*.class"/>
+                                                <include name="**/*.class" />
                                             </fileset>
                                         </copy>
 
                                         <jar destfile="${services}/SimpleStockQuoteService.aar">
-                                            <fileset dir="${SSQ.dir}"/>
+                                            <fileset dir="${SSQ.dir}" />
                                         </jar>
 
-                                        <property name="src2"
-                                                  value="services/SecureStockQuoteService/src"/>
-                                        <delete dir="${temp.dir}"/>
-                                        <mkdir dir="${temp.dir}"/>
-                                        <mkdir dir="${classes}"/>
+                                        <property name="src2" value="services/SecureStockQuoteService/src" />
+                                        <delete dir="${temp.dir}" />
+                                        <mkdir dir="${temp.dir}" />
+                                        <mkdir dir="${classes}" />
                                         <javac debug="on" destdir="${classes}" fork="true">
-                                            <src path="${src2}"/>
-                                            <classpath refid="maven.compile.classpath"/>
+                                            <src path="${src2}" />
+                                            <classpath refid="maven.compile.classpath" />
                                         </javac>
-                                        <property name="SSQ2.dir"
-                                                  value="${temp.dir}/SecureStockQuoteService"/>
-                                        <mkdir dir="${SSQ2.dir}"/>
-                                        <mkdir dir="${SSQ2.dir}/META-INF"/>
-                                        <copy file="${src2}/../conf/services.xml"
-                                              tofile="${SSQ2.dir}/META-INF/services.xml"/>
-                                        <copy file="${src2}/../wsdl/SimpleStockQuoteService.wsdl"
-                                              tofile="${SSQ2.dir}/META-INF/service.wsdl"/>
-                                        <copy file="${src2}/../store.jks"
-                                              tofile="${SSQ2.dir}/store.jks"/>
+                                        <property name="SSQ2.dir" value="${temp.dir}/SecureStockQuoteService" />
+                                        <mkdir dir="${SSQ2.dir}" />
+                                        <mkdir dir="${SSQ2.dir}/META-INF" />
+                                        <copy file="${src2}/../conf/services.xml" tofile="${SSQ2.dir}/META-INF/services.xml" />
+                                        <copy file="${src2}/../wsdl/SimpleStockQuoteService.wsdl" tofile="${SSQ2.dir}/META-INF/service.wsdl" />
+                                        <copy file="${src2}/../store.jks" tofile="${SSQ2.dir}/store.jks" />
                                         <copy toDir="${SSQ2.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/*.class"/>
+                                                <include name="**/*.class" />
                                             </fileset>
                                         </copy>
                                         <jar destfile="${services}/SecureStockQuoteService.aar">
-                                            <fileset dir="${SSQ2.dir}"/>
+                                            <fileset dir="${SSQ2.dir}" />
                                         </jar>
 
-                                        <property name="src3"
-                                                  value="services/MTOMSwASampleService/src"/>
-                                        <delete dir="${temp.dir}"/>
-                                        <mkdir dir="${temp.dir}"/>
-                                        <mkdir dir="${classes}"/>
+                                        <property name="src3" value="services/MTOMSwASampleService/src" />
+                                        <delete dir="${temp.dir}" />
+                                        <mkdir dir="${temp.dir}" />
+                                        <mkdir dir="${classes}" />
                                         <javac debug="on" destdir="${classes}" fork="true">
-                                            <src path="${src3}"/>
-                                            <classpath refid="maven.compile.classpath"/>
+                                            <src path="${src3}" />
+                                            <classpath refid="maven.compile.classpath" />
                                         </javac>
-                                        <property name="SSQ3.dir"
-                                                  value="${temp.dir}/MTOMSwASampleService"/>
-                                        <mkdir dir="${SSQ3.dir}"/>
-                                        <mkdir dir="${SSQ3.dir}/META-INF"/>
-                                        <copy file="${src3}/../conf/services.xml"
-                                              tofile="${SSQ3.dir}/META-INF/services.xml"/>
+                                        <property name="SSQ3.dir" value="${temp.dir}/MTOMSwASampleService" />
+                                        <mkdir dir="${SSQ3.dir}" />
+                                        <mkdir dir="${SSQ3.dir}/META-INF" />
+                                        <copy file="${src3}/../conf/services.xml" tofile="${SSQ3.dir}/META-INF/services.xml" />
                                         <copy toDir="${SSQ3.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/*.class"/>
+                                                <include name="**/*.class" />
                                             </fileset>
                                         </copy>
                                         <jar destfile="${services}/MTOMSwASampleService.aar">
-                                            <fileset dir="${SSQ3.dir}"/>
+                                            <fileset dir="${SSQ3.dir}" />
                                         </jar>
 
-                                        <property name="src4"
-                                                  value="services/ReliableStockQuoteService/src"/>
-                                        <delete dir="${temp.dir}"/>
-                                        <mkdir dir="${temp.dir}"/>
-                                        <mkdir dir="${classes}"/>
+                                        <property name="src4" value="services/ReliableStockQuoteService/src" />
+                                        <delete dir="${temp.dir}" />
+                                        <mkdir dir="${temp.dir}" />
+                                        <mkdir dir="${classes}" />
                                         <javac debug="on" destdir="${classes}" fork="true">
-                                            <src path="${src4}"/>
-                                            <classpath refid="maven.compile.classpath"/>
+                                            <src path="${src4}" />
+                                            <classpath refid="maven.compile.classpath" />
                                         </javac>
-                                        <property name="RSQ.dir"
-                                                  value="${temp.dir}/ReliableStockQuoteService"/>
-                                        <mkdir dir="${RSQ.dir}"/>
+                                        <property name="RSQ.dir" value="${temp.dir}/ReliableStockQuoteService" />
+                                        <mkdir dir="${RSQ.dir}" />
 
-                                        <mkdir dir="${RSQ.dir}/META-INF"/>
-                                        <copy file="${src4}/../conf/services.xml"
-                                              tofile="${RSQ.dir}/META-INF/services.xml"/>
-                                        <copy file="${src4}/../wsdl/ReliableStockQuoteService.wsdl"
-                                              tofile="${RSQ.dir}/META-INF/service.wsdl"/>
+                                        <mkdir dir="${RSQ.dir}/META-INF" />
+                                        <copy file="${src4}/../conf/services.xml" tofile="${RSQ.dir}/META-INF/services.xml" />
+                                        <copy file="${src4}/../wsdl/ReliableStockQuoteService.wsdl" tofile="${RSQ.dir}/META-INF/service.wsdl" />
                                         <copy toDir="${RSQ.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/*.class"/>
+                                                <include name="**/*.class" />
                                             </fileset>
                                         </copy>
 
                                         <jar destfile="${services}/ReliableStockQuoteService.aar">
-                                            <fileset dir="${RSQ.dir}"/>
+                                            <fileset dir="${RSQ.dir}" />
                                         </jar>
 
-                                        <property name="src5"
-                                                  value="services/LoadbalanceFailoverService/src"/>
-                                        <delete dir="${temp.dir}"/>
-                                        <mkdir dir="${temp.dir}"/>
-                                        <mkdir dir="${classes}"/>
+                                        <property name="src5" value="services/LoadbalanceFailoverService/src" />
+                                        <delete dir="${temp.dir}" />
+                                        <mkdir dir="${temp.dir}" />
+                                        <mkdir dir="${classes}" />
                                         <javac debug="on" destdir="${classes}" fork="true">
-                                            <src path="${src5}"/>
-                                            <classpath refid="maven.compile.classpath"/>
+                                            <src path="${src5}" />
+                                            <classpath refid="maven.compile.classpath" />
                                         </javac>
 
-                                        <property name="LBFA1.dir" value="${temp.dir}/LBService1"/>
-                                        <mkdir dir="${LBFA1.dir}"/>
+                                        <property name="LBFA1.dir" value="${temp.dir}/LBService1" />
+                                        <mkdir dir="${LBFA1.dir}" />
 
-                                        <mkdir dir="${LBFA1.dir}/META-INF"/>
-                                        <copy file="${src5}/../conf/service1/services.xml"
-                                              tofile="${LBFA1.dir}/META-INF/services.xml"/>
+                                        <mkdir dir="${LBFA1.dir}/META-INF" />
+                                        <copy file="${src5}/../conf/service1/services.xml" tofile="${LBFA1.dir}/META-INF/services.xml" />
                                         <copy toDir="${LBFA1.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/LBService1.class"/>
+                                                <include name="**/LBService1.class" />
                                             </fileset>
                                         </copy>
 
                                         <jar destfile="${services}/LBService1.aar">
-                                            <fileset dir="${LBFA1.dir}"/>
+                                            <fileset dir="${LBFA1.dir}" />
                                         </jar>
 
-                                        <property name="LBFA2.dir" value="${temp.dir}/LBService2"/>
-                                        <mkdir dir="${LBFA2.dir}"/>
+                                        <property name="LBFA2.dir" value="${temp.dir}/LBService2" />
+                                        <mkdir dir="${LBFA2.dir}" />
 
-                                        <mkdir dir="${LBFA2.dir}/META-INF"/>
-                                        <copy file="${src5}/../conf/service2/services.xml"
-                                              tofile="${LBFA2.dir}/META-INF/services.xml"/>
+                                        <mkdir dir="${LBFA2.dir}/META-INF" />
+                                        <copy file="${src5}/../conf/service2/services.xml" tofile="${LBFA2.dir}/META-INF/services.xml" />
                                         <copy toDir="${LBFA2.dir}">
                                             <fileset dir="${classes}">
-                                                <include name="**/LBService2.class"/>
+                                                <include name="**/LBService2.class" />
                                             </fileset>
                                         </copy>
 
                                         <jar destfile="${services}/LBService2.aar">
-                                            <fileset dir="${LBFA2.dir}"/>
+                                            <fileset dir="${LBFA2.dir}" />
                                         </jar>
 
                                     </tasks>
diff --git a/modules/securevault/pom.xml b/modules/securevault/pom.xml
index c32b0ab..764910c 100644
--- a/modules/securevault/pom.xml
+++ b/modules/securevault/pom.xml
@@ -1,162 +1,159 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~  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.
-  -->
-
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.apache.synapse</groupId>
-        <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
-        <relativePath>../../pom.xml</relativePath>
-    </parent>
-    <groupId>org.apache.synapse</groupId>
-    <artifactId>synapse-securevault</artifactId>
-    <name>Apache Synapse - Secure Vault</name>
-    <description>Apache Synapse - Secure vault</description>
-    <packaging>bundle</packaging>
-
-    <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/securevault</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/securevault</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/securevault</url>
-    </scm>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>2.0</version>
-                <configuration>
-                    <source>1.5</source>
-                    <target>1.5</target>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <version>2.2</version>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.0</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-                        <Export-Package>
-                            org.apache.synapse.securevault.*,
-                        </Export-Package>
-                        <Import-Package>
-                            !javax.xml.namespace,
-                            javax.xml.namespace; version=0.0.0,
-                            *;resolution:=optional,
-                        </Import-Package>
-                        <DynamicImport-Package>*</DynamicImport-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.ws.commons.axiom</groupId>
-            <artifactId>axiom-api</artifactId>
-            <version>${axiom.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.ws.commons.axiom</groupId>
-            <artifactId>axiom-impl</artifactId>
-            <version>${axiom.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>${log4j.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>jline</groupId>
-            <artifactId>jline</artifactId>
-            <version>${jline.version}</version>
-        </dependency>
-        <!-- direct dependencies for 3rd party JARs / Util JARs -->
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-            <version>${commons.logging.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>javax.servlet</groupId>
-                    <artifactId>servlet-api</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>logkit</groupId>
-                    <artifactId>logkit</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>javax.servlet</groupId>
-                    <artifactId>servlet-api</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>avalon-framework</groupId>
-                    <artifactId>avalon-framework</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-cli</groupId>
-            <artifactId>commons-cli</artifactId>
-            <version>${commons-cli.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-            <version>${commons_io.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-codec</groupId>
-            <artifactId>commons-codec</artifactId>
-            <version>${commons-codec.version}</version>
-        </dependency>
-
-    </dependencies>
-    <properties>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <axiom.version>1.2.9</axiom.version>
-        <commons.logging.version>1.1.1</commons.logging.version>
-        <junit.version>3.8.2</junit.version>
-        <log4j.version>1.2.14</log4j.version>
-        <commons-cli.version>1.0</commons-cli.version>
-        <jline.version>0.9.94</jline.version>
-        <commons_io.version>2.0</commons_io.version>
-        <commons-codec.version>1.2</commons-codec.version>
-    </properties>
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~  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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.synapse</groupId>
+        <artifactId>Apache-Synapse</artifactId>
+        <version>2.1.0</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+    <groupId>org.apache.synapse</groupId>
+    <artifactId>synapse-securevault</artifactId>
+    <name>Apache Synapse - Secure Vault</name>
+    <description>Apache Synapse - Secure vault</description>
+    <packaging>bundle</packaging>
+
+    <scm>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/securevault</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/securevault</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/securevault</url>
+    </scm>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>2.0</version>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+                <version>2.2</version>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>1.4.0</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+                        <Export-Package>
+                            org.apache.synapse.securevault.*,
+                        </Export-Package>
+                        <Import-Package>
+                            !javax.xml.namespace,
+                            javax.xml.namespace; version=0.0.0,
+                            *;resolution:=optional,
+                        </Import-Package>
+                        <DynamicImport-Package>*</DynamicImport-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.ws.commons.axiom</groupId>
+            <artifactId>axiom-api</artifactId>
+            <version>${axiom.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.ws.commons.axiom</groupId>
+            <artifactId>axiom-impl</artifactId>
+            <version>${axiom.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>${log4j.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>jline</groupId>
+            <artifactId>jline</artifactId>
+            <version>${jline.version}</version>
+        </dependency>
+        <!-- direct dependencies for 3rd party JARs / Util JARs -->
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+            <version>${commons.logging.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>javax.servlet</groupId>
+                    <artifactId>servlet-api</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>logkit</groupId>
+                    <artifactId>logkit</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>javax.servlet</groupId>
+                    <artifactId>servlet-api</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>avalon-framework</groupId>
+                    <artifactId>avalon-framework</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>${junit.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-cli</groupId>
+            <artifactId>commons-cli</artifactId>
+            <version>${commons-cli.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+            <version>${commons_io.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-codec</groupId>
+            <artifactId>commons-codec</artifactId>
+            <version>${commons-codec.version}</version>
+        </dependency>
+
+    </dependencies>
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <axiom.version>1.2.9</axiom.version>
+        <commons.logging.version>1.1.1</commons.logging.version>
+        <junit.version>3.8.2</junit.version>
+        <log4j.version>1.2.14</log4j.version>
+        <commons-cli.version>1.0</commons-cli.version>
+        <jline.version>0.9.94</jline.version>
+        <commons_io.version>2.0</commons_io.version>
+        <commons-codec.version>1.2</commons-codec.version>
+    </properties>
+</project>
diff --git a/modules/tasks/pom.xml b/modules/tasks/pom.xml
index fe0abb8..e468ec5 100644
--- a/modules/tasks/pom.xml
+++ b/modules/tasks/pom.xml
@@ -1,107 +1,104 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~  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.
-  -->
-
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.apache.synapse</groupId>
-        <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
-        <relativePath>../../pom.xml</relativePath>
-    </parent>
-
-    <groupId>org.apache.synapse</groupId>
-    <artifactId>synapse-tasks</artifactId>
-
-    <name>Apache Synapse - Tasks classes</name>
-    <description>Apache Synapse - Tasks classes</description>
-    <packaging>bundle</packaging>
-
-    <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/tasks</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/tasks</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/tasks</url>
-    </scm>
-
-    <build>
-        <plugins>
-
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <version>2.2</version>
-            </plugin>
-
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.0</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-                        <Export-Package>
-                            org.apache.synapse.task.*,
-                        </Export-Package>
-                        <Import-Package>
-                            !javax.xml.namespace,
-                            javax.xml.namespace; version=0.0.0,
-                            *;resolution:=optional,
-                        </Import-Package>
-                        <DynamicImport-Package>*</DynamicImport-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.synapse</groupId>
-            <artifactId>synapse-commons</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.opensymphony</groupId>
-            <artifactId>quartz</artifactId>
-            <version>${quartz.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-jta_1.1_spec</artifactId>
-            <version>${geronimo-spec.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-            <version>${commons-collections.version}</version>
-        </dependency>
-    </dependencies>
-    <properties>
-        <!-- startup, quartz -->
-        <commons-collections.version>3.1</commons-collections.version>
-        <quartz.version>1.6.0</quartz.version>
-        <geronimo-spec.version>1.1</geronimo-spec.version>
-    </properties>
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~  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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.synapse</groupId>
+        <artifactId>Apache-Synapse</artifactId>
+        <version>2.1.0</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.synapse</groupId>
+    <artifactId>synapse-tasks</artifactId>
+
+    <name>Apache Synapse - Tasks classes</name>
+    <description>Apache Synapse - Tasks classes</description>
+    <packaging>bundle</packaging>
+
+    <scm>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/tasks</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/tasks</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/tasks</url>
+    </scm>
+
+    <build>
+        <plugins>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+                <version>2.2</version>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>1.4.0</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+                        <Export-Package>
+                            org.apache.synapse.task.*,
+                        </Export-Package>
+                        <Import-Package>
+                            !javax.xml.namespace,
+                            javax.xml.namespace; version=0.0.0,
+                            *;resolution:=optional,
+                        </Import-Package>
+                        <DynamicImport-Package>*</DynamicImport-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.synapse</groupId>
+            <artifactId>synapse-commons</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.opensymphony</groupId>
+            <artifactId>quartz</artifactId>
+            <version>${quartz.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.geronimo.specs</groupId>
+            <artifactId>geronimo-jta_1.1_spec</artifactId>
+            <version>${geronimo-spec.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
+            <version>${commons-collections.version}</version>
+        </dependency>
+    </dependencies>
+    <properties>
+        <!-- startup, quartz -->
+        <commons-collections.version>3.1</commons-collections.version>
+        <quartz.version>1.6.0</quartz.version>
+        <geronimo-spec.version>1.1</geronimo-spec.version>
+    </properties>
+</project>
diff --git a/modules/transports/core/nhttp/pom.xml b/modules/transports/core/nhttp/pom.xml
index d68ffe9..a2f920f 100644
--- a/modules/transports/core/nhttp/pom.xml
+++ b/modules/transports/core/nhttp/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>synapse-transports</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/nhttp</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/nhttp</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/transports/core/nhttp</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/nhttp</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/nhttp</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/transports/core/nhttp</url>
     </scm>
 
     <build>
diff --git a/modules/transports/core/pipe/pom.xml b/modules/transports/core/pipe/pom.xml
index beb5710..a312850 100644
--- a/modules/transports/core/pipe/pom.xml
+++ b/modules/transports/core/pipe/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>synapse-transports</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/pipe</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/pipe</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/transports/core/pipe</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/pipe</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/pipe</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/transports/core/pipe</url>
     </scm>
 
     <build>
diff --git a/modules/transports/core/vfs/pom.xml b/modules/transports/core/vfs/pom.xml
index d702f68..1aeb421 100644
--- a/modules/transports/core/vfs/pom.xml
+++ b/modules/transports/core/vfs/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>synapse-transports</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/vfs</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/core/vfs</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/transports/core/vfs</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/vfs</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/core/vfs</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/transports/core/vfs</url>
     </scm>
 
     <build>
diff --git a/modules/transports/optional/fix/pom.xml b/modules/transports/optional/fix/pom.xml
index 548dd97..471b0a9 100644
--- a/modules/transports/optional/fix/pom.xml
+++ b/modules/transports/optional/fix/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>synapse-transports</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>bundle</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/optional/fix</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports/optional/fix</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/transports/optional/fix</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/optional/fix</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports/optional/fix</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/transports/optional/fix</url>
     </scm>
 
     <build>
diff --git a/modules/transports/pom.xml b/modules/transports/pom.xml
index 1789ff3..a57ad7c 100644
--- a/modules/transports/pom.xml
+++ b/modules/transports/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -37,9 +34,9 @@
     <packaging>pom</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/transports</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/transports</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/transports</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/transports</url>
     </scm>
 
     <modules>
diff --git a/modules/war/pom.xml b/modules/war/pom.xml
index f6349fd..bff0f33 100644
--- a/modules/war/pom.xml
+++ b/modules/war/pom.xml
@@ -18,15 +18,12 @@
   ~  under the License.
   -->
 
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
@@ -38,9 +35,9 @@
     <packaging>war</packaging>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/war</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/war</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/war</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/war</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/war</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/war</url>
     </scm>
 
     <dependencies>
diff --git a/modules/xar-maven-plugin/pom.xml b/modules/xar-maven-plugin/pom.xml
index 12e5887..a51c954 100644
--- a/modules/xar-maven-plugin/pom.xml
+++ b/modules/xar-maven-plugin/pom.xml
@@ -17,14 +17,12 @@
   ~  specific language governing permissions and limitations
   ~  under the License.
   -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.synapse</groupId>
         <artifactId>Apache-Synapse</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.1.0</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
     <artifactId>synapse-xar-maven-plugin</artifactId>
@@ -33,9 +31,9 @@
     <description>Maven 2 plugin to create Synapse extension archives</description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1/modules/xar-maven-plugin</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1/modules/xar-maven-plugin</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1/modules/xar-maven-plugin</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/xar-maven-plugin</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0/modules/xar-maven-plugin</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0/modules/xar-maven-plugin</url>
     </scm>
     
     <properties>
diff --git a/pom.xml b/pom.xml
index 5e3df1a..e94c9a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,10 +18,7 @@
   ~  under the License.
   -->
 
-<project
-        xmlns="http://maven.apache.org/POM/4.0.0"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
@@ -32,7 +29,7 @@
 
     <groupId>org.apache.synapse</groupId>
     <artifactId>Apache-Synapse</artifactId>
-    <version>2.1.0-SNAPSHOT</version>
+    <version>2.1.0</version>
 
     <name>Apache Synapse</name>
     <description>Apache Synapse</description>
@@ -79,9 +76,9 @@
     </licenses>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/branches/2.1</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/branches/2.1</developerConnection>
-        <url>http://svn.apache.org/viewvc/synapse/branches/2.1</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/synapse/tags/2.1.0</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/synapse/tags/2.1.0</developerConnection>
+        <url>http://svn.apache.org/viewvc/synapse/tags/2.1.0</url>
     </scm>
 
     <organization>
@@ -970,7 +967,7 @@
             <name>Davanum Srinivas</name>
             <id>dims</id>
             <email>davanum@gmail.com</email>
-            <organization></organization>
+            <organization />
         </developer>
         <developer>
             <name>Sanjiva Weerawarana</name>
