Mercurial > hg > Database > Alice
view src/main/java/alice/topology/node/RegisterEvent.java @ 469:b31b1d197c42 dispose
Add Disconnect Event Manager
author | sugi |
---|---|
date | Sun, 23 Nov 2014 22:14:30 +0900 |
parents | |
children | 15eeb439830c 767d93626b88 3284428f525e |
line wrap: on
line source
package alice.topology.node; import java.util.List; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; public class RegisterEvent<T> extends CodeSegment { private Receiver info = ids.create(CommandType.TAKE); // new event private Receiver info1 = ids.create(CommandType.TAKE); // event list public RegisterEvent() { info.setKey("_REGISTERDEVENT"); info1.setKey("_DEVENTLIST"); } @SuppressWarnings("unchecked") @Override public void run() { List<Class<T>> eventList = info1.asClass(List.class); Class<T> clazz = (Class<T>) info.getObj(); // if put class type doesnt CodeSegment, not register if ("CloseEventCodeSegment".equals(clazz.getSuperclass().getSimpleName())|| "CodeSegment".equals(clazz.getSuperclass().getSimpleName())) { eventList.add(clazz); } ods.put(info1.key, eventList); } }