You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by ce...@apache.org on 2005/02/18 21:46:58 UTC
cvs commit: logging-log4j/tests/src/java/org/apache/log4j/net SMTPAppenderTest.java
ceki 2005/02/18 12:46:58
Modified: tests/src/java/org/apache/log4j WriterAppenderTest.java
FileAppenderTest.java ConsoleAppenderTest.java
AbstractAppenderTest.java
src/java/org/apache/log4j/net SMTPAppender.java
Added: tests/src/java/org/apache/log4j/net SMTPAppenderTest.java
Log:
Fixed activation problem with SMTPAppender
Revision Changes Path
1.2 +1 -1 logging-log4j/tests/src/java/org/apache/log4j/WriterAppenderTest.java
Index: WriterAppenderTest.java
===================================================================
RCS file: /home/cvs/logging-log4j/tests/src/java/org/apache/log4j/WriterAppenderTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- WriterAppenderTest.java 18 Feb 2005 19:55:55 -0000 1.1
+++ WriterAppenderTest.java 18 Feb 2005 20:46:57 -0000 1.2
@@ -30,7 +30,7 @@
return new WriterAppender();
}
- Appender getConfiguredAppender() {
+ protected Appender getConfiguredAppender() {
WriterAppender wa = new WriterAppender();
// set a bogus writer
1.2 +1 -1 logging-log4j/tests/src/java/org/apache/log4j/FileAppenderTest.java
Index: FileAppenderTest.java
===================================================================
RCS file: /home/cvs/logging-log4j/tests/src/java/org/apache/log4j/FileAppenderTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- FileAppenderTest.java 18 Feb 2005 19:55:55 -0000 1.1
+++ FileAppenderTest.java 18 Feb 2005 20:46:58 -0000 1.2
@@ -28,7 +28,7 @@
return new FileAppender();
}
- Appender getConfiguredAppender() {
+ protected Appender getConfiguredAppender() {
FileAppender wa = new FileAppender();
wa.setFile("output/temp");
wa.setLayout(new DummyLayout());
1.2 +1 -1 logging-log4j/tests/src/java/org/apache/log4j/ConsoleAppenderTest.java
Index: ConsoleAppenderTest.java
===================================================================
RCS file: /home/cvs/logging-log4j/tests/src/java/org/apache/log4j/ConsoleAppenderTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ConsoleAppenderTest.java 18 Feb 2005 19:55:55 -0000 1.1
+++ ConsoleAppenderTest.java 18 Feb 2005 20:46:58 -0000 1.2
@@ -29,7 +29,7 @@
return new ConsoleAppender();
}
- Appender getConfiguredAppender() {
+ protected Appender getConfiguredAppender() {
ConsoleAppender ca = new ConsoleAppender();
// set a bogus layout
1.2 +4 -2 logging-log4j/tests/src/java/org/apache/log4j/AbstractAppenderTest.java
Index: AbstractAppenderTest.java
===================================================================
RCS file: /home/cvs/logging-log4j/tests/src/java/org/apache/log4j/AbstractAppenderTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- AbstractAppenderTest.java 18 Feb 2005 19:55:55 -0000 1.1
+++ AbstractAppenderTest.java 18 Feb 2005 20:46:58 -0000 1.2
@@ -18,6 +18,7 @@
import java.io.Writer;
+import org.apache.log4j.net.SMTPAppenderTest;
import org.apache.log4j.spi.LoggingEvent;
import junit.framework.Test;
@@ -35,9 +36,9 @@
abstract public class AbstractAppenderTest extends TestCase {
abstract protected Appender getAppender();
- abstract Appender getConfiguredAppender();
+ abstract protected Appender getConfiguredAppender();
- class DummyLayout extends Layout {
+ public class DummyLayout extends Layout {
public void format(Writer output, LoggingEvent event) {}
public void activateOptions() {}
}
@@ -68,6 +69,7 @@
suite.addTestSuite(WriterAppenderTest.class);
suite.addTestSuite(ConsoleAppenderTest.class);
suite.addTestSuite(FileAppenderTest.class);
+ suite.addTestSuite(SMTPAppenderTest.class);
return suite;
}
1.47 +8 -0 logging-log4j/src/java/org/apache/log4j/net/SMTPAppender.java
Index: SMTPAppender.java
===================================================================
RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/net/SMTPAppender.java,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- SMTPAppender.java 18 Feb 2005 17:23:44 -0000 1.46
+++ SMTPAppender.java 18 Feb 2005 20:46:58 -0000 1.47
@@ -107,6 +107,7 @@
Activate the specified options, such as the smtp host, the
recipient, from, etc. */
public void activate() {
+ int errorCount = 0;
Properties props = new Properties(System.getProperties());
if (smtpHost != null) {
@@ -127,6 +128,7 @@
msg.setRecipients(Message.RecipientType.TO, parseAddress(to));
} catch (MessagingException e) {
+ errorCount++;
getLogger().error("Could not activate SMTPAppender options.", e);
}
@@ -135,16 +137,22 @@
}
if (this.evaluator == null) {
+ errorCount++;
String errMsg = "No TriggeringEventEvaluator is set for appender ["+getName()+"].";
getLogger().error(errMsg);
throw new IllegalStateException(errMsg);
}
if (this.layout == null) {
+ errorCount++;
String errMsg = "No layout set for appender named [" + name + "].";
getLogger().error(errMsg);
throw new IllegalStateException(errMsg);
}
+
+ if(errorCount == 0) {
+ super.activate();
+ }
}
/**
1.1 logging-log4j/tests/src/java/org/apache/log4j/net/SMTPAppenderTest.java
Index: SMTPAppenderTest.java
===================================================================
/*
* Copyright 1999,2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.log4j.net;
import org.apache.log4j.AbstractAppenderTest;
import org.apache.log4j.Appender;
/**
* Test if SMTPAppender honors the Appender contract.
*
* @author <a href="http://www.qos.ch/log4j/">Ceki Gülcü</a>
*
*/
public class SMTPAppenderTest extends AbstractAppenderTest {
protected Appender getAppender() {
return new SMTPAppender();
}
public Appender getConfiguredAppender() {
SMTPAppender ca = new SMTPAppender();
// set a bogus layout
ca.setLayout(new DummyLayout());
ca.setFrom("noreply@nowhere.x");
ca.setTo("noreply@nowhere.x");
ca.setSMTPHost("localhost");
return ca;
}
public void testPartiallyConfiguredAppender() {
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org