|
Akka/Scala example source code file (TransformationFrontendMain.java)
The TransformationFrontendMain.java Akka example source codepackage sample.cluster.transformation; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import com.typesafe.config.Config; import com.typesafe.config.ConfigFactory; import sample.cluster.transformation.TransformationMessages.TransformationJob; import scala.concurrent.ExecutionContext; import scala.concurrent.duration.Duration; import scala.concurrent.duration.FiniteDuration; import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.actor.Props; import akka.dispatch.OnSuccess; import akka.util.Timeout; import static akka.pattern.Patterns.ask; public class TransformationFrontendMain { public static void main(String[] args) { // Override the configuration of the port when specified as program argument final String port = args.length > 0 ? args[0] : "0"; final Config config = ConfigFactory.parseString("akka.remote.netty.tcp.port=" + port). withFallback(ConfigFactory.parseString("akka.cluster.roles = [frontend]")). withFallback(ConfigFactory.load()); ActorSystem system = ActorSystem.create("ClusterSystem", config); final ActorRef frontend = system.actorOf( Props.create(TransformationFrontend.class), "frontend"); final FiniteDuration interval = Duration.create(2, TimeUnit.SECONDS); final Timeout timeout = new Timeout(Duration.create(5, TimeUnit.SECONDS)); final ExecutionContext ec = system.dispatcher(); final AtomicInteger counter = new AtomicInteger(); system.scheduler().schedule(interval, interval, new Runnable() { public void run() { ask(frontend, new TransformationJob("hello-" + counter.incrementAndGet()), timeout).onSuccess(new OnSuccess<Object>() { public void onSuccess(Object result) { System.out.println(result); } }, ec); } }, ec); } } Other Akka source code examplesHere is a short list of links related to this Akka TransformationFrontendMain.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.