Mercurial > hg > Members > nobuyasu > Alice > DPPAlice
view src/alice/test/dpp/codesegment/fork/ForkStateTakeCodeSegment.java @ 26:80023cb92594 draft
add some CodeSegment. ForkStateTake, CheckForkOwnerCodeSegment, TakeForkManager
author | one |
---|---|
date | Tue, 11 Dec 2012 16:07:41 +0900 |
parents | |
children | d45de183af46 |
line wrap: on
line source
package alice.test.dpp.codesegment.fork; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; import alice.test.dpp.codesegment.philosophy.CheckForkOwnerCodeSegment; import alice.test.dpp.datasegment.Fork; import alice.test.dpp.datasegment.Philosophy; public class ForkStateTakeCodeSegment extends CodeSegment { Receiver arg1 = ids.create(CommandType.TAKE); Receiver arg2 = ids.create(CommandType.TAKE); public ForkStateTakeCodeSegment(String pName, String forkName) { arg1.setKey(pName); arg2.setKey(forkName); } @Override public void run() { Philosophy phil = arg1.asClass(Philosophy.class); Fork fork = arg2.asClass(Fork.class); fork.takeFork(phil.getName()); new CheckForkOwnerCodeSegment(phil.getName(), fork.getForkName()); ods.update("local", phil.getName(), phil); ods.update("local", fork.getForkName(), fork); } }