Author: hiranya
Date: Sun Aug  4 00:36:25 2013
New Revision: 1510082

URL: http://svn.apache.org/r1510082
Log:
adding sample throttle mediator serialization test

Added:
    
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializationTest.java
Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializer.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/sample/SamplingThrottleMediator.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializer.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializer.java?rev=1510082&r1=1510081&r2=1510082&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializer.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializer.java
 Sun Aug  4 00:36:25 2013
@@ -42,10 +42,14 @@ public class SamplingThrottleMediatorSer
         if (samplingThrottleMediator.getId() != null) {
             samplerElem.addAttribute("id", samplingThrottleMediator.getId(), 
nullNS);
         }
-        samplerElem.addAttribute("rate",
-                Integer.toString(samplingThrottleMediator.getSamplingRate()), 
nullNS);
-        samplerElem.addAttribute("unitTime",
-                Long.toString(samplingThrottleMediator.getUnitTime()), nullNS);
+        if (samplingThrottleMediator.getSamplingRate() != 1) {
+            samplerElem.addAttribute("rate",
+                    
Integer.toString(samplingThrottleMediator.getSamplingRate()), nullNS);
+        }
+        if (samplingThrottleMediator.getUnitTime() != 1000) {
+            samplerElem.addAttribute("unitTime",
+                    Long.toString(samplingThrottleMediator.getUnitTime()), 
nullNS);
+        }
 
         if (samplingThrottleMediator.isMessageQueueExplicitlySet()) {
             OMElement messageQueueElem = fac.createOMElement("messageQueue", 
synNS);

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/sample/SamplingThrottleMediator.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/sample/SamplingThrottleMediator.java?rev=1510082&r1=1510081&r2=1510082&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/sample/SamplingThrottleMediator.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/sample/SamplingThrottleMediator.java
 Sun Aug  4 00:36:25 2013
@@ -33,8 +33,9 @@ import java.util.Timer;
 import java.util.TimerTask;
 
 /**
- * This implements the well known <code>Sample</code> EIP (Enterprise 
Integration Pattern), which controls the flow
- * of messages and limit the rate at which the messages are flowing through 
the sampler</p>
+ * <p>This implements the well known <code>Sample</code> EIP (Enterprise 
Integration Pattern),
+ * which controls the flow of messages and limit the rate at which the 
messages are flowing
+ * through the sampler</p>
  *
  * <p>Please note that the usage of this will require the sampler to be on the 
out-flow as well to correctly
  * determine & to manage the rate.</p>

Added: 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializationTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializationTest.java?rev=1510082&view=auto
==============================================================================
--- 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializationTest.java
 (added)
+++ 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/SamplingThrottleMediatorSerializationTest.java
 Sun Aug  4 00:36:25 2013
@@ -0,0 +1,77 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.synapse.config.xml;
+
+public class SamplingThrottleMediatorSerializationTest extends 
AbstractTestCase {
+
+    private SamplingThrottleMediatorFactory factory;
+    private SamplingThrottleMediatorSerializer serializer;
+
+    public SamplingThrottleMediatorSerializationTest() {
+        super(SamplingThrottleMediatorSerializationTest.class.getName());
+        factory = new SamplingThrottleMediatorFactory();
+        serializer = new SamplingThrottleMediatorSerializer();
+    }
+
+    public void testSamplerMediatorSerializationScenarioOne() throws Exception 
{
+        String inputXml = "<sampler 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<target sequence=\"foo\"/></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+
+    public void testSamplerMediatorSerializationScenarioTwo() throws Exception 
{
+        String inputXml = "<sampler xmlns=\"http://ws.apache.org/ns/synapse\"; 
rate=\"10\" unitTime=\"60000\">" +
+                "<target sequence=\"foo\"/></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+
+    public void testSamplerMediatorSerializationScenarioThree() throws 
Exception {
+        String inputXml = "<sampler xmlns=\"http://ws.apache.org/ns/synapse\"; 
id=\"bar\">" +
+                "<target sequence=\"foo\"/></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+
+    public void testSamplerMediatorSerializationScenarioFour() throws 
Exception {
+        String inputXml = "<sampler 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<messageQueue 
class=\"org.apache.synapse.mediators.eip.sample.UnboundedMessageQueue\"/>" +
+                "<target sequence=\"foo\"/></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+
+    public void testSamplerMediatorSerializationScenarioFive() throws 
Exception {
+        String inputXml = "<sampler xmlns=\"http://ws.apache.org/ns/synapse\"; 
id=\"test\" rate=\"10\" unitTime=\"60000\">" +
+                "<messageQueue 
class=\"org.apache.synapse.mediators.eip.sample.UnboundedMessageQueue\"/>" +
+                "<target sequence=\"foo\"/></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+
+    public void testSamplerMediatorSerializationScenarioSix() throws Exception 
{
+        String inputXml = "<sampler xmlns=\"http://ws.apache.org/ns/synapse\"; 
id=\"test\" rate=\"10\" unitTime=\"60000\">" +
+                "<messageQueue 
class=\"org.apache.synapse.mediators.eip.sample.UnboundedMessageQueue\"/>" +
+                "<target><sequence><log/></sequence></target></sampler>";
+        assertTrue(serialization(inputXml, factory, serializer));
+        assertTrue(serialization(inputXml, serializer));
+    }
+}


Reply via email to