JAMES-2015 factorize SMTP_AUTH_USER_ATTRIBUTE_NAME
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/9677df8f Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/9677df8f Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/9677df8f Branch: refs/heads/master Commit: 9677df8f91e2c63aa566dfd21cb4816819238fce Parents: c7787f9 Author: Luc DUZAN <[email protected]> Authored: Fri May 5 11:26:07 2017 +0200 Committer: benwa <[email protected]> Committed: Wed May 17 15:09:07 2017 +0700 ---------------------------------------------------------------------- mailet/api/src/main/java/org/apache/mailet/Mail.java | 1 + .../org/apache/james/transport/mailets/AbstractSign.java | 2 +- .../james/transport/matchers/SMTPAuthSuccessful.java | 5 ++--- .../apache/james/transport/matchers/SMTPAuthUserIs.java | 4 +--- .../james/transport/matchers/SMTPAuthSuccessfulTest.java | 3 ++- .../james/transport/matchers/SMTPAuthUserIsTest.java | 4 ++-- .../james/mailets/configuration/CommonProcessors.java | 4 +++- .../transport/mailets/managesieve/ManageSieveMailet.java | 4 +--- .../mailets/managesieve/ManageSieveMailetTestCase.java | 10 +++++----- .../james/smtpserver/AddDefaultAttributesMessageHook.java | 7 +------ 10 files changed, 19 insertions(+), 25 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/api/src/main/java/org/apache/mailet/Mail.java ---------------------------------------------------------------------- diff --git a/mailet/api/src/main/java/org/apache/mailet/Mail.java b/mailet/api/src/main/java/org/apache/mailet/Mail.java index 6a25430..982e48e 100644 --- a/mailet/api/src/main/java/org/apache/mailet/Mail.java +++ b/mailet/api/src/main/java/org/apache/mailet/Mail.java @@ -73,6 +73,7 @@ public interface Mail extends Serializable, Cloneable { String DEFAULT = "root"; String ERROR = "error"; String TRANSPORT = "transport"; + String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; /** * Returns the name of this message. * http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/crypto/src/main/java/org/apache/james/transport/mailets/AbstractSign.java ---------------------------------------------------------------------- diff --git a/mailet/crypto/src/main/java/org/apache/james/transport/mailets/AbstractSign.java b/mailet/crypto/src/main/java/org/apache/james/transport/mailets/AbstractSign.java index 6f9901b..5320091 100644 --- a/mailet/crypto/src/main/java/org/apache/james/transport/mailets/AbstractSign.java +++ b/mailet/crypto/src/main/java/org/apache/james/transport/mailets/AbstractSign.java @@ -577,7 +577,7 @@ public abstract class AbstractSign extends GenericMailet { return false; } - String authUser = (String) mail.getAttribute("org.apache.james.SMTPAuthUser"); + String authUser = (String) mail.getAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME); // was the sender user SMTP authorized? if (authUser == null) { log("Can not sign mail for sender <" + mail.getSender() + "> as he is not a SMTP authenticated user"); http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthSuccessful.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthSuccessful.java b/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthSuccessful.java index 26b3a26..9d36095 100644 --- a/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthSuccessful.java +++ b/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthSuccessful.java @@ -42,10 +42,9 @@ public class SMTPAuthSuccessful extends GenericMatcher { /** * The mail attribute holding the SMTP AUTH user name, if any. */ - private final static String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; - + public Collection<MailAddress> match(Mail mail) { - String authUser = (String) mail.getAttribute(SMTP_AUTH_USER_ATTRIBUTE_NAME); + String authUser = (String) mail.getAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME); if (authUser != null) { return mail.getRecipients(); } else { http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthUserIs.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthUserIs.java b/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthUserIs.java index 7564934..d7eda39 100644 --- a/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthUserIs.java +++ b/mailet/standard/src/main/java/org/apache/james/transport/matchers/SMTPAuthUserIs.java @@ -44,8 +44,6 @@ public class SMTPAuthUserIs extends GenericMatcher { /** * The mail attribute holding the SMTP AUTH user name, if any. */ - private final static String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; - private Collection<String> users; public void init() throws javax.mail.MessagingException { @@ -57,7 +55,7 @@ public class SMTPAuthUserIs extends GenericMatcher { } public Collection<MailAddress> match(Mail mail) { - String authUser = (String) mail.getAttribute(SMTP_AUTH_USER_ATTRIBUTE_NAME); + String authUser = (String) mail.getAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME); if (authUser != null && users.contains(authUser)) { return mail.getRecipients(); } else { http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthSuccessfulTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthSuccessfulTest.java b/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthSuccessfulTest.java index 911d929..dc9cdd3 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthSuccessfulTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthSuccessfulTest.java @@ -23,6 +23,7 @@ import static org.assertj.core.api.Assertions.assertThat; import java.util.Collection; +import org.apache.mailet.Mail; import org.apache.mailet.MailAddress; import org.apache.mailet.base.test.FakeMail; import org.apache.mailet.base.test.FakeMailContext; @@ -47,7 +48,7 @@ public class SMTPAuthSuccessfulTest { MailAddress recipient = new MailAddress("[email protected]"); FakeMail fakeMail = FakeMail.builder() .recipient(recipient) - .attribute("org.apache.james.SMTPAuthUser", "cuong") + .attribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, "cuong") .build(); Collection<MailAddress> results = testee.match(fakeMail); http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthUserIsTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthUserIsTest.java b/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthUserIsTest.java index c7613b4..3f5a533 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthUserIsTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/matchers/SMTPAuthUserIsTest.java @@ -25,6 +25,7 @@ import java.util.Collection; import javax.mail.MessagingException; import org.apache.james.transport.matchers.SMTPAuthUserIs; +import org.apache.mailet.Mail; import org.apache.mailet.MailAddress; import org.apache.mailet.base.GenericMatcher; @@ -44,8 +45,7 @@ public class SMTPAuthUserIsTest extends AbstractHasMailAttributeTest { protected void init() { super.init(); - String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; - setMailAttributeName(SMTP_AUTH_USER_ATTRIBUTE_NAME); + setMailAttributeName(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME); setMailAttributeValue("[email protected]"); } http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/configuration/CommonProcessors.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/configuration/CommonProcessors.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/configuration/CommonProcessors.java index 0c042de..3af7fd0 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/configuration/CommonProcessors.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/configuration/CommonProcessors.java @@ -20,6 +20,8 @@ package org.apache.james.mailets.configuration; +import org.apache.mailet.Mail; + public class CommonProcessors { public static ProcessorConfiguration root() { @@ -240,7 +242,7 @@ public class CommonProcessors { .addMailet(MailetConfiguration.builder() .match("All") .clazz("SetMailAttribute") - .addProperty("org.apache.james.SMTPAuthUser", "true") + .addProperty(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, "true") .build()) .addMailet(MailetConfiguration.builder() .match("All") http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailet.java ---------------------------------------------------------------------- diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailet.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailet.java index ea4eae8..116bf46 100644 --- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailet.java +++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailet.java @@ -91,8 +91,6 @@ import com.google.common.collect.Lists; @Experimental public class ManageSieveMailet extends GenericMailet implements MessageToCoreToMessage.HelpProvider { - public final static String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; - // Injected private SieveRepository sieveRepository = null; // Injected @@ -135,7 +133,7 @@ public class ManageSieveMailet extends GenericMailet implements MessageToCoreToM // Update the Session for the current mail and execute SettableSession session = new SettableSession(); - if (mail.getAttribute(SMTP_AUTH_USER_ATTRIBUTE_NAME) != null) { + if (mail.getAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME) != null) { session.setState(Session.State.AUTHENTICATED); } else { session.setState(Session.State.UNAUTHENTICATED); http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java ---------------------------------------------------------------------- diff --git a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java index 3d9752b..c229052 100644 --- a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java +++ b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java @@ -100,7 +100,7 @@ public class ManageSieveMailetTestCase { Mail mail = createUnauthenticatedMail(message); when(sieveParser.getExtensions()).thenReturn(Lists.newArrayList("a", "b", "c")); initializeMailet(); - mail.setAttribute(ManageSieveMailet.SMTP_AUTH_USER_ATTRIBUTE_NAME, "test"); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, "test"); mailet.service(mail); ensureResponseContains("Re: CAPABILITY", "\"SIEVE\" \"a b c\"", "\"IMPLEMENTATION\" \"Apache ManageSieve v1.0\"", @@ -192,7 +192,7 @@ public class ManageSieveMailetTestCase { when(sieveRepository.getScript(USER, SCRIPT_NAME)).thenReturn(new ByteArrayInputStream(SCRIPT_CONTENT.getBytes())); MimeMessage message = prepareMimeMessage("GETSCRIPT \"" + SCRIPT_NAME + "\""); Mail mail = createUnauthenticatedMail(message); - mail.setAttribute(ManageSieveMailet.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); mailet.service(mail); ensureResponse("Re: GETSCRIPT \"" + SCRIPT_NAME + "\"", "{13}\r\n" + SCRIPT_CONTENT + "\r\nOK"); } @@ -210,7 +210,7 @@ public class ManageSieveMailetTestCase { doThrow(new ScriptNotFoundException()).when(sieveRepository).getScript(USER, SCRIPT_NAME); MimeMessage message = prepareMimeMessage("GETSCRIPT \"" + SCRIPT_NAME + "\""); Mail mail = createUnauthenticatedMail(message); - mail.setAttribute(ManageSieveMailet.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); mailet.service(mail); ensureResponse("Re: GETSCRIPT \"" + SCRIPT_NAME + "\"", "NO (NONEXISTENT) \"There is no script by that name\""); } @@ -222,7 +222,7 @@ public class ManageSieveMailetTestCase { MimeMessage message = prepareMimeMessage("GETSCRIPT"); Mail mail = createUnauthenticatedMail(message); - mail.setAttribute(ManageSieveMailet.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, USER); mailet.service(mail); ensureResponse("Re: GETSCRIPT", "NO \"Missing argument: script name\""); } @@ -483,7 +483,7 @@ public class ManageSieveMailetTestCase { private Mail createAuthentificatedMail(MimeMessage message) throws Exception { Mail mail = createUnauthenticatedMail(message); - mail.setAttribute(ManageSieveMailet.SMTP_AUTH_USER_ATTRIBUTE_NAME, message.getSender().toString()); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, message.getSender().toString()); return mail; } http://git-wip-us.apache.org/repos/asf/james-project/blob/9677df8f/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AddDefaultAttributesMessageHook.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AddDefaultAttributesMessageHook.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AddDefaultAttributesMessageHook.java index e365a4c..d56ad6f 100644 --- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AddDefaultAttributesMessageHook.java +++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AddDefaultAttributesMessageHook.java @@ -32,11 +32,6 @@ import org.apache.mailet.Mail; public class AddDefaultAttributesMessageHook implements JamesMessageHook { /** - * The mail attribute holding the SMTP AUTH user name, if any. - */ - private final static String SMTP_AUTH_USER_ATTRIBUTE_NAME = "org.apache.james.SMTPAuthUser"; - - /** * The mail attribute which get set if the client is allowed to relay */ private final static String SMTP_AUTH_NETWORK_NAME = "org.apache.james.SMTPIsAuthNetwork"; @@ -58,7 +53,7 @@ public class AddDefaultAttributesMessageHook implements JamesMessageHook { mailImpl.setRemoteHost(session.getRemoteAddress().getHostName()); mailImpl.setRemoteAddr(session.getRemoteAddress().getAddress().getHostAddress()); if (session.getUser() != null) { - mail.setAttribute(SMTP_AUTH_USER_ATTRIBUTE_NAME, session.getUser()); + mail.setAttribute(Mail.SMTP_AUTH_USER_ATTRIBUTE_NAME, session.getUser()); } if (session.isRelayingAllowed()) { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
