view src/main/java/christie/test/ring/ConnectManager.java @ 89:2c22b23fa725

update refactor
author akahori
date Sat, 15 Sep 2018 10:34:04 +0900
parents 6660ebba441e
children
line wrap: on
line source

package christie.test.ring;

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

public class ConnectManager extends CodeGear{
    @Take
    int nodePort;

    @Peek
    int max;

    @Override
    protected void run(CodeGearManager cgm) {
        String nodeName = "node"+(nodePort-10000);
        cgm.createRemoteDGM(nodeName, "localhost", nodePort);
        getDGM(nodeName).put("hostname", nodeName);
        getDGM(nodeName).put("address", "localhost");
        if (nodePort-10000 < max-1){
            getDGM(nodeName).put("port", nodePort+1);
        } else {
            getDGM(nodeName).put("port", 10000);
            cgm.setup(new StartCount());
            getLocalDGM().put("start_count", 1);
        }
        cgm.setup(new ConnectManager());
    }
}