X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft-example%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fexample%2FLogGenerator.java;h=9559f1cff422c75fc116ffbfa321338eda320175;hp=f40952300ad20f47f6e4f040b54a9316be888171;hb=e84f63ee098fff5b02cbce1281ca0d1208f966fa;hpb=5da76746641dd1c9c5917b67faaab7245249a806 diff --git a/opendaylight/md-sal/sal-akka-raft-example/src/main/java/org/opendaylight/controller/cluster/example/LogGenerator.java b/opendaylight/md-sal/sal-akka-raft-example/src/main/java/org/opendaylight/controller/cluster/example/LogGenerator.java index f40952300a..9559f1cff4 100644 --- a/opendaylight/md-sal/sal-akka-raft-example/src/main/java/org/opendaylight/controller/cluster/example/LogGenerator.java +++ b/opendaylight/md-sal/sal-akka-raft-example/src/main/java/org/opendaylight/controller/cluster/example/LogGenerator.java @@ -5,57 +5,60 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.controller.cluster.example; import akka.actor.ActorRef; -import org.opendaylight.controller.cluster.example.messages.KeyValue; - import java.util.HashMap; import java.util.Map; import java.util.Random; +import org.opendaylight.controller.cluster.example.messages.KeyValue; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Created by kramesha on 7/16/14. */ public class LogGenerator { - private Map clientToLoggingThread = new HashMap<>(); + private static final Logger LOG = LoggerFactory.getLogger(LogGenerator.class); + + private final Map clientToLoggingThread = new HashMap<>(); - public void startLoggingForClient(ActorRef client) { + public void startLoggingForClient(final ActorRef client) { LoggingThread lt = new LoggingThread(client); clientToLoggingThread.put(client, lt); - Thread t = new Thread(lt); - t.start(); + new Thread(lt).start(); } - public void stopLoggingForClient(ActorRef client) { + public void stopLoggingForClient(final ActorRef client) { clientToLoggingThread.get(client).stopLogging(); clientToLoggingThread.remove(client); } - public class LoggingThread implements Runnable { + public static class LoggingThread implements Runnable { + private final Random random = new Random(); + private final ActorRef clientActor; - private ActorRef clientActor; private volatile boolean stopLogging = false; - public LoggingThread(ActorRef clientActor) { + public LoggingThread(final ActorRef clientActor) { this.clientActor = clientActor; } + @Override public void run() { - Random r = new Random(); while (true) { if (stopLogging) { - System.out.println("Logging stopped for client:" + clientActor.path()); + LOG.info("Logging stopped for client: {}", clientActor.path()); break; } String key = clientActor.path().name(); - int random = r.nextInt(100); - clientActor.tell(new KeyValue(key+"-key-" + random, "value-" + random), null); + int randomInt = random.nextInt(100); + clientActor.tell(new KeyValue(key + "-key-" + randomInt, "value-" + randomInt), null); + try { - Thread.sleep((random%10) * 1000); + Thread.sleep(randomInt % 10 * 1000L); } catch (InterruptedException e) { - e.printStackTrace(); + LOG.info("Interrupted while sleeping", e); } } } @@ -67,9 +70,5 @@ public class LogGenerator { public void startLogging() { stopLogging = false; } - - } - - }