view src/main/java/alice/topology/manager/keeparive/CreateTask.java @ 599:3284428f525e dispose

add MetaCodeSegment & MetaDSM
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Mon, 15 Feb 2016 01:16:35 +0900
parents 28627bb3eeda
children
line wrap: on
line source

package alice.topology.manager.keeparive;

import java.util.List;

import alice.codesegment.CodeSegment;
import alice.codesegment.MetaCodeSegment;
import alice.datasegment.CommandType;
import alice.datasegment.Receiver;

public class CreateTask extends MetaCodeSegment {
    private Receiver info = ids.create(CommandType.PEEK);
    private Receiver info1 = ids.create(CommandType.TAKE);
    public static int INTERVAL = 5;

    public CreateTask(){
        info.setKey("_CLIST");
        info1.setKey("_SCHEDULER");
    }

    @Override
    public void run(){
        @SuppressWarnings("unchecked")
        List<String> clist = info.asClass(List.class);
        ListManager list = info1.asClass(ListManager.class);

        int i = INTERVAL;
        for (String manager : clist){
            TaskInfo task = new TaskInfo(TaskType.PING);
            task.setInfo(manager, "_FORM_"+manager, i * 1000);
            list.addTask(task);
            i +=INTERVAL;
        }
        ods.update(info1.key, list);

    }
}