Added more type variability in the route tests
diff --git a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/BlockingProducerToSedaTest.java b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/BlockingProducerToSedaTest.java
index e76a5ba..59b9a64 100644
--- a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/BlockingProducerToSedaTest.java
+++ b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/BlockingProducerToSedaTest.java
@@ -1,5 +1,6 @@
 package org.apache.camel.itest.jmh;
 
+import java.io.File;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.camel.CamelContext;
@@ -47,6 +48,9 @@
 
         CamelContext context;
         ProducerTemplate producerTemplate;
+        File sampleFile = new File("some-file");
+        Integer someInt = Integer.valueOf(1);
+        Long someLong = Long.valueOf(2);
 
         @Setup(Level.Trial)
         public void initialize() throws Exception {
@@ -77,7 +81,15 @@
     }
 
 
-
+    @OutputTimeUnit(TimeUnit.MILLISECONDS)
+    @BenchmarkMode({Mode.Throughput, Mode.AverageTime, Mode.SingleShotTime})
+    @Benchmark
+    public void sendBlockingWithMultipleTypes(BlockingProducerToSedaTest.BenchmarkState state, Blackhole bh) {
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", "test");
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someInt);
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someLong);
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.sampleFile);
+    }
 
 
 }
diff --git a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/DirectConcurrentTest.java b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/DirectConcurrentTest.java
index 2ce0d82..66373e8 100644
--- a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/DirectConcurrentTest.java
+++ b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/DirectConcurrentTest.java
@@ -16,6 +16,9 @@
  */
 package org.apache.camel.itest.jmh;
 
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.camel.CamelContext;
@@ -69,6 +72,10 @@
     public static class BenchmarkState {
         CamelContext camel;
         ProducerTemplate producer;
+        String someString = "test1";
+        File sampleFile = new File("some-file");
+        Integer someInt = Integer.valueOf(1);
+        Long someLong = Long.valueOf(2);
 
         @Setup(Level.Trial)
         public void initialize() {
@@ -114,10 +121,17 @@
 
     @Benchmark
     public void directConcurrentTest(BenchmarkState state, Blackhole bh) {
-        ProducerTemplate template = state.producer;
-        for (int i = 0; i < 50000; i++) {
-            template.sendBody("direct:start", "Hello " + i);
-        }
+        state.producer.sendBody("direct:start", state.someString);
     }
 
+    @Benchmark
+    public void directConcurrentTestWithMultipleTypes(BenchmarkState state, Blackhole bh) {
+        state.producer.sendBody("direct:start", state.someString);
+        state.producer.sendBody("direct:start", state.someInt);
+        state.producer.sendBody("direct:start", state.someLong);
+        state.producer.sendBody("direct:start", state.sampleFile);
+
+    }
+
+
 }
diff --git a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/SedaRoundTripTest.java b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/SedaRoundTripTest.java
index 46c4390..3503e6e 100644
--- a/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/SedaRoundTripTest.java
+++ b/tests/camel-jmh/src/test/java/org/apache/camel/itest/jmh/SedaRoundTripTest.java
@@ -1,5 +1,6 @@
 package org.apache.camel.itest.jmh;
 
+import java.io.File;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.camel.CamelContext;
@@ -50,6 +51,11 @@
         ProducerTemplate producerTemplate;
         ConsumerTemplate consumerTemplate;
 
+        String someString = "test1";
+        File sampleFile = new File("some-file");
+        Integer someInt = Integer.valueOf(1);
+        Long someLong = Long.valueOf(2);
+
         @Setup(Level.Trial)
         public void initialize() throws Exception {
             context = new DefaultCamelContext();
@@ -65,12 +71,27 @@
     @BenchmarkMode({Mode.Throughput, Mode.AverageTime, Mode.SingleShotTime})
     @Benchmark
     public void sendBlocking(SedaRoundTripTest.BenchmarkState state, Blackhole bh) {
-        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", "test");
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someString);
         bh.consume(state.consumerTemplate.receive("seda:test"));
     }
 
 
+    @OutputTimeUnit(TimeUnit.MILLISECONDS)
+    @BenchmarkMode({Mode.Throughput, Mode.AverageTime, Mode.SingleShotTime})
+    @Benchmark
+    public void sendBlockingWithMultipleTypes(SedaRoundTripTest.BenchmarkState state, Blackhole bh) {
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someString);
+        bh.consume(state.consumerTemplate.receive("seda:test"));
 
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someLong);
+        bh.consume(state.consumerTemplate.receive("seda:test"));
+
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.someInt);
+        bh.consume(state.consumerTemplate.receive("seda:test"));
+
+        state.producerTemplate.sendBody("seda:test?blockWhenFull=true&offerTimeout=1000", state.sampleFile);
+        bh.consume(state.consumerTemplate.receive("seda:test"));
+    }
 
 
 }