view src/main/java/christie/test/ring/FlipCodeGear.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 FlipCodeGear extends CodeGear{
    @Take
    int count;

    @Take
    long timestamp;

    @Peek
    String hostname;

    @Take
    boolean start;

    @Override
    protected void run(CodeGearManager cgm) {
        System.out.println(hostname + " : count " + count);
        if (count == 5) {
            System.out.println(System.currentTimeMillis() - timestamp);
        } else {
            getDGM("remote").put("data", timestamp);
            if (hostname.equals("node0")) {
                getDGM("remote").put("count", ++count);
            } else {
                getDGM("remote").put("count", count);
            }
        }
        cgm.setup(new FlipCodeGear());
        getLocalDGM().put("start", start);
    }
}