package org.akka.essentials.wc.mapreduce.example.client;
import akka.actor.ActorRef;
import akka.actor.UntypedActor;
public class ClientActor extends UntypedActor {
private ActorRef remoteServer = null;
@SuppressWarnings("unused")
private ActorRef fileReadActor = null;
private long start;
/**
* @param args
*/
public ClientActor(ActorRef inRemoteServer) {
remoteServer = inRemoteServer;
}
@Override
public void onReceive(Object message) throws Exception {
if (message instanceof String) {
String msg = (String) message;
remoteServer.tell(msg);
}
}
@Override
public void preStart() {
start = System.currentTimeMillis();
}
@Override
public void postStop() {
// tell the world that the calculation is complete
long timeSpent = (System.currentTimeMillis() - start) / 1000;
System.out
.println(String
.format("\n\tClientActor estimate: \t\t\n\tCalculation time: \t%s Secs",
timeSpent));
}
}