You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by hb...@apache.org on 2001/04/29 09:42:57 UTC
cvs commit: jakarta-james/src/org/apache/james/smtpserver SMTPHandler.java SizeLimitedSMTPHandler.java
hbedi 01/04/29 00:42:57
Modified: src/org/apache/james/smtpserver SMTPHandler.java
SizeLimitedSMTPHandler.java
Log:
The Hello Name(greeting) is obtained from the configuration file.
james/BaseConnectionHandler handles the hello name and other
ConnectionHandlers derive from it.
Revision Changes Path
1.39 +7 -21 jakarta-james/src/org/apache/james/smtpserver/SMTPHandler.java
Index: SMTPHandler.java
===================================================================
RCS file: /home/cvs/jakarta-james/src/org/apache/james/smtpserver/SMTPHandler.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- SMTPHandler.java 2001/04/28 15:14:38 1.38
+++ SMTPHandler.java 2001/04/29 07:42:57 1.39
@@ -41,8 +41,8 @@
* @version 0.9
*/
public class SMTPHandler
- extends AbstractLoggable
- implements ConnectionHandler, Contextualizable, Composable, Configurable, Target {
+ extends BaseConnectionHandler
+ implements ConnectionHandler, Composable, Configurable, Target {
public final static String SERVER_NAME = "SERVER_NAME";
public final static String SERVER_TYPE = "SERVER_TYPE";
@@ -69,25 +69,11 @@
private TimeScheduler scheduler;
private MailServer mailServer;
- private String servername;
private String softwaretype = "JAMES SMTP Server " + Constants.SOFTWARE_VERSION;
private static long count;
private Hashtable state = new Hashtable();
private Random random = new Random();
- private int timeout;
- public void configure(Configuration conf) throws ConfigurationException {
- this.conf = conf;
- timeout = conf.getChild( "connectiontimeout" ).getValueAsInteger( 120000 );
- }
-
- public void contextualize( final Context context )
- throws ContextException {
- servername = (String)context.get( Constants.HELO_NAME );
- if ( servername == null )
- servername = "SMTPServer";
- }
-
public void compose( final ComponentManager componentManager )
throws ComponentException {
mailServer = (MailServer)componentManager.lookup("org.apache.james.services.MailServer");
@@ -116,7 +102,7 @@
remoteIP = socket.getInetAddress ().getHostAddress ();
smtpID = Math.abs(random.nextInt() % 1024) + "";
state.clear();
- state.put(SERVER_NAME, this.servername );
+ state.put(SERVER_NAME, this.helloName );
state.put(SERVER_TYPE, this.softwaretype );
state.put(REMOTE_NAME, remoteHost);
state.put(REMOTE_IP, remoteIP);
@@ -134,7 +120,7 @@
final PeriodicTimeTrigger trigger = new PeriodicTimeTrigger( timeout, -1 );
scheduler.addTrigger( this.toString(), trigger, this );
- out.println("220 " + this.servername + " SMTP Server (" + softwaretype + ") ready " + RFC822DateFormat.toString(new Date()));
+ out.println("220 " + this.helloName + " SMTP Server (" + softwaretype + ") ready " + RFC822DateFormat.toString(new Date()));
while (parseCommand(in.readLine())) {
scheduler.resetTrigger(this.toString());
@@ -170,7 +156,7 @@
private void resetState() {
state.clear();
- state.put(SERVER_NAME, this.servername );
+ state.put(SERVER_NAME, this.helloName );
state.put(SERVER_TYPE, this.softwaretype );
state.put(REMOTE_NAME, remoteHost);
state.put(REMOTE_IP, remoteIP);
@@ -333,7 +319,7 @@
}
String received = "from " + state.get(REMOTE_NAME) + " ([" + state.get(REMOTE_IP)
- + "])\r\n by " + this.servername + " ("
+ + "])\r\n by " + this.helloName + " ("
+ softwaretype + ") with SMTP ID " + state.get(SMTP_ID);
if (((Collection)state.get(RCPT_VECTOR)).size () == 1) {
//Only indicate a recipient if they're the only recipient
@@ -344,7 +330,7 @@
received += ";\r\n " + RFC822DateFormat.toString (new Date ());
headers.addHeader ("Received", received);
- // headers.setReceivedStamp("Unknown", (String) serverNames.elementAt(0));
+ // headers.setReceivedStamp("Unknown", (String) helloName.elementAt(0));
ByteArrayInputStream headersIn = new ByteArrayInputStream(headers.toByteArray());
MailImpl mail = new MailImpl(mailServer.getId(), (MailAddress)state.get(SENDER),
(Vector)state.get(RCPT_VECTOR),
1.9 +7 -14 jakarta-james/src/org/apache/james/smtpserver/SizeLimitedSMTPHandler.java
Index: SizeLimitedSMTPHandler.java
===================================================================
RCS file: /home/cvs/jakarta-james/src/org/apache/james/smtpserver/SizeLimitedSMTPHandler.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- SizeLimitedSMTPHandler.java 2001/04/28 15:14:38 1.8
+++ SizeLimitedSMTPHandler.java 2001/04/29 07:42:57 1.9
@@ -41,8 +41,8 @@
* @version 0.9.1
*/
public class SizeLimitedSMTPHandler
- extends AbstractLoggable
- implements ConnectionHandler, Contextualizable, Composable, Configurable, Target {
+ extends BaseConnectionHandler
+ implements ConnectionHandler, Composable, Configurable, Target {
public final static String SERVER_NAME = "SERVER_NAME";
public final static String SERVER_TYPE = "SERVER_TYPE";
@@ -71,20 +71,13 @@
private TimeScheduler scheduler;
private MailServer mailServer;
- private String servername;
private String softwaretype = "JAMES SMTP Server " + Constants.SOFTWARE_VERSION;
private static long count;
private Hashtable state = new Hashtable();
private Random random = new Random();
- private int timeout;
private long maxmessagesize;
- public void contextualize( final Context context )
- throws ContextException {
- servername = (String)context.get( Constants.HELO_NAME );
- }
-
public void compose( final ComponentManager componentManager )
throws ComponentException {
mailServer = (MailServer)componentManager.
@@ -124,7 +117,7 @@
remoteIP = socket.getInetAddress ().getHostAddress ();
smtpID = Math.abs(random.nextInt() % 1024) + "";
state.clear();
- state.put(SERVER_NAME, this.servername );
+ state.put(SERVER_NAME, this.helloName );
state.put(SERVER_TYPE, this.softwaretype );
state.put(REMOTE_NAME, remoteHost);
state.put(REMOTE_IP, remoteIP);
@@ -145,7 +138,7 @@
final PeriodicTimeTrigger trigger = new PeriodicTimeTrigger( timeout, -1 );
scheduler.addTrigger( this.toString(), trigger, this );
- out.println("220 " + this.servername + " SMTP Server (" + softwaretype + ") ready " + RFC822DateFormat.toString(new Date()));
+ out.println("220 " + this.helloName + " SMTP Server (" + softwaretype + ") ready " + RFC822DateFormat.toString(new Date()));
while (parseCommand(in.readLine())) {
scheduler.resetTrigger(this.toString());
@@ -342,7 +335,7 @@
}
String received = "from " + state.get(REMOTE_NAME) + " ([" + state.get(REMOTE_IP)
- + "])\r\n by " + this.servername + " ("
+ + "])\r\n by " + this.helloName + " ("
+ softwaretype + ") with SMTP ID " + state.get(SMTP_ID);
if (((Collection)state.get(RCPT_VECTOR)).size () == 1) {
//Only indicate a recipient if they're the only recipient
@@ -353,7 +346,7 @@
received += ";\r\n " + RFC822DateFormat.toString (new Date ());
headers.addHeader ("Received", received);
- // headers.setReceivedStamp("Unknown", (String) serverNames.elementAt(0));
+ // headers.setReceivedStamp("Unknown", (String) helloName.elementAt(0));
ByteArrayInputStream headersIn = new ByteArrayInputStream(headers.toByteArray());
MailImpl mail = new MailImpl(mailServer.getId(), (MailAddress)state.get(SENDER), (Vector)state.get(RCPT_VECTOR), new SequenceInputStream(headersIn, msgIn));
//call mail.getSize() to force the message to be
@@ -407,7 +400,7 @@
private void resetState() {
state.clear();
- state.put(SERVER_NAME, this.servername );
+ state.put(SERVER_NAME, this.helloName );
state.put(SERVER_TYPE, this.softwaretype );
state.put(REMOTE_NAME, remoteHost);
state.put(REMOTE_IP, remoteIP);
---------------------------------------------------------------------
To unsubscribe, e-mail: james-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: james-dev-help@jakarta.apache.org