Uploaded image for project: 'James Server'
  1. James Server
  2. JAMES-941

FetchMail initializes some mail attributes with "null" values, which are then ignored by HasMailAttribute matcher.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.3.2
    • 3.0-M1
    • FetchMail
    • None

    Description

      I needed to resend all messages delivered by FetchMail to users, who are not defined to James, into postmaster's mailbox. To do so I've added a new mailet with HasMailAttribute matcher to process messages with "org.apache.james.fetchmail.isUserUndefined" attribute. But this mailet has never been actually invoked in spite of the aforementioned attribute presence.

      In the FetchMail's source code I've found that all attributes which do not assume some particular value, are initialized by nulls:
      if (isUserUndefined())
      aMail.setAttribute(getAttributePrefix() + "isUserUndefined", null);

      But HasMailAttribute matcher ignores attributes with null values:
      if (mail.getAttribute (attributeName) != null)

      { return mail.getRecipients(); }

      If I assign arbitrary not null value to the attribute like this
      aMail.setAttribute(getAttributePrefix() + "isUserUndefined", "true");
      the matcher works fine and my mailet is then invoked.

      Thereby we have some incorrectly initialized attributes which are definitely ignored by matchers (and possibly cause some other troubles).

      Attachments

        Activity

          People

            norman Norman Maurer
            amedv Aleksey Medvedev
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: