view src/main/java/christie/test/topology/paxos/proposer/SendAcceptRequestCodeGear.java @ 181:33b4966d4d24

update paxos
author akahori
date Sat, 02 Feb 2019 11:42:48 +0900
parents c6250ad544e0
children a4c221542fa9
line wrap: on
line source

package christie.test.topology.paxos.proposer;

import christie.annotation.Peek;
import christie.annotation.Take;
import christie.codegear.CodeGear;
import christie.codegear.CodeGearManager;
import christie.test.topology.paxos.Proposal;
import christie.topology.TopologyDataGear;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import java.util.List;
import java.util.concurrent.TimeUnit;


public class SendAcceptRequestCodeGear extends CodeGear {

    @Take
    Proposal acceptProposal;

    @Peek
    TopologyDataGear topoDG;

    Logger logger = LogManager.getLogger(SendPrepareRequestCodeGear.class);

    @Override
    protected void run(CodeGearManager cgm) {
        List<String> _CLIST = topoDG.getConnectionList();
        for(String acceptorName: _CLIST)
            put(acceptorName, "acceptProposal", acceptProposal);

        logger.debug("send accept request : " + acceptProposal);

        put("sendedProposal", acceptProposal);
        cgm.setup(new RecieveAcceptedCodeGear());
    }
}