# HG changeset patch # User one # Date 1353232034 -32400 # Node ID d4663dfd91ae6d838d6f02915f0effe95a752106 # Parent 6687aa9dd55e247a3746af847f90c626dd5a77a9 add reconnection process when the connection fails. diff -r 6687aa9dd55e -r d4663dfd91ae src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java --- a/src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java Tue Nov 06 15:36:46 2012 +0900 +++ b/src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java Sun Nov 18 18:47:14 2012 +0900 @@ -129,7 +129,7 @@ echo.notfoundParent(); } if(echo.lostHost()) break; - counter++; + counter++; } } else if (isRunning) { logger.severe("Close proxy: "); diff -r 6687aa9dd55e -r d4663dfd91ae src/main/java/jp/ac/u_ryukyu/treevnc/client/EchoClient.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/client/EchoClient.java Tue Nov 06 15:36:46 2012 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/client/EchoClient.java Sun Nov 18 18:47:14 2012 +0900 @@ -175,6 +175,7 @@ client.run(); break; } catch (IOException e) { + System.out.println("EchoClient L178"); continue; } } @@ -231,11 +232,23 @@ public Socket createSocketForClient(Socket soc) throws IOException { BufferedReader is = new BufferedReader(new InputStreamReader( soc.getInputStream())); + int count=0; String tempParentAddress = is.readLine(); parentNum = is.readLine(); if ("reconnection".equals(tempParentAddress)) { System.out.println("-----------------into function \n" + parentNum); - return new Socket(parentAddress, Integer.parseInt(parentNum)); + while(true) + try{ + return new Socket(parentAddress, Integer.parseInt(parentNum)); + } catch(IOException e) { + try { + Thread.sleep(1000); + } catch (InterruptedException e1) { + e1.printStackTrace(); + } + if(count++ > 5) break; + continue; + } } treeNum = is.readLine(); leaderFlag = is.readLine(); diff -r 6687aa9dd55e -r d4663dfd91ae src/main/java/jp/ac/u_ryukyu/treevnc/client/WaitReply.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/client/WaitReply.java Tue Nov 06 15:36:46 2012 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/client/WaitReply.java Sun Nov 18 18:47:14 2012 +0900 @@ -38,12 +38,14 @@ echo.client.setSocket(echo.createSocketForClient(clientSocket)); // hult(); // client.init(); + System.out.println("------before run()"); echo.client.run(); echoServer.close(); } } catch (BindException e) { break; } catch (IOException e) { + System.out.println("Error in WaitReply L47"); System.out.println(e); } }