# HG changeset patch # User sugi # Date 1376733319 -32400 # Node ID fac206b7849c46030ac26689b879c290e9c58d79 # Parent c0712e0b0a2418802206c746eb1ac80b4d319e32 create Send/Receive Error class diff -r c0712e0b0a24 -r fac206b7849c src/alice/daemon/Connection.java --- a/src/alice/daemon/Connection.java Fri Aug 16 19:05:43 2013 +0900 +++ b/src/alice/daemon/Connection.java Sat Aug 17 18:55:19 2013 +0900 @@ -7,6 +7,8 @@ import alice.codesegment.SingletonMessage; import alice.datasegment.Command; +import alice.topology.HostMessage; +import alice.topology.manager.reconnection.SendError; public class Connection { @@ -41,7 +43,7 @@ socket.getChannel().write(buffer); } } catch (IOException e) { - + new SendError(new HostMessage(socket.getInetAddress().getHostName(), socket.getPort())).execute(); } } diff -r c0712e0b0a24 -r fac206b7849c src/alice/topology/manager/TopologyFinish.java --- a/src/alice/topology/manager/TopologyFinish.java Fri Aug 16 19:05:43 2013 +0900 +++ b/src/alice/topology/manager/TopologyFinish.java Sat Aug 17 18:55:19 2013 +0900 @@ -3,12 +3,13 @@ import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; +import alice.topology.manager.reconnection.ReceiveConnectionError; public class TopologyFinish extends CodeSegment { public Receiver finish = ids.create(CommandType.TAKE); @Override public void run() { - System.exit(0); + new ReceiveConnectionError(); } } diff -r c0712e0b0a24 -r fac206b7849c src/alice/topology/manager/reconnection/CheckABSName.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/alice/topology/manager/reconnection/CheckABSName.java Sat Aug 17 18:55:19 2013 +0900 @@ -0,0 +1,5 @@ +package alice.topology.manager.reconnection; + +public class CheckABSName { + +} diff -r c0712e0b0a24 -r fac206b7849c src/alice/topology/manager/reconnection/ReceiveConnectionError.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/alice/topology/manager/reconnection/ReceiveConnectionError.java Sat Aug 17 18:55:19 2013 +0900 @@ -0,0 +1,33 @@ +package alice.topology.manager.reconnection; + +import java.io.IOException; +import java.net.Socket; +import java.net.UnknownHostException; + +import alice.codesegment.CodeSegment; +import alice.datasegment.CommandType; +import alice.datasegment.Receiver; +import alice.topology.HostMessage; + +public class ReceiveConnectionError extends CodeSegment { + public Receiver reportInfo = ids.create(CommandType.TAKE); + + public ReceiveConnectionError(){ + reportInfo.setKey("_ERROR"); + } + + @Override + public void run() { + HostMessage message = reportInfo.asClass(HostMessage.class); + try { + Socket socket = new Socket(message.name, message.port); + socket.close(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } catch (IOException e) { + new CheckABSName(); + } + new ReceiveConnectionError(); + } + +} diff -r c0712e0b0a24 -r fac206b7849c src/alice/topology/manager/reconnection/SendError.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/alice/topology/manager/reconnection/SendError.java Sat Aug 17 18:55:19 2013 +0900 @@ -0,0 +1,18 @@ +package alice.topology.manager.reconnection; + +import alice.codesegment.CodeSegment; +import alice.topology.HostMessage; + +public class SendError extends CodeSegment{ + private HostMessage message; + + public SendError(HostMessage mes){ + message = mes; + } + + @Override + public void run() { + ods.put("manager", "_ERROR", message); + } + +} diff -r c0712e0b0a24 -r fac206b7849c src/alice/topology/node/IncomingAbstractHostName.java --- a/src/alice/topology/node/IncomingAbstractHostName.java Fri Aug 16 19:05:43 2013 +0900 +++ b/src/alice/topology/node/IncomingAbstractHostName.java Sat Aug 17 18:55:19 2013 +0900 @@ -20,7 +20,7 @@ IncomingConnectionInfo cs = new IncomingConnectionInfo(absName, 0); cs.hostInfo.setKey("manager", absName); host.setABSName(absName); - ods.put("manager","_ABS", host); + ods.put("manager","_ABS_IP", host); } }