Thx. Anyone willing to contribute a patch on trunk?

On 15/10/13 10:11, Hamster wrote:
Hi guys,

Took me a while... ;-)

In /apps/james/conf/james-smtphandlerchain.xml
http://fisheye.primekey.se/browse/SignServer/trunk/signserver/extapps/james/apps/james/conf/james-smtphandlerchain.xml?r=93

just before SendMailHandler we added our own handlers, for example:

    <handler class="x.y.z.AbortProcessingMessageHandler"></handler>

In config.xml make sure that &smtphandlerchainConfig is NOT commented out.


Out very simple implementation:

public class AbortProcessingMessageHandler implements MessageHandler {
   ....
   @Override
   public void onMessage(SMTPSession session) {
     if (blacklistService.isBlacklisted(session)) {
       String responseString = "250 " +
DSNStatus.getStatus(DSNStatus.SUCCESS, DSNStatus.CONTENT_OTHER) + "
Message received";
       session.writeResponse(responseString);

       session.abortMessage();
     }
   }
.....
}


Hope it is enough to let you move on.


One more example:

   @Override
   public void onMessage(SMTPSession session) {
     if (session == null || session.getMail() == null ||
session.getMail().getSender() == null ||
session.getMail().getRecipients() == null
         || session.getMail().getRecipients().isEmpty()) {
       return;
     }

     if (config.getEmailHost().equals(session.getMail().getSender().getHost())) 
{
       return;
     }

     final Collection<MailAddress> recipients =
session.getMail().getRecipients();
     for (MailAddress mailAddress : recipients) {
       if (!config.getEmailHost().equals(mailAddress.getHost())) {
         statisticsService.incrementEmailsAcceptedForRemoteDelivery();
       }
     }
   }


Cheers,



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to