From a07e9c8a8bdf5b87c00bf1289a293d4e86dd143f Mon Sep 17 00:00:00 2001 From: Takuya Ono Date: Thu, 9 Aug 2007 17:00:30 +0000 Subject: [PATCH] BUGFIX: [ #10834 ] After abnormal Reciver Port number setteing, the service is disabled forever. --- deploy/mdc.zip | Bin 88161 -> 88541 bytes src/org/jent/checksmtp/SMTPclient.java | 42 +++++++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/deploy/mdc.zip b/deploy/mdc.zip index 000571da0de0e11b8895b14b977346f3b0bf286f..d41e9c9bf517f6b84e1dc4266a21291217d1bd46 100644 GIT binary patch delta 25547 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 M0W1caR{;P30Cj3=6aWAK diff --git a/src/org/jent/checksmtp/SMTPclient.java b/src/org/jent/checksmtp/SMTPclient.java index 4bb6fb6..1cac6d2 100644 --- a/src/org/jent/checksmtp/SMTPclient.java +++ b/src/org/jent/checksmtp/SMTPclient.java @@ -11,16 +11,31 @@ import java.net.SocketTimeoutException; public class SMTPclient implements Runnable { private boolean isConfigChange = false; private boolean fatalError = false; + private Thread serviceThread = null; public SMTPclient() { - Thread thread = new Thread(this); - thread.start(); + startServiceThread(); } + private void startServiceThread() { + if ( serviceThread !=null && serviceThread.isAlive() ) { + //Still service thread was working. + return; + } + //Reset flags and start service thread. + isConfigChange = false; + fatalError = false; + serviceThread = new Thread(this); + serviceThread.start(); + } + public void configChangeNotify() { isConfigChange = true; + if ( serviceThread !=null && !serviceThread.isAlive() ) { + startServiceThread(); + } } - + public void run() { while (!fatalError) { ServerSocket server = null; @@ -44,8 +59,16 @@ public class SMTPclient implements Runnable { System.err.println("Fatal Error Occurred. Stop service."); //TODO: Display error dialog. e.printStackTrace(); //Unexpected!! + break; + } catch (IllegalArgumentException iaEx) { + //Port value out of range + fatalError = true; + System.err.println("Faital Error Occurted(" + iaEx.getMessage() + "). Stop service." ); + //TODO: Display error dialog. + iaEx.printStackTrace(); + break; } - + acceptWait: while (true) { // Wait connect from mail client @@ -77,7 +100,18 @@ public class SMTPclient implements Runnable { } catch (IOException ioe) { //IGNORE close Exception } + } catch (RuntimeException rEx) { + fatalError = true; + System.err.println("Runtime Exception was occurred."); + rEx.printStackTrace(); + //TODO: Display error dialog. + break; } } + if ( !fatalError ) { + //Servce stop by non fatal error. Unexpected. + //TODO: Display stop service dialog. + System.err.println("Stoped service."); + } } } -- 2.11.0