view src/alice/test/codesegment/TestRemoteAlice.java @ 14:e3f1b21718b0

implements RemoteDataSegment
author kazz <kazz@cr.ie.u-ryukyu.ac.jp>
date Sun, 15 Jan 2012 00:56:25 +0900
parents
children 45e98e74db96
line wrap: on
line source

package alice.test.codesegment;

import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.channels.SocketChannel;

import alice.codesegment.CodeSegment;
import alice.daemon.AliceDaemon;
import alice.daemon.Config;
import alice.daemon.Connection;
import alice.datasegment.DataSegment;
import alice.datasegment.RemoteDataSegmentManager;

public class TestRemoteAlice {

	public static void main(String[] args) {
		Config conf = new Config(args);
		AliceDaemon daemon = new AliceDaemon(conf);
		daemon.listen();
		boolean connect = true;
		do {
			try {
				SocketChannel sc = SocketChannel.open(new InetSocketAddress(conf.hostname, conf.connectPort));
				Connection connection = new Connection(sc.socket());
				RemoteDataSegmentManager manager = new RemoteDataSegmentManager(connection);
				DataSegment.regist(conf.key, manager);
				connect = false;
				System.out.println("connected");
			} catch (IOException e) {
				try {
					Thread.sleep(500);
				} catch (InterruptedException e1) {
					e1.printStackTrace();
				}
			}
		} while (connect);
		
		CodeSegment cs = new RemoteStartCodeSegment();
		cs.ids.execute();
	}

}