Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.2.0
    • Labels:
      None

      Description

      Significantly enhanced Redirect mailet.

      New and improved Redirect hierarchy. AbstractRedirect is the new base. Redirect, Forward, and AbstractNotify extend AbstractRedirect. Bounce, NotifySender and NotifyPostmaster extend AbstractNotify.

      New utility methods to get Headers and Body from MimeMessage. Support inlining complex MimeMessages (fixes bug 18028).

      Changed getMailetInfo to return the corrcet name.

        Activity

        Hide
        Serge Knystautas added a comment -

        getSender() was not properly managing special addresses such as "SENDER" or "UNALTERED". Committed 10/14/2003 by Vincenzo, included in 2.2.0a14.

        Show
        Serge Knystautas added a comment - getSender() was not properly managing special addresses such as "SENDER" or "UNALTERED". Committed 10/14/2003 by Vincenzo, included in 2.2.0a14.
        Hide
        Serge Knystautas added a comment -

        Resynchronized allowed values of getRecipients() with AbstractRedirect. Committed 9/3/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - Resynchronized allowed values of getRecipients() with AbstractRedirect. Committed 9/3/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) Added support for "replyTo" in getRecipients and getTo.
        2) Minor javadoc enhancements.
        Committed 9/3/2003 by Vincenzo, included in 2.2.0a11.

        Show
        Serge Knystautas added a comment - 1) Added support for "replyTo" in getRecipients and getTo. 2) Minor javadoc enhancements. Committed 9/3/2003 by Vincenzo, included in 2.2.0a11.
        Hide
        Serge Knystautas added a comment -

        Minor fix to "full name" support for compatibility with "old" redirect, and javadoc enhancement. Committed 7/7/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - Minor fix to "full name" support for compatibility with "old" redirect, and javadoc enhancement. Committed 7/7/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) Added "from" value to the <to> parameter.
        2) Added "full name" support to the <recipients and <to> parameters.

        Committed 7/7/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - 1) Added "from" value to the <to> parameter. 2) Added "full name" support to the <recipients and <to> parameters. Committed 7/7/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) Added <forwardTo> to the Forward mailet, and <replyTo> to all mailets.
        2) Better exception reporting.
        3) Now throwing a MessagingException if a getX() ends up with an empty (not null) list or array.
        4) Changed consistently return-path (and its variations) to reverse-path (and variations); the Return-Path header is always built from the reverse-path when this is changed.
        5) The <recipients> and the <to> parameters can accept SpecialAddress-es mixed with real addresses.
        6) Corrected all bounce-like functionality.

        Committed 7/4/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - 1) Added <forwardTo> to the Forward mailet, and <replyTo> to all mailets. 2) Better exception reporting. 3) Now throwing a MessagingException if a getX() ends up with an empty (not null) list or array. 4) Changed consistently return-path (and its variations) to reverse-path (and variations); the Return-Path header is always built from the reverse-path when this is changed. 5) The <recipients> and the <to> parameters can accept SpecialAddress-es mixed with real addresses. 6) Corrected all bounce-like functionality. Committed 7/4/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) Added consistent usage of the "unaltered" init parameter value.
        2) getSender, setSender, getReplyTo and setReplyTo handle safely messages with null sender.
        3) Javadoc heavily modified, specially description of default behaviours.

        Committed 6/25/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - 1) Added consistent usage of the "unaltered" init parameter value. 2) getSender, setSender, getReplyTo and setReplyTo handle safely messages with null sender. 3) Javadoc heavily modified, specially description of default behaviours. Committed 6/25/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) Moved all default init parameters management up to AbstractRedirect, and changed consequently all the subclasses.
        2) Added new Resend mailet that can replace Redirect having a consistent default behaviour and adds support for new <subject> parameter.
        3) Added support of <replyTo>null</replyTo> that deletes the "ReplyTo:" header from the resent message.
        4) Javadoc changed accordingly and further cleaned.
        5) During initialization all the classes check that only the allowed init parameters are used, throwing an exception if any unknown are found.

        Committed 6/27/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - 1) Moved all default init parameters management up to AbstractRedirect, and changed consequently all the subclasses. 2) Added new Resend mailet that can replace Redirect having a consistent default behaviour and adds support for new <subject> parameter. 3) Added support of <replyTo>null</replyTo> that deletes the "ReplyTo:" header from the resent message. 4) Javadoc changed accordingly and further cleaned. 5) During initialization all the classes check that only the allowed init parameters are used, throwing an exception if any unknown are found. Committed 6/27/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        AbstractRedirect hierarchy:

        1) Enhancement and cleanup in default parameter management.
        2) Throws MessagingException instead of log in case of address parsing errors.
        3) Was not copying default headers in case of inline != unaltered - major fix.
        4) Redirect supports <subject>.
        5) Applied Hontvari Joszef's patch for supporting non-ascii characters (involves also GenericListserv).

        Committed 6/30/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - AbstractRedirect hierarchy: 1) Enhancement and cleanup in default parameter management. 2) Throws MessagingException instead of log in case of address parsing errors. 3) Was not copying default headers in case of inline != unaltered - major fix. 4) Redirect supports <subject>. 5) Applied Hontvari Joszef's patch for supporting non-ascii characters (involves also GenericListserv). Committed 6/30/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        Fixed infinite loop if this code path was ever taken. Committed 7/3/2003.

        Show
        Serge Knystautas added a comment - Fixed infinite loop if this code path was ever taken. Committed 7/3/2003.
        Hide
        Serge Knystautas added a comment -

        Forward: Ensure that recipient list has no errors, and is not empty. Committed 7/3/2003.

        Show
        Serge Knystautas added a comment - Forward: Ensure that recipient list has no errors, and is not empty. Committed 7/3/2003.
        Hide
        Serge Knystautas added a comment -

        Hontvari Jozsef's patch to avoid NPE when no subject present. Committed 7/3/2003.

        Show
        Serge Knystautas added a comment - Hontvari Jozsef's patch to avoid NPE when no subject present. Committed 7/3/2003.
        Hide
        Serge Knystautas added a comment -

        Was getting a NPE in getTo(Mail) when SpecialAddress.SENDER was returned by getTo(), and the sender was null. Fixed together with a better "fail over", also when SpecialAddress.RETURN_PATH was returned. Committed 6/19/2003 by Vincenzo.

        Show
        Serge Knystautas added a comment - Was getting a NPE in getTo(Mail) when SpecialAddress.SENDER was returned by getTo(), and the sender was null. Fixed together with a better "fail over", also when SpecialAddress.RETURN_PATH was returned. Committed 6/19/2003 by Vincenzo.
        Hide
        Serge Knystautas added a comment -

        1) The sender domain check now is optional, controlled by <fakeDomainCheck>, that defaults to true.

        2) Some getX() values where hardcoded in AbstractNotify; now they are controlled by init parameters that default to the previous values. The parameters involved are: <prefix>, <inline>, <attachment> and <passThrough>.

        3) In AbstractNotify (and subclasses) <message> and <attachError> can be used instead of <notice> and <attachStackTrace>.

        4) Javadoc changed accordingly plus a few fixes.

        5) AbstractRedirect and all the subclasses where causing a null pointer exception to be thrown deep in AvalonMailRepository, very hard to understand, because newName(MailImpl) was building a too long name if a configuration loop was happening.

        6) Setting <debug>true</debug> in any mailet subclass of AbstractRedirect was causing a null pointer exception to be thrown during initialization under certain circumstances.

        Show
        Serge Knystautas added a comment - 1) The sender domain check now is optional, controlled by <fakeDomainCheck>, that defaults to true. 2) Some getX() values where hardcoded in AbstractNotify; now they are controlled by init parameters that default to the previous values. The parameters involved are: <prefix>, <inline>, <attachment> and <passThrough>. 3) In AbstractNotify (and subclasses) <message> and <attachError> can be used instead of <notice> and <attachStackTrace>. 4) Javadoc changed accordingly plus a few fixes. 5) AbstractRedirect and all the subclasses where causing a null pointer exception to be thrown deep in AvalonMailRepository, very hard to understand, because newName(MailImpl) was building a too long name if a configuration loop was happening. 6) Setting <debug>true</debug> in any mailet subclass of AbstractRedirect was causing a null pointer exception to be thrown during initialization under certain circumstances.
        Hide
        Serge Knystautas added a comment -

        1) The sender domain check now is optional, controlled by <fakeDomainCheck>, that defaults to true.

        Show
        Serge Knystautas added a comment - 1) The sender domain check now is optional, controlled by <fakeDomainCheck>, that defaults to true.
        Hide
        Serge Knystautas added a comment -

        Fixed problem where MessageID wasn't preserved through one code path.

        Show
        Serge Knystautas added a comment - Fixed problem where MessageID wasn't preserved through one code path.
        Hide
        Serge Knystautas added a comment -

        Enhanced the javadocs. Fix in AbstractRedirect to avoid re-rendering a message that we aren't changing. Check for valid Sender domain moved to AbstractRedirect.

        Show
        Serge Knystautas added a comment - Enhanced the javadocs. Fix in AbstractRedirect to avoid re-rendering a message that we aren't changing. Check for valid Sender domain moved to AbstractRedirect.
        Hide
        Serge Knystautas added a comment -

        Committed 6/2/2003, included in 2.2.0a4.

        Show
        Serge Knystautas added a comment - Committed 6/2/2003, included in 2.2.0a4.

          People

          • Assignee:
            Unassigned
            Reporter:
            Serge Knystautas
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development