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 bt...@apache.org on 2018/12/18 08:00:47 UTC
[04/13] james-project git commit: MAILBOX-365 Get rid of
MailboxSession.getUser
MAILBOX-365 Get rid of MailboxSession.getUser
We should use core.getUser instead
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/46e26b8d
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/46e26b8d
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/46e26b8d
Branch: refs/heads/master
Commit: 46e26b8d325416b9543184b7a23aa952d84e062f
Parents: 000f775
Author: Benoit Tellier <bt...@linagora.com>
Authored: Sat Dec 15 15:09:27 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Tue Dec 18 14:48:08 2018 +0700
----------------------------------------------------------------------
.../apache/james/mailbox/MailboxSession.java | 21 +---------
.../apache/james/mailbox/model/MailboxPath.java | 4 +-
.../mailbox/model/search/MailboxQuery.java | 7 ++--
.../james/mailbox/MailboxManagerTest.java | 2 +-
.../james/mailbox/mock/DataProvisioner.java | 2 +-
.../james/mailbox/mock/MockMailboxSession.java | 17 +-------
.../cassandra/CassandraSubscriptionManager.java | 2 +-
...lasticSearchListeningMessageSearchIndex.java | 14 +++----
.../elasticsearch/json/IndexableMessage.java | 4 +-
.../json/MessageToElasticSearchJson.java | 5 +--
...icSearchListeningMessageSearchIndexTest.java | 4 +-
.../json/IndexableMessageTest.java | 39 +++++++++----------
.../json/MessageToElasticSearchJsonTest.java | 41 ++++++++++----------
.../mailbox/jpa/JPASubscriptionManager.java | 2 +-
.../lucene/search/LuceneMessageSearchIndex.java | 2 +-
.../mailbox/store/SimpleMailboxSession.java | 23 ++---------
.../mailbox/store/StoreAttachmentManager.java | 3 +-
.../mailbox/store/StoreMailboxManager.java | 6 +--
.../mailbox/store/StoreMessageIdManager.java | 4 +-
.../james/mailbox/store/StoreRightManager.java | 6 +--
.../mailbox/store/StoreSubscriptionManager.java | 8 ++--
.../james/mailbox/store/event/EventFactory.java | 16 ++++----
.../mailbox/store/event/MessageMoveEvent.java | 2 +-
.../mailbox/store/mail/model/Username.java | 2 +-
.../mailbox/store/StoreMailboxManagerTest.java | 4 +-
.../store/SystemMailboxesProviderImplTest.java | 4 +-
.../DefaultDelegatingMailboxListenerTest.java | 2 +-
.../DefaultMailboxesProvisioningFilter.java | 6 +--
.../org/apache/james/jmap/DownloadServlet.java | 2 +-
.../james/jmap/UserProvisioningFilter.java | 9 ++---
.../event/PropagateLookupRightListener.java | 2 +-
.../james/jmap/methods/GetFilterMethod.java | 2 +-
.../jmap/methods/GetVacationResponseMethod.java | 4 +-
.../james/jmap/methods/MessageSender.java | 2 +-
.../james/jmap/methods/RequestHandler.java | 3 +-
.../james/jmap/methods/SendMDNProcessor.java | 2 +-
.../james/jmap/methods/SetFilterMethod.java | 2 +-
.../methods/SetMailboxesCreationProcessor.java | 4 +-
.../methods/SetMailboxesUpdateProcessor.java | 2 +-
.../methods/SetMessagesCreationProcessor.java | 7 ++--
.../methods/SetMessagesUpdateProcessor.java | 9 +++--
.../jmap/methods/SetVacationResponseMethod.java | 2 +-
.../org/apache/james/jmap/model/JmapMDN.java | 6 +--
.../apache/james/jmap/model/mailbox/Rights.java | 2 +-
.../james/jmap/send/PostDequeueDecorator.java | 4 +-
.../jmap/methods/GetMessagesMethodTest.java | 29 ++------------
.../methods/GetVacationResponseMethodTest.java | 8 ++--
.../methods/SetVacationResponseMethodTest.java | 34 +++-------------
48 files changed, 148 insertions(+), 239 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
index f81c229..51dd6b3 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
@@ -25,6 +25,8 @@ import java.util.Locale;
import java.util.Map;
import java.util.Objects;
+import org.apache.james.core.User;
+
import com.google.common.base.MoreObjects;
/**
@@ -131,25 +133,6 @@ public interface MailboxSession {
List<Locale> getLocalePreferences();
/**
- * A mailbox user. Useful for specialist mailbox implementation.
- */
- interface User {
- /**
- * Gets the name of the user.
- *
- * @return not null
- */
- String getUserName();
-
-
- boolean isSameUser(String username);
-
- default org.apache.james.core.User getCoreUser() {
- return org.apache.james.core.User.fromUsername(getUserName());
- }
- }
-
- /**
* Gets the <a href='http://www.isi.edu/in-notes/rfc2342.txt' rel='tag'>RFC
* 2342</a> personal namespace for the current session.<br>
* Note that though servers may offer multiple personal namespaces, support
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
index 46924a1..2675d7c 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
@@ -41,7 +41,7 @@ public class MailboxPath {
* @return inbox
*/
public static MailboxPath inbox(MailboxSession session) {
- return MailboxPath.forUser(session.getUser().getUserName(), MailboxConstants.INBOX);
+ return MailboxPath.forUser(session.getUser().asString(), MailboxConstants.INBOX);
}
/**
@@ -101,7 +101,7 @@ public class MailboxPath {
}
public boolean belongsTo(MailboxSession mailboxSession) {
- return mailboxSession.getUser().isSameUser(user);
+ return user.equalsIgnoreCase(mailboxSession.getUser().asString());
}
/**
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/main/java/org/apache/james/mailbox/model/search/MailboxQuery.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/model/search/MailboxQuery.java b/mailbox/api/src/main/java/org/apache/james/mailbox/model/search/MailboxQuery.java
index 2afec92..ed2f747 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/search/MailboxQuery.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/search/MailboxQuery.java
@@ -21,6 +21,7 @@ package org.apache.james.mailbox.model.search;
import java.util.Optional;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.model.MailboxConstants;
import org.apache.james.mailbox.model.MailboxPath;
@@ -42,7 +43,7 @@ public final class MailboxQuery {
public static Builder privateMailboxesBuilder(MailboxSession session) {
return builder()
.namespace(MailboxConstants.USER_NAMESPACE)
- .username(session.getUser().getUserName())
+ .username(session.getUser().asString())
.matchesAllMailboxNames();
}
@@ -137,9 +138,9 @@ public final class MailboxQuery {
}
public boolean isPrivateMailboxes(MailboxSession session) {
- MailboxSession.User sessionUser = session.getUser();
+ User sessionUser = session.getUser();
return namespace.map(MailboxConstants.USER_NAMESPACE::equals).orElse(false)
- && user.map(sessionUser::isSameUser).orElse(false);
+ && user.map(User::fromUsername).map(sessionUser::equals).orElse(false);
}
@VisibleForTesting
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java b/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java
index a9a2690..e8dd5a3 100644
--- a/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java
+++ b/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java
@@ -1194,7 +1194,7 @@ public abstract class MailboxManagerTest {
void createUser1SystemSessionShouldReturnValidSession() throws Exception {
session = mailboxManager.createSystemSession(USER_1);
- assertThat(session.getUser().getUserName()).isEqualTo(USER_1);
+ assertThat(session.getUser().asString()).isEqualTo(USER_1);
}
@Test
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/test/java/org/apache/james/mailbox/mock/DataProvisioner.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/DataProvisioner.java b/mailbox/api/src/test/java/org/apache/james/mailbox/mock/DataProvisioner.java
index 8914a6e..674c324 100644
--- a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/DataProvisioner.java
+++ b/mailbox/api/src/test/java/org/apache/james/mailbox/mock/DataProvisioner.java
@@ -100,7 +100,7 @@ public class DataProvisioner {
private static void createSubSubMailboxes(MailboxManager mailboxManager,MailboxSession mailboxSession, String subFolderName) {
IntStream.range(0, SUB_SUB_MAILBOXES_COUNT)
.mapToObj(i -> subFolderName + ".SUBSUB_FOLDER_" + i)
- .forEach(name -> createMailbox(mailboxManager, mailboxSession, MailboxPath.forUser(mailboxSession.getUser().getUserName(), name)));
+ .forEach(name -> createMailbox(mailboxManager, mailboxSession, MailboxPath.forUser(mailboxSession.getUser().asString(), name)));
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java b/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
index 8e8e90c..8bf84f0 100644
--- a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
+++ b/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
@@ -26,6 +26,7 @@ import java.util.Locale;
import java.util.Map;
import java.util.Random;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MailboxSession;
public class MockMailboxSession implements MailboxSession {
@@ -41,21 +42,7 @@ public class MockMailboxSession implements MailboxSession {
}
public MockMailboxSession(String username, SessionId sessionId) {
- this.user = new User() {
-
- @Override
- public String getUserName() {
- return username;
- }
-
- @Override
- public boolean isSameUser(String other) {
- if (username == null) {
- return other == null;
- }
- return username.equalsIgnoreCase(other);
- }
- };
+ this.user = User.fromUsername(username);
this.sessionId = sessionId;
this.open = true;
type = SessionType.User;
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManager.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManager.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManager.java
index f85b4f6..c1da5cd 100644
--- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManager.java
+++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManager.java
@@ -39,6 +39,6 @@ public class CassandraSubscriptionManager extends StoreSubscriptionManager {
@Override
protected Subscription createSubscription(MailboxSession session, String mailbox) {
- return new SimpleSubscription(session.getUser().getUserName(), mailbox);
+ return new SimpleSubscription(session.getUser().asString(), mailbox);
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndex.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndex.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndex.java
index 8f5edb3..a925c04 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndex.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndex.java
@@ -123,12 +123,12 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
}
@Override
- public void add(MailboxSession session, Mailbox mailbox, MailboxMessage message) throws MailboxException {
+ public void add(MailboxSession session, Mailbox mailbox, MailboxMessage message) {
try {
LOGGER.info("Indexing mailbox {}-{} of user {} on message {}",
mailbox.getName(),
mailbox.getMailboxId(),
- session.getUser().getUserName(),
+ session.getUser().asString(),
message.getUid());
elasticSearchIndexer.index(indexIdFor(mailbox, message.getUid()), messageToElasticSearchJson.convertToJson(message, ImmutableList.of(session.getUser())));
} catch (Exception e) {
@@ -136,7 +136,7 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
LOGGER.warn("Indexing mailbox {}-{} of user {} on message {} without attachments ",
mailbox.getName(),
mailbox.getMailboxId().serialize(),
- session.getUser().getUserName(),
+ session.getUser().asString(),
message.getUid(),
e);
elasticSearchIndexer.index(indexIdFor(mailbox, message.getUid()), messageToElasticSearchJson.convertToJsonWithoutAttachment(message, ImmutableList.of(session.getUser())));
@@ -144,7 +144,7 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
LOGGER.error("Error when indexing mailbox {}-{} of user {} on message {} without its attachment",
mailbox.getName(),
mailbox.getMailboxId().serialize(),
- session.getUser().getUserName(),
+ session.getUser().asString(),
message.getUid(),
e1);
}
@@ -152,7 +152,7 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
}
@Override
- public void delete(MailboxSession session, Mailbox mailbox, Collection<MessageUid> expungedUids) throws MailboxException {
+ public void delete(MailboxSession session, Mailbox mailbox, Collection<MessageUid> expungedUids) {
try {
elasticSearchIndexer.delete(expungedUids.stream()
.map(uid -> indexIdFor(mailbox, uid))
@@ -165,7 +165,7 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
}
@Override
- public void deleteAll(MailboxSession session, Mailbox mailbox) throws MailboxException {
+ public void deleteAll(MailboxSession session, Mailbox mailbox) {
try {
elasticSearchIndexer.deleteAllMatchingQuery(
termQuery(
@@ -177,7 +177,7 @@ public class ElasticSearchListeningMessageSearchIndex extends ListeningMessageSe
}
@Override
- public void update(MailboxSession session, Mailbox mailbox, List<UpdatedFlags> updatedFlagsList) throws MailboxException {
+ public void update(MailboxSession session, Mailbox mailbox, List<UpdatedFlags> updatedFlagsList) {
try {
elasticSearchIndexer.update(updatedFlagsList.stream()
.map(updatedFlags -> createUpdatedDocumentPartFromUpdatedFlags(mailbox, updatedFlags))
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessage.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessage.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessage.java
index b6d9527..5517ebc 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessage.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessage.java
@@ -28,7 +28,7 @@ import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import org.apache.james.mailbox.MailboxSession.User;
+import org.apache.james.core.User;
import org.apache.james.mailbox.elasticsearch.IndexAttachments;
import org.apache.james.mailbox.elasticsearch.query.DateResolutionFormater;
import org.apache.james.mailbox.extractor.TextExtractor;
@@ -119,7 +119,7 @@ public class IndexableMessage {
MimePart parsingResult = new MimePartParser(message, textExtractor).parse();
List<String> stringifiedUsers = users.stream()
- .map(User::getUserName)
+ .map(User::asString)
.collect(Guavate.toImmutableList());
Optional<String> bodyText = parsingResult.locateFirstTextBody();
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJson.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJson.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJson.java
index aacd790..48b5baf 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJson.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJson.java
@@ -25,8 +25,7 @@ import java.util.List;
import javax.inject.Inject;
import javax.mail.Flags;
-import org.apache.james.mailbox.MailboxManager;
-import org.apache.james.mailbox.MailboxSession.User;
+import org.apache.james.core.User;
import org.apache.james.mailbox.elasticsearch.IndexAttachments;
import org.apache.james.mailbox.extractor.TextExtractor;
import org.apache.james.mailbox.store.mail.model.MailboxMessage;
@@ -54,7 +53,7 @@ public class MessageToElasticSearchJson {
}
@Inject
- public MessageToElasticSearchJson(TextExtractor textExtractor, IndexAttachments indexAttachments, MailboxManager mailboxManager) {
+ public MessageToElasticSearchJson(TextExtractor textExtractor, IndexAttachments indexAttachments) {
this(textExtractor, ZoneId.systemDefault(), indexAttachments);
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
index d8ed910..f04852d 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
@@ -33,9 +33,9 @@ import javax.mail.Flags;
import org.apache.james.backends.es.ElasticSearchIndexer;
import org.apache.james.backends.es.UpdatedRepresentation;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MailboxManager;
import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.MailboxSession.User;
import org.apache.james.mailbox.MessageUid;
import org.apache.james.mailbox.elasticsearch.json.MessageToElasticSearchJson;
import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher;
@@ -84,7 +84,7 @@ public class ElasticSearchListeningMessageSearchIndexTest {
testee = new ElasticSearchListeningMessageSearchIndex(mapperFactory, elasticSearchIndexer, elasticSearchSearcher,
messageToElasticSearchJson, mockMailboxManager);
session = new MockMailboxSession(USERNAME);
- users = ImmutableList.of(session.getUser());
+ users = ImmutableList.of(User.fromUsername(USERNAME));
}
@Test
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessageTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessageTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessageTest.java
index 40b641e..9723cb2 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessageTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/IndexableMessageTest.java
@@ -31,12 +31,12 @@ import java.util.Optional;
import javax.mail.Flags;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MessageUid;
import org.apache.james.mailbox.elasticsearch.IndexAttachments;
import org.apache.james.mailbox.extractor.ParsedContent;
import org.apache.james.mailbox.extractor.TextExtractor;
import org.apache.james.mailbox.inmemory.InMemoryMessageId;
-import org.apache.james.mailbox.mock.MockMailboxSession;
import org.apache.james.mailbox.model.MessageId;
import org.apache.james.mailbox.model.TestId;
import org.apache.james.mailbox.store.extractor.DefaultTextExtractor;
@@ -57,8 +57,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
public class IndexableMessageTest {
-
- public static final MessageUid MESSAGE_UID = MessageUid.of(154);
+ private static final MessageUid MESSAGE_UID = MessageUid.of(154);
@ClassRule
public static TikaContainerSingletonRule tika = TikaContainerSingletonRule.rule;
@@ -91,7 +90,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -117,7 +116,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -143,7 +142,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -169,7 +168,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -195,7 +194,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -221,7 +220,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -247,7 +246,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -273,7 +272,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -310,7 +309,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
@@ -341,7 +340,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -372,7 +371,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -401,7 +400,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.NO)
@@ -430,7 +429,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(new DefaultTextExtractor())
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
@@ -465,7 +464,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(textExtractor)
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
@@ -506,7 +505,7 @@ public class IndexableMessageTest {
// When
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(textExtractor)
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
@@ -538,7 +537,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(textExtractor)
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
@@ -567,7 +566,7 @@ public class IndexableMessageTest {
IndexableMessage indexableMessage = IndexableMessage.builder()
.message(mailboxMessage)
- .users(ImmutableList.of(new MockMailboxSession("username").getUser()))
+ .users(ImmutableList.of(User.fromUsername("username")))
.extractor(textExtractor)
.zoneId(ZoneId.of("Europe/Paris"))
.indexAttachments(IndexAttachments.YES)
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJsonTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJsonTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJsonTest.java
index fa080f3..b38076b 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJsonTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MessageToElasticSearchJsonTest.java
@@ -32,12 +32,11 @@ import java.util.Date;
import javax.mail.Flags;
import javax.mail.util.SharedByteArrayInputStream;
+import org.apache.james.core.User;
import org.apache.james.mailbox.FlagsBuilder;
-import org.apache.james.mailbox.MailboxSession.User;
import org.apache.james.mailbox.MessageUid;
import org.apache.james.mailbox.elasticsearch.IndexAttachments;
import org.apache.james.mailbox.extractor.TextExtractor;
-import org.apache.james.mailbox.mock.MockMailboxSession;
import org.apache.james.mailbox.model.MessageId;
import org.apache.james.mailbox.model.TestId;
import org.apache.james.mailbox.model.TestMessageId;
@@ -58,14 +57,14 @@ import org.junit.Test;
import com.google.common.collect.ImmutableList;
public class MessageToElasticSearchJsonTest {
-
- public static final int SIZE = 25;
- public static final int BODY_START_OCTET = 100;
- public static final TestId MAILBOX_ID = TestId.of(18L);
- public static final MessageId MESSAGE_ID = TestMessageId.of(184L);
- public static final long MOD_SEQ = 42L;
- public static final MessageUid UID = MessageUid.of(25);
- public static final MockMailboxSession MAILBOX_SESSION = new MockMailboxSession("username");
+ private static final int SIZE = 25;
+ private static final int BODY_START_OCTET = 100;
+ private static final TestId MAILBOX_ID = TestId.of(18L);
+ private static final MessageId MESSAGE_ID = TestMessageId.of(184L);
+ private static final long MOD_SEQ = 42L;
+ private static final MessageUid UID = MessageUid.of(25);
+ private static final String USERNAME = "username";
+ private static final User USER = User.fromUsername(USERNAME);
private TextExtractor textExtractor;
@@ -125,7 +124,7 @@ public class MessageToElasticSearchJsonTest {
MAILBOX_ID);
spamMail.setUid(UID);
spamMail.setModSeq(MOD_SEQ);
- assertThatJson(messageToElasticSearchJson.convertToJson(spamMail, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(spamMail, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/spamMail.json"));
}
@@ -145,7 +144,7 @@ public class MessageToElasticSearchJsonTest {
MAILBOX_ID);
htmlMail.setModSeq(MOD_SEQ);
htmlMail.setUid(UID);
- assertThatJson(messageToElasticSearchJson.convertToJson(htmlMail, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(htmlMail, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/htmlMail.json"));
}
@@ -165,7 +164,7 @@ public class MessageToElasticSearchJsonTest {
MAILBOX_ID);
pgpSignedMail.setModSeq(MOD_SEQ);
pgpSignedMail.setUid(UID);
- assertThatJson(messageToElasticSearchJson.convertToJson(pgpSignedMail, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(pgpSignedMail, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/pgpSignedMail.json"));
}
@@ -186,7 +185,7 @@ public class MessageToElasticSearchJsonTest {
mail.setModSeq(MOD_SEQ);
mail.setUid(UID);
assertThatJson(messageToElasticSearchJson.convertToJson(mail,
- ImmutableList.of(new MockMailboxSession("user1").getUser(), new MockMailboxSession("user2").getUser())))
+ ImmutableList.of(User.fromUsername("user1"), User.fromUsername("user2"))))
.when(IGNORING_ARRAY_ORDER).when(IGNORING_VALUES)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/mail.json"));
}
@@ -206,7 +205,7 @@ public class MessageToElasticSearchJsonTest {
MAILBOX_ID);
recursiveMail.setModSeq(MOD_SEQ);
recursiveMail.setUid(UID);
- assertThatJson(messageToElasticSearchJson.convertToJson(recursiveMail, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(recursiveMail, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER).when(IGNORING_VALUES)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/recursiveMail.json"));
}
@@ -226,7 +225,7 @@ public class MessageToElasticSearchJsonTest {
MAILBOX_ID);
mailWithNoInternalDate.setModSeq(MOD_SEQ);
mailWithNoInternalDate.setUid(UID);
- assertThatJson(messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER)
.when(IGNORING_VALUES)
.isEqualTo(ClassLoaderUtils.getSystemResourceAsString("eml/recursiveMail.json"));
@@ -251,7 +250,7 @@ public class MessageToElasticSearchJsonTest {
new DefaultTextExtractor(),
ZoneId.of("Europe/Paris"),
IndexAttachments.YES);
- String convertToJson = messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(MAILBOX_SESSION.getUser()));
+ String convertToJson = messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(USER));
// Then
assertThatJson(convertToJson)
@@ -279,7 +278,7 @@ public class MessageToElasticSearchJsonTest {
new DefaultTextExtractor(),
ZoneId.of("Europe/Paris"),
IndexAttachments.NO);
- String convertToJson = messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(MAILBOX_SESSION.getUser()));
+ String convertToJson = messageToElasticSearchJson.convertToJson(mailWithNoInternalDate, ImmutableList.of(USER));
// Then
assertThatJson(convertToJson)
@@ -304,7 +303,7 @@ public class MessageToElasticSearchJsonTest {
mailWithNoMailboxId.setUid(UID);
assertThatThrownBy(() ->
- messageToElasticSearchJson.convertToJson(mailWithNoMailboxId, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ messageToElasticSearchJson.convertToJson(mailWithNoMailboxId, ImmutableList.of(USER)))
.isInstanceOf(NullPointerException.class);
}
@@ -353,7 +352,7 @@ public class MessageToElasticSearchJsonTest {
spamMail.setUid(UID);
spamMail.setModSeq(MOD_SEQ);
- assertThatJson(messageToElasticSearchJson.convertToJson(spamMail, ImmutableList.of(MAILBOX_SESSION.getUser())))
+ assertThatJson(messageToElasticSearchJson.convertToJson(spamMail, ImmutableList.of(USER)))
.when(IGNORING_ARRAY_ORDER)
.isEqualTo(
ClassLoaderUtils.getSystemResourceAsString("eml/nonTextual.json", StandardCharsets.UTF_8));
@@ -378,7 +377,7 @@ public class MessageToElasticSearchJsonTest {
new DefaultTextExtractor(),
ZoneId.of("Europe/Paris"),
IndexAttachments.NO);
- String convertToJsonWithoutAttachment = messageToElasticSearchJson.convertToJsonWithoutAttachment(message, ImmutableList.of(MAILBOX_SESSION.getUser()));
+ String convertToJsonWithoutAttachment = messageToElasticSearchJson.convertToJsonWithoutAttachment(message, ImmutableList.of(USER));
// Then
assertThatJson(convertToJsonWithoutAttachment)
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/JPASubscriptionManager.java
----------------------------------------------------------------------
diff --git a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/JPASubscriptionManager.java b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/JPASubscriptionManager.java
index bd6a1a8..fae41ba 100644
--- a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/JPASubscriptionManager.java
+++ b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/JPASubscriptionManager.java
@@ -38,6 +38,6 @@ public class JPASubscriptionManager extends StoreSubscriptionManager {
@Override
protected Subscription createSubscription(MailboxSession session, String mailbox) {
- return new JPASubscription(session.getUser().getUserName(), mailbox);
+ return new JPASubscription(session.getUser().asString(), mailbox);
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
----------------------------------------------------------------------
diff --git a/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java b/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
index b89ec37..63af04e 100644
--- a/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
+++ b/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
@@ -543,7 +543,7 @@ public class LuceneMessageSearchIndex extends ListeningMessageSearchIndex {
private Document createMessageDocument(final MailboxSession session, final MailboxMessage membership) throws MailboxException {
final Document doc = new Document();
// TODO: Better handling
- doc.add(new Field(USERS, session.getUser().getUserName().toUpperCase(Locale.US), Store.YES, Index.NOT_ANALYZED));
+ doc.add(new Field(USERS, session.getUser().asString().toUpperCase(Locale.US), Store.YES, Index.NOT_ANALYZED));
doc.add(new Field(MAILBOX_ID_FIELD, membership.getMailboxId().serialize().toUpperCase(Locale.US), Store.YES, Index.NOT_ANALYZED));
doc.add(new NumericField(UID_FIELD,Store.YES, true).setLongValue(membership.getUid().asLong()));
doc.add(new Field(HAS_ATTACHMENT_FIELD, Boolean.toString(hasAttachment(membership)), Store.YES, Index.NOT_ANALYZED));
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/SimpleMailboxSession.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/SimpleMailboxSession.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/SimpleMailboxSession.java
index 7f08b47..2e3f159 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/SimpleMailboxSession.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/SimpleMailboxSession.java
@@ -26,13 +26,14 @@ import java.util.List;
import java.util.Locale;
import java.util.Map;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.model.MailboxConstants;
/**
* Describes a mailbox session.
*/
-public class SimpleMailboxSession implements MailboxSession, MailboxSession.User {
+public class SimpleMailboxSession implements MailboxSession {
private final Collection<String> sharedSpaces;
@@ -112,17 +113,7 @@ public class SimpleMailboxSession implements MailboxSession, MailboxSession.User
*/
@Override
public User getUser() {
- return this;
- }
-
- /**
- * Gets the name of the user executing this session.
- *
- * @return not null
- */
- @Override
- public String getUserName() {
- return userName;
+ return User.fromUsername(userName);
}
@Override
@@ -163,12 +154,4 @@ public class SimpleMailboxSession implements MailboxSession, MailboxSession.User
return type;
}
- @Override
- public boolean isSameUser(String username) {
- if (this.userName == null) {
- return username == null;
- }
- return this.userName.equalsIgnoreCase(username);
- }
-
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreAttachmentManager.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreAttachmentManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreAttachmentManager.java
index b4cd5e6..3fbb36c 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreAttachmentManager.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreAttachmentManager.java
@@ -24,6 +24,7 @@ import java.util.List;
import javax.inject.Inject;
+import org.apache.james.core.User;
import org.apache.james.mailbox.AttachmentManager;
import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.MessageIdManager;
@@ -105,7 +106,7 @@ public class StoreAttachmentManager implements AttachmentManager {
Collection<Username> explicitOwners = attachmentMapperFactory.getAttachmentMapper(mailboxSession)
.getOwners(attachmentId);
return explicitOwners.stream()
- .anyMatch(username -> mailboxSession.getUser().isSameUser(username.getValue()));
+ .anyMatch(username -> mailboxSession.getUser().equals(User.fromUsername(username.getValue())));
}
private Collection<MessageId> getRelatedMessageIds(AttachmentId attachmentId, MailboxSession mailboxSession) throws MailboxException {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
index 4b322de..fba7edd 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
@@ -598,7 +598,7 @@ public class StoreMailboxManager implements MailboxManager {
private void assertIsOwner(MailboxSession mailboxSession, MailboxPath mailboxPath) throws MailboxNotFoundException {
if (!mailboxPath.belongsTo(mailboxSession)) {
- LOGGER.info("Mailbox {} does not belong to {}", mailboxPath.asString(), mailboxSession.getUser().getUserName());
+ LOGGER.info("Mailbox {} does not belong to {}", mailboxPath.asString(), mailboxSession.getUser().asString());
throw new MailboxNotFoundException(mailboxPath.asString());
}
}
@@ -700,7 +700,7 @@ public class StoreMailboxManager implements MailboxManager {
+ SQL_WILDCARD_CHAR;
MailboxPath base = new MailboxPath(
mailboxQuery.getNamespace().orElse(MailboxConstants.USER_NAMESPACE),
- mailboxQuery.getUser().orElse(mailboxSession.getUser().getUserName()),
+ mailboxQuery.getUser().orElse(mailboxSession.getUser().asString()),
combinedName);
return new MailboxPath(base, combinedName);
}
@@ -710,7 +710,7 @@ public class StoreMailboxManager implements MailboxManager {
if (mailboxQuery.isPrivateMailboxes(session)) {
return Stream.of();
}
- return mailboxMapper.findNonPersonalMailboxes(session.getUser().getUserName(), right).stream();
+ return mailboxMapper.findNonPersonalMailboxes(session.getUser().asString(), right).stream();
}
private SimpleMailboxMetaData toMailboxMetadata(MailboxSession session, List<Mailbox> mailboxes, Mailbox mailbox) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java
index 1a5f789..0dfda8d 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java
@@ -230,7 +230,7 @@ public class StoreMessageIdManager implements MessageIdManager {
List<MailboxMessage> currentMailboxMessages = findRelatedMailboxMessages(messageId, mailboxSession);
if (currentMailboxMessages.isEmpty()) {
- LOGGER.info("Tried to access {} not accessible for {}", messageId, mailboxSession.getUser().getUserName());
+ LOGGER.info("Tried to access {} not accessible for {}", messageId, mailboxSession.getUser().asString());
return;
}
@@ -399,7 +399,7 @@ public class StoreMessageIdManager implements MessageIdManager {
.findFirst();
if (mailboxForbidden.isPresent()) {
- LOGGER.info("Mailbox with Id {} does not belong to {}", mailboxForbidden.get(), mailboxSession.getUser().getUserName());
+ LOGGER.info("Mailbox with Id {} does not belong to {}", mailboxForbidden.get(), mailboxSession.getUser().asString());
throw new MailboxNotFoundException(mailboxForbidden.get());
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
index 5fd6491..b97793f 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
@@ -99,12 +99,12 @@ public class StoreRightManager implements RightManager {
}
public Rfc4314Rights myRights(Mailbox mailbox, MailboxSession session) throws UnsupportedRightException {
- MailboxSession.User user = session.getUser();
+ User user = session.getUser();
return Optional.ofNullable(user)
.map(Throwing.function(value ->
aclResolver.resolveRights(
- user.getUserName(),
+ user.asString(),
groupMembershipResolver,
mailbox.getACL(),
mailbox.getUser(),
@@ -246,7 +246,7 @@ public class StoreRightManager implements RightManager {
return acl;
}
- MailboxACL.EntryKey userAsKey = MailboxACL.EntryKey.createUserEntryKey(mailboxSession.getUser().getUserName());
+ MailboxACL.EntryKey userAsKey = MailboxACL.EntryKey.createUserEntryKey(mailboxSession.getUser().asString());
Rfc4314Rights rights = acl.getEntries().getOrDefault(userAsKey, new Rfc4314Rights());
if (rights.contains(MailboxACL.Right.Administer)) {
return acl;
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreSubscriptionManager.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreSubscriptionManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreSubscriptionManager.java
index 60afcca..2e46cde 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreSubscriptionManager.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreSubscriptionManager.java
@@ -54,7 +54,7 @@ public class StoreSubscriptionManager implements SubscriptionManager {
final SubscriptionMapper mapper = mapperFactory.getSubscriptionMapper(session);
try {
mapper.execute(Mapper.toTransaction(() -> {
- Subscription subscription = mapper.findMailboxSubscriptionForUser(session.getUser().getUserName(), mailbox);
+ Subscription subscription = mapper.findMailboxSubscriptionForUser(session.getUser().asString(), mailbox);
if (subscription == null) {
Subscription newSubscription = createSubscription(session, mailbox);
mapper.save(newSubscription);
@@ -75,13 +75,13 @@ public class StoreSubscriptionManager implements SubscriptionManager {
* @return subscription
*/
protected Subscription createSubscription(MailboxSession session, String mailbox) {
- return new SimpleSubscription(session.getUser().getUserName(), mailbox);
+ return new SimpleSubscription(session.getUser().asString(), mailbox);
}
@Override
public Collection<String> subscriptions(MailboxSession session) throws SubscriptionException {
return mapperFactory.getSubscriptionMapper(session)
- .findSubscriptionsForUser(session.getUser().getUserName())
+ .findSubscriptionsForUser(session.getUser().asString())
.stream()
.map(Subscription::getMailbox)
.collect(Collectors.toCollection(() -> new HashSet<>(INITIAL_SIZE)));
@@ -92,7 +92,7 @@ public class StoreSubscriptionManager implements SubscriptionManager {
final SubscriptionMapper mapper = mapperFactory.getSubscriptionMapper(session);
try {
mapper.execute(Mapper.toTransaction(() -> {
- Subscription subscription = mapper.findMailboxSubscriptionForUser(session.getUser().getUserName(), mailbox);
+ Subscription subscription = mapper.findMailboxSubscriptionForUser(session.getUser().asString(), mailbox);
if (subscription != null) {
mapper.delete(subscription);
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
index d9c087b..51106d9 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
@@ -42,7 +42,7 @@ import org.apache.james.mailbox.store.mail.model.MailboxMessage;
public class EventFactory {
public MailboxListener.Added added(MailboxSession session, SortedMap<MessageUid, MessageMetaData> uids, Mailbox mailbox) {
- return added(session.getSessionId(), session.getUser().getCoreUser(), uids, mailbox);
+ return added(session.getSessionId(), session.getUser(), uids, mailbox);
}
public MailboxListener.Added added(MailboxSession.SessionId sessionId, User user, SortedMap<MessageUid, MessageMetaData> uids, Mailbox mailbox) {
@@ -50,7 +50,7 @@ public class EventFactory {
}
public MailboxListener.Expunged expunged(MailboxSession session, Map<MessageUid, MessageMetaData> uids, Mailbox mailbox) {
- return expunged(session.getSessionId(), session.getUser().getCoreUser(), uids, mailbox);
+ return expunged(session.getSessionId(), session.getUser(), uids, mailbox);
}
public MailboxListener.Expunged expunged(MailboxSession.SessionId sessionId, User user, Map<MessageUid, MessageMetaData> uids, Mailbox mailbox) {
@@ -58,7 +58,7 @@ public class EventFactory {
}
public MailboxListener.FlagsUpdated flagsUpdated(MailboxSession session, List<MessageUid> uids, Mailbox mailbox, List<UpdatedFlags> uflags) {
- return flagsUpdated(session.getSessionId(), session.getUser().getCoreUser(), uids, mailbox, uflags);
+ return flagsUpdated(session.getSessionId(), session.getUser(), uids, mailbox, uflags);
}
public MailboxListener.FlagsUpdated flagsUpdated(MailboxSession.SessionId sessionId, User user, List<MessageUid> uids, Mailbox mailbox, List<UpdatedFlags> uflags) {
@@ -66,7 +66,7 @@ public class EventFactory {
}
public MailboxListener.MailboxRenamed mailboxRenamed(MailboxSession session, MailboxPath from, Mailbox to) {
- return mailboxRenamed(session.getSessionId(), session.getUser().getCoreUser(), from, to);
+ return mailboxRenamed(session.getSessionId(), session.getUser(), from, to);
}
public MailboxListener.MailboxRenamed mailboxRenamed(MailboxSession.SessionId sessionId, User user, MailboxPath from, Mailbox to) {
@@ -75,7 +75,7 @@ public class EventFactory {
public MailboxListener.MailboxDeletion mailboxDeleted(MailboxSession session, Mailbox mailbox, QuotaRoot quotaRoot,
QuotaCount deletedMessageCount, QuotaSize totalDeletedSize) {
- return mailboxDeleted(session.getSessionId(), session.getUser().getCoreUser(), mailbox, quotaRoot, deletedMessageCount, totalDeletedSize);
+ return mailboxDeleted(session.getSessionId(), session.getUser(), mailbox, quotaRoot, deletedMessageCount, totalDeletedSize);
}
public MailboxListener.MailboxDeletion mailboxDeleted(MailboxSession.SessionId sessionId, User user, Mailbox mailbox, QuotaRoot quotaRoot,
@@ -84,7 +84,7 @@ public class EventFactory {
}
public MailboxListener.MailboxAdded mailboxAdded(MailboxSession session, Mailbox mailbox) {
- return mailboxAdded(session.getSessionId(), session.getUser().getCoreUser(), mailbox);
+ return mailboxAdded(session.getSessionId(), session.getUser(), mailbox);
}
public MailboxListener.MailboxAdded mailboxAdded(MailboxSession.SessionId sessionId, User user, Mailbox mailbox) {
@@ -92,7 +92,7 @@ public class EventFactory {
}
public MailboxListener.MailboxACLUpdated aclUpdated(MailboxSession session, MailboxPath mailboxPath, ACLDiff aclDiff, MailboxId mailboxId) {
- return aclUpdated(session.getSessionId(), session.getUser().getCoreUser(), mailboxPath, aclDiff, mailboxId);
+ return aclUpdated(session.getSessionId(), session.getUser(), mailboxPath, aclDiff, mailboxId);
}
public MailboxListener.MailboxACLUpdated aclUpdated(MailboxSession.SessionId sessionId, User user, MailboxPath mailboxPath, ACLDiff aclDiff, MailboxId mailboxId) {
@@ -101,7 +101,7 @@ public class EventFactory {
public MessageMoveEvent moved(MailboxSession session, MessageMoves messageMoves, Map<MessageUid, MailboxMessage> messages) {
return MessageMoveEvent.builder()
- .user(session.getUser().getCoreUser())
+ .user(session.getUser())
.messageMoves(messageMoves)
.messages(messages)
.build();
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MessageMoveEvent.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MessageMoveEvent.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MessageMoveEvent.java
index 022303e..4fb7be4 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MessageMoveEvent.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MessageMoveEvent.java
@@ -49,7 +49,7 @@ public class MessageMoveEvent implements Event {
}
public Builder session(MailboxSession session) {
- this.user = session.getUser().getCoreUser();
+ this.user = session.getUser();
return this;
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/Username.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/Username.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/Username.java
index 5dacc38..e2346d8 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/Username.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/Username.java
@@ -31,7 +31,7 @@ public class Username {
Preconditions.checkNotNull(mailboxSession);
Preconditions.checkNotNull(mailboxSession.getUser());
- return fromRawValue(mailboxSession.getUser().getUserName());
+ return fromRawValue(mailboxSession.getUser().asString());
}
public static Username fromRawValue(String value) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
index 3707b98..102bb2a 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
@@ -141,7 +141,7 @@ public class StoreMailboxManagerTest {
public void loginShouldCreateSessionWhenGoodPassword() throws Exception {
MailboxSession expected = storeMailboxManager.login(CURRENT_USER, CURRENT_USER_PASSWORD);
- assertThat(expected.getUser().getUserName()).isEqualTo(CURRENT_USER);
+ assertThat(expected.getUser().asString()).isEqualTo(CURRENT_USER);
}
@Test(expected = BadCredentialsException.class)
@@ -183,7 +183,7 @@ public class StoreMailboxManagerTest {
public void loginAsOtherUserShouldCreateUserSessionWhenAdminWithGoodPassword() throws Exception {
MailboxSession expected = storeMailboxManager.loginAsOtherUser(ADMIN, ADMIN_PASSWORD, CURRENT_USER);
- assertThat(expected.getUser().getUserName()).isEqualTo(CURRENT_USER);
+ assertThat(expected.getUser().asString()).isEqualTo(CURRENT_USER);
}
@Test
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
index 0041f07..ed1c1ee 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
@@ -61,7 +61,7 @@ public class SystemMailboxesProviderImplTest {
when(mailboxManager.createSystemSession(MailboxFixture.ALICE)).thenReturn(mailboxSession);
when(mailboxManager.getMailbox(eq(MailboxFixture.INBOX_ALICE), eq(mailboxSession))).thenThrow(MailboxNotFoundException.class);
- assertThat(systemMailboxProvider.getMailboxByRole(Role.INBOX, mailboxSession.getUser().getCoreUser())).isEmpty();
+ assertThat(systemMailboxProvider.getMailboxByRole(Role.INBOX, mailboxSession.getUser())).isEmpty();
}
@Test
@@ -69,7 +69,7 @@ public class SystemMailboxesProviderImplTest {
when(mailboxManager.createSystemSession(MailboxFixture.ALICE)).thenReturn(mailboxSession);
when(mailboxManager.getMailbox(eq(MailboxFixture.INBOX_ALICE), eq(mailboxSession))).thenReturn(inboxMessageManager);
- assertThat(systemMailboxProvider.getMailboxByRole(Role.INBOX, mailboxSession.getUser().getCoreUser()))
+ assertThat(systemMailboxProvider.getMailboxByRole(Role.INBOX, mailboxSession.getUser()))
.hasSize(1)
.containsOnly(inboxMessageManager);
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
index a5657de..eca8099 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
@@ -169,7 +169,7 @@ public class DefaultDelegatingMailboxListenerTest {
public void listenersErrorsShouldNotBePropageted() throws Exception {
MailboxSession session = new MockMailboxSession("benwa");
MailboxListener.MailboxEvent event = new MailboxListener.MailboxEvent(session.getSessionId(),
- session.getUser().getCoreUser(), MAILBOX_PATH, MAILBOX_ID) {};
+ session.getUser(), MAILBOX_PATH, MAILBOX_ID) {};
MailboxListener mockedListener = mock(MailboxListener.class);
when(mockedListener.getType()).thenReturn(MailboxListener.ListenerType.ONCE);
doThrow(new RuntimeException()).when(mockedListener).event(event);
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/DefaultMailboxesProvisioningFilter.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/DefaultMailboxesProvisioningFilter.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/DefaultMailboxesProvisioningFilter.java
index 4ddbfb9..b876ee9 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/DefaultMailboxesProvisioningFilter.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/DefaultMailboxesProvisioningFilter.java
@@ -30,10 +30,10 @@ import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
+import org.apache.james.core.User;
import org.apache.james.mailbox.DefaultMailboxes;
import org.apache.james.mailbox.MailboxManager;
import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.MailboxSession.User;
import org.apache.james.mailbox.SubscriptionManager;
import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.exception.MailboxExistsException;
@@ -88,7 +88,7 @@ public class DefaultMailboxesProvisioningFilter implements Filter {
}
private void createDefaultMailboxes(User user) throws MailboxException {
- MailboxSession session = mailboxManager.createSystemSession(user.getUserName());
+ MailboxSession session = mailboxManager.createSystemSession(user.asString());
DefaultMailboxes.DEFAULT_MAILBOXES.stream()
.map(toMailboxPath(session))
.filter(mailboxPath -> mailboxDoesntExist(mailboxPath, session))
@@ -104,7 +104,7 @@ public class DefaultMailboxesProvisioningFilter implements Filter {
}
private Function<String, MailboxPath> toMailboxPath(MailboxSession session) {
- return mailbox -> MailboxPath.forUser(session.getUser().getUserName(), mailbox);
+ return mailbox -> MailboxPath.forUser(session.getUser().asString(), mailbox);
}
private void createMailbox(MailboxPath mailboxPath, MailboxSession session) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/DownloadServlet.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/DownloadServlet.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/DownloadServlet.java
index f70d407..6e2b272 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/DownloadServlet.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/DownloadServlet.java
@@ -90,7 +90,7 @@ public class DownloadServlet extends HttpServlet {
return;
}
resp.setContentType(TEXT_PLAIN_CONTENT_TYPE);
- resp.getOutputStream().print(simpleTokenFactory.generateAttachmentAccessToken(mailboxSession.getUser().getUserName(), blobId).serialize());
+ resp.getOutputStream().print(simpleTokenFactory.generateAttachmentAccessToken(mailboxSession.getUser().asString(), blobId).serialize());
resp.setStatus(SC_OK);
} catch (MailboxException | IOException e) {
LOGGER.error("Error while asking attachment access token", e);
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/UserProvisioningFilter.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/UserProvisioningFilter.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/UserProvisioningFilter.java
index b52d649..157f652 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/UserProvisioningFilter.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/UserProvisioningFilter.java
@@ -31,9 +31,8 @@ import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
-import org.apache.james.core.MailAddress;
+import org.apache.james.core.User;
import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.MailboxSession.User;
import org.apache.james.metrics.api.MetricFactory;
import org.apache.james.metrics.api.TimeMetric;
import org.apache.james.user.api.AlreadyExistInUsersRepositoryException;
@@ -93,9 +92,9 @@ public class UserProvisioningFilter implements Filter {
private String getUsername(User user) throws UsersRepositoryException {
try {
- return usersRepository.getUser(new MailAddress(user.getUserName()));
- } catch (AddressException e) {
- return user.getUserName();
+ return usersRepository.getUser(user.asMailAddress());
+ } catch (IllegalStateException | AddressException e) {
+ return user.asString();
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/event/PropagateLookupRightListener.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/event/PropagateLookupRightListener.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/event/PropagateLookupRightListener.java
index cdf1701..f890c4a 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/event/PropagateLookupRightListener.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/event/PropagateLookupRightListener.java
@@ -127,7 +127,7 @@ public class PropagateLookupRightListener implements MailboxListener {
} catch (MailboxException e) {
LOGGER.error(String.format("Mailbox '%s' does not exist, user '%s' cannot share mailbox",
mailboxPath,
- session.getUser().getUserName()), e);
+ session.getUser().asString()), e);
}
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetFilterMethod.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetFilterMethod.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetFilterMethod.java
index 275417e..56a3cd7 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetFilterMethod.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetFilterMethod.java
@@ -81,7 +81,7 @@ public class GetFilterMethod implements Method {
private Stream<JmapResponse> process(ClientId clientId, MailboxSession mailboxSession, GetFilterRequest request) {
try {
- return retrieveFilter(clientId, mailboxSession.getUser().getCoreUser());
+ return retrieveFilter(clientId, mailboxSession.getUser());
} catch (Exception e) {
LOGGER.warn("Failed to retrieve filter");
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetVacationResponseMethod.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetVacationResponseMethod.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetVacationResponseMethod.java
index e242c7d..445c760 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetVacationResponseMethod.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetVacationResponseMethod.java
@@ -82,9 +82,9 @@ public class GetVacationResponseMethod implements Method {
}
private GetVacationResponse process(MailboxSession mailboxSession) {
- Vacation vacation = vacationRepository.retrieveVacation(AccountId.fromString(mailboxSession.getUser().getUserName())).join();
+ Vacation vacation = vacationRepository.retrieveVacation(AccountId.fromString(mailboxSession.getUser().asString())).join();
return GetVacationResponse.builder()
- .accountId(mailboxSession.getUser().getUserName())
+ .accountId(mailboxSession.getUser().asString())
.vacationResponse(VacationResponse.builder()
.fromVacation(vacation)
.activated(vacation.isActiveAtDate(zonedDateTimeProvider.get()))
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/MessageSender.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/MessageSender.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/MessageSender.java
index d9d69a9..cab1956 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/MessageSender.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/MessageSender.java
@@ -56,7 +56,7 @@ public class MessageSender {
public void sendMessage(MessageId messageId,
Mail mail,
MailboxSession session) throws MessagingException {
- MailMetadata metadata = new MailMetadata(messageId, session.getUser().getUserName());
+ MailMetadata metadata = new MailMetadata(messageId, session.getUser().asString());
mailSpool.send(mail, metadata);
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/RequestHandler.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/RequestHandler.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/RequestHandler.java
index a8c42f3..09a70aa 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/RequestHandler.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/RequestHandler.java
@@ -30,6 +30,7 @@ import java.util.stream.Stream;
import javax.inject.Inject;
+import org.apache.james.core.User;
import org.apache.james.jmap.JmapFieldNotSupportedException;
import org.apache.james.jmap.model.AuthenticatedProtocolRequest;
import org.apache.james.jmap.model.ProtocolResponse;
@@ -58,7 +59,7 @@ public class RequestHandler {
Optional<MailboxSession> mailboxSession = Optional.ofNullable(request.getMailboxSession());
try (Closeable closeable =
MDCBuilder.create()
- .addContext(MDCBuilder.USER, mailboxSession.map(MailboxSession::getUser).map(MailboxSession.User::getUserName))
+ .addContext(MDCBuilder.USER, mailboxSession.map(MailboxSession::getUser).map(User::asString))
.addContext(MDCBuilder.SESSION_ID, mailboxSession.map(MailboxSession::getSessionId))
.addContext(MDCBuilder.ACTION, request.getMethodName().getName())
.build()) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SendMDNProcessor.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SendMDNProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SendMDNProcessor.java
index 086c7dd..6ec6098 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SendMDNProcessor.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SendMDNProcessor.java
@@ -189,7 +189,7 @@ public class SendMDNProcessor implements SetMessagesProcessor {
private MessageManager getOutbox(MailboxSession mailboxSession) throws MailboxException {
- return systemMailboxesProvider.getMailboxByRole(Role.OUTBOX, mailboxSession.getUser().getCoreUser())
+ return systemMailboxesProvider.getMailboxByRole(Role.OUTBOX, mailboxSession.getUser())
.findAny()
.orElseThrow(() -> new IllegalStateException("User don't have an Outbox"));
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetFilterMethod.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetFilterMethod.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetFilterMethod.java
index 72397ca..221638c 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetFilterMethod.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetFilterMethod.java
@@ -121,7 +121,7 @@ public class SetFilterMethod implements Method {
private Stream<JmapResponse> process(ClientId clientId, MailboxSession mailboxSession, SetFilterRequest request) {
try {
- return updateFilter(clientId, request, mailboxSession.getUser().getCoreUser());
+ return updateFilter(clientId, request, mailboxSession.getUser());
} catch (MultipleMailboxIdException e) {
LOGGER.debug("Rule targeting several mailboxes", e);
return Stream.of(multipleMailboxesError(clientId, e));
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesCreationProcessor.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesCreationProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesCreationProcessor.java
index 323df90..6113171 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesCreationProcessor.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesCreationProcessor.java
@@ -178,10 +178,10 @@ public class SetMailboxesCreationProcessor implements SetMailboxesProcessor {
assertBelongsToUser(parentPath, mailboxSession);
- return MailboxPath.forUser(mailboxSession.getUser().getUserName(),
+ return MailboxPath.forUser(mailboxSession.getUser().asString(),
parentPath.getName() + mailboxSession.getPathDelimiter() + mailboxRequest.getName());
}
- return MailboxPath.forUser(mailboxSession.getUser().getUserName(), mailboxRequest.getName());
+ return MailboxPath.forUser(mailboxSession.getUser().asString(), mailboxRequest.getName());
}
private void assertBelongsToUser(MailboxPath mailboxPath, MailboxSession mailboxSession) throws MailboxNotOwnedException {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesUpdateProcessor.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesUpdateProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesUpdateProcessor.java
index 819a601..fcc122c 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesUpdateProcessor.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMailboxesUpdateProcessor.java
@@ -284,7 +284,7 @@ public class SetMailboxesUpdateProcessor implements SetMailboxesProcessor {
Optional<MailboxId> parentId = updateRequest.getParentId();
if (parentId == null) {
return MailboxPath.forUser(
- mailboxSession.getUser().getUserName(),
+ mailboxSession.getUser().asString(),
updateRequest.getName().orElse(mailbox.getName()));
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java
index dc135e6..627e9a8 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java
@@ -29,6 +29,7 @@ import java.util.stream.Collectors;
import javax.inject.Inject;
import javax.mail.MessagingException;
+import org.apache.james.core.User;
import org.apache.james.jmap.exceptions.AttachmentsNotFoundException;
import org.apache.james.jmap.exceptions.InvalidDraftKeywordsException;
import org.apache.james.jmap.exceptions.InvalidMailboxForCreationException;
@@ -283,9 +284,9 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor {
private void assertUserIsSender(MailboxSession session, Optional<DraftEmailer> from) throws MailboxSendingNotAllowedException {
if (!from.flatMap(DraftEmailer::getEmail)
- .filter(email -> session.getUser().isSameUser(email))
+ .filter(email -> session.getUser().equals(User.fromUsername(email)))
.isPresent()) {
- String allowedSender = session.getUser().getUserName();
+ String allowedSender = session.getUser().asString();
throw new MailboxSendingNotAllowedException(allowedSender);
}
}
@@ -309,7 +310,7 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor {
}
private Optional<MessageManager> getMailboxWithRole(MailboxSession mailboxSession, Role role) throws MailboxException {
- return systemMailboxesProvider.getMailboxByRole(role, mailboxSession.getUser().getCoreUser()).findFirst();
+ return systemMailboxesProvider.getMailboxByRole(role, mailboxSession.getUser()).findFirst();
}
private SetError buildSetErrorFromValidationResult(List<ValidationResult> validationErrors) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesUpdateProcessor.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesUpdateProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesUpdateProcessor.java
index 17a081a..14d88df 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesUpdateProcessor.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesUpdateProcessor.java
@@ -36,6 +36,7 @@ import javax.mail.Session;
import javax.mail.internet.MimeMessage;
import org.apache.james.core.MailAddress;
+import org.apache.james.core.User;
import org.apache.james.jmap.exceptions.DraftMessageMailboxUpdateException;
import org.apache.james.jmap.exceptions.InvalidOutboxMoveException;
import org.apache.james.jmap.model.Keyword;
@@ -190,11 +191,11 @@ public class SetMessagesUpdateProcessor implements SetMessagesProcessor {
}
private void assertUserIsSender(MailboxSession session, Optional<MailAddress> sender) throws MailboxSendingNotAllowedException {
- boolean userIsSender = sender.map(address -> session.getUser().isSameUser(address.asString()))
+ boolean userIsSender = sender.map(address -> session.getUser().equals(User.fromMailAddress(address)))
.orElse(false);
if (!userIsSender) {
- String allowedSender = session.getUser().getUserName();
+ String allowedSender = session.getUser().asString();
throw new MailboxSendingNotAllowedException(allowedSender);
}
}
@@ -245,7 +246,7 @@ public class SetMessagesUpdateProcessor implements SetMessagesProcessor {
}
private List<MailboxId> mailboxIdFor(Role role, MailboxSession session) throws MailboxException {
- return systemMailboxesProvider.getMailboxByRole(role, session.getUser().getCoreUser())
+ return systemMailboxesProvider.getMailboxByRole(role, session.getUser())
.map(MessageManager::getId)
.collect(Guavate.toImmutableList());
}
@@ -273,7 +274,7 @@ public class SetMessagesUpdateProcessor implements SetMessagesProcessor {
}
private Set<MailboxId> listMailboxIdsForRole(MailboxSession session, Role role) throws MailboxException {
- return systemMailboxesProvider.getMailboxByRole(role, session.getUser().getCoreUser())
+ return systemMailboxesProvider.getMailboxByRole(role, session.getUser())
.map(MessageManager::getId)
.collect(Guavate.toImmutableSet());
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/46e26b8d/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetVacationResponseMethod.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetVacationResponseMethod.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetVacationResponseMethod.java
index d10cc3f..3cc6266 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetVacationResponseMethod.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetVacationResponseMethod.java
@@ -97,7 +97,7 @@ public class SetVacationResponseMethod implements Method {
}
return process(clientId,
- AccountId.fromString(mailboxSession.getUser().getUserName()),
+ AccountId.fromString(mailboxSession.getUser().asString()),
setVacationRequest.getUpdate().get(Vacation.ID));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org