This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit ca9ed072f45e52dbbc280d8a996bd862d11497ec
Author: bd2019us <>
AuthorDate: Fri May 10 18:44:16 2019 -0500

    [CAMEL-13499] Use Random.nextDouble instead of Math.random for better 
performance
---
 .../org/apache/camel/example/cdi/metrics/UnreliableService.java     | 4 +++-
 .../java/org/apache/camel/loanbroker/CreditAgencyProcessor.java     | 6 ++++--
 .../main/java/org/apache/camel/loanbroker/bank/BankProcessor.java   | 4 +++-
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git 
a/examples/camel-example-cdi-metrics/src/main/java/org/apache/camel/example/cdi/metrics/UnreliableService.java
 
b/examples/camel-example-cdi-metrics/src/main/java/org/apache/camel/example/cdi/metrics/UnreliableService.java
index a4cd023..2441ffd 100644
--- 
a/examples/camel-example-cdi-metrics/src/main/java/org/apache/camel/example/cdi/metrics/UnreliableService.java
+++ 
b/examples/camel-example-cdi-metrics/src/main/java/org/apache/camel/example/cdi/metrics/UnreliableService.java
@@ -21,13 +21,15 @@ import javax.enterprise.context.ApplicationScoped;
 import com.codahale.metrics.annotation.Metered;
 import org.apache.camel.Exchange;
 import org.apache.camel.RuntimeExchangeException;
+import java.util.Random;
 
 @ApplicationScoped
 public class UnreliableService {
 
     @Metered
     public void attempt(Exchange exchange) {
-        if (Math.random() < 0.5) {
+       Random rand = new Random();
+        if (rand.nextDouble() < 0.5) {
             throw new RuntimeExchangeException("Random failure", exchange);
         }
     }
diff --git 
a/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/CreditAgencyProcessor.java
 
b/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/CreditAgencyProcessor.java
index 36dbf08..4b308e7 100644
--- 
a/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/CreditAgencyProcessor.java
+++ 
b/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/CreditAgencyProcessor.java
@@ -18,14 +18,16 @@ package org.apache.camel.loanbroker;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import java.util.Random;
 
 //START SNIPPET: creditAgency
 public class CreditAgencyProcessor implements Processor {
 
     public void process(Exchange exchange) throws Exception {
         String ssn = exchange.getIn().getHeader(Constants.PROPERTY_SSN, 
String.class);
-        int score = (int) (Math.random() * 600 + 300);
-        int hlength = (int) (Math.random() * 19 + 1);
+        Random rand = new Random();
+       int score = (int) (rand.nextDouble() * 600 + 300);
+        int hlength = (int) (rand.nextDouble() * 19 + 1);
 
         exchange.getOut().setHeader(Constants.PROPERTY_SCORE, score);
         exchange.getOut().setHeader(Constants.PROPERTY_HISTORYLENGTH, hlength);
diff --git 
a/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/bank/BankProcessor.java
 
b/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/bank/BankProcessor.java
index 73baaed..e6ebb28 100644
--- 
a/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/bank/BankProcessor.java
+++ 
b/examples/camel-example-loan-broker-jms/src/main/java/org/apache/camel/loanbroker/bank/BankProcessor.java
@@ -20,6 +20,7 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
 import org.apache.camel.loanbroker.Constants;
 
+import java.util.Random;
 //START SNIPPET: bank
 public class BankProcessor implements Processor {
     private final String bankName;
@@ -33,7 +34,8 @@ public class BankProcessor implements Processor {
     public void process(Exchange exchange) throws Exception {
         String ssn = exchange.getIn().getHeader(Constants.PROPERTY_SSN, 
String.class);
         Integer historyLength = 
exchange.getIn().getHeader(Constants.PROPERTY_HISTORYLENGTH, Integer.class);
-        double rate = primeRate + (double) (historyLength / 12) / 10 + 
(Math.random() * 10) / 10;
+        Random rand = new Random();
+       double rate = primeRate + (double) (historyLength / 12) / 10 + 
(rand.nextDouble()  * 10) / 10;
 
         // set reply details as headers
         exchange.getOut().setHeader(Constants.PROPERTY_BANK, bankName);

Reply via email to