view src/main/java/christie/topology/node/ConfigurationFinish.java @ 170:f9f83bb213e8

fix topology manager
author akahori
date Tue, 22 Jan 2019 18:32:39 +0900
parents 5c608008c29a
children 6eb548c188e5
line wrap: on
line source

package christie.topology.node;

import christie.annotation.Peek;
import christie.annotation.Take;
import christie.codegear.CodeGear;
import christie.codegear.CodeGearManager;
import christie.topology.TopologyDataGear;

public class ConfigurationFinish extends CodeGear {

    @Take
    String reverseNodeName;

    @Take
    int reverseCount;

    @Peek
    int connectNodeNum;

    @Peek
    TopologyNodeConfig topologyNodeConfig;


    public ConfigurationFinish() {
    }

    @Override
    protected void run(CodeGearManager cgm) {
        reverseCount++;
        if (reverseCount >= connectNodeNum) {
            getDGM(topologyNodeConfig.getManagerKey()).put("nodePrepareDone", "done");
            cgm.setup(new Start());


            /*if (topologyNodeConfig.useKeepAlive)
                cgm.setup(new KeepAlive());*/
            cgm.setup(new PrepareToClose());

            /*ClosedEventManager closedEventManager = new ClosedEventManager();
            closedEventManager.register(cgm, DeleteConnection.class);
            cgm.setup(closedEventManager);*/
            return;

        }else {
            getLocalDGM().put("reverseCount", reverseCount);
            cgm.setup(new ConfigurationFinish());
        }
    }
}