Newer
Older
package fucoin.actions.join;
import akka.actor.ActorRef;
import akka.actor.UntypedActorContext;
import fucoin.actions.transaction.ActionInvokeDistributedCommittedTransfer;
Simon Könnecke
committed
import fucoin.supervisor.SuperVisorImpl;
public class ServerActionJoin extends SuperVisorAction {
Simon Könnecke
committed
private String name;
Simon Könnecke
committed
public ServerActionJoin(String name) {
this.name = name;
}
Simon Könnecke
committed
@Override
protected void onAction(ActorRef sender, ActorRef self,
UntypedActorContext context, SuperVisorImpl node) {
ActionJoinAnswer aja = new ActionJoinAnswer(node.getSelf());
Simon Könnecke
committed
aja.someNeighbors.putAll(node.getKnownNeighbors());
sender.tell(aja, self);
node.addKnownNeighbor(name, sender);
self.tell(
new ActionInvokeDistributedCommittedTransfer(self, sender, 100),
Simon Könnecke
committed
sender);
}