view src/alice/test/topology/ring/FirstRingMessagePassing.java @ 32:2bfb796b0fa1

change method to create DataSegmentReceiver
author kazz <kazz@cr.ie.u-ryukyu.ac.jp>
date Tue, 17 Jan 2012 20:49:26 +0900
parents 5c704b9a9a87
children 20c67f673224
line wrap: on
line source

package alice.test.topology.ring;

import org.msgpack.type.ValueFactory;

import alice.codesegment.CodeSegment;
import alice.datasegment.CommandType;
import alice.datasegment.DataSegmentReceiver;

public class FirstRingMessagePassing extends CodeSegment {
	
	DataSegmentReceiver counter = ids.createReceiver(CommandType.TAKE);
	
	@Override
	public void run() {
		int counter = this.counter.asInteger();
		System.out.println(++counter);

		ods.put("right", "counter", counter);
		
		if (counter >= 10) {
			ods.put("right", "finish", ValueFactory.createNilValue());
			return;	
		}
		
		FirstRingMessagePassing cs = new FirstRingMessagePassing();
		cs.counter.setKey("local", "counter");
	}

}