Skip to content
Snippets Groups Projects
ActionJoinAnswer.java 976 B
Newer Older
Michael Kmoch's avatar
Michael Kmoch committed
package fucoin.actions.join;

import java.util.HashMap;
import java.util.Map.Entry;

import akka.actor.ActorRef;
import akka.actor.UntypedActorContext;
import fucoin.Wallet;
import fucoin.actions.ClientAction;
import fucoin.actions.persist.ActionSearchMyWallet;

// Returns some neighbors that might be used as known
// and/or local neighbors
public class ActionJoinAnswer extends ClientAction{
	public final HashMap<String, ActorRef> someNeighbors = new HashMap<>();
	protected void onAction(ActorRef sender, ActorRef self,
			UntypedActorContext context, Wallet wallet) {
		log("Addressed to "+self.path().name()+" from "+sender.path().name()+": someNeighbors:"+someNeighbors);
Michael Kmoch's avatar
Michael Kmoch committed
		for(Entry<String, ActorRef> neighbor : someNeighbors.entrySet()){
			wallet.addKnownNeighbor(neighbor.getKey(),neighbor.getValue());
		}
		for(Entry<String, ActorRef> neighbor : someNeighbors.entrySet()){
			neighbor.getValue().tell(new ActionSearchMyWallet(wallet.getName()), self);
		}
	}

}