This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit d2a1754f5ad520a31052c49c43f079f2c700b874 Author: tran tien duc <[email protected]> AuthorDate: Thu Feb 21 18:37:35 2019 +0700 MAILBOX-381 refactor findMessage unlimited constant replacements --- .../apache/james/mailbox/maildir/mail/MaildirMessageMapper.java | 2 +- .../james/mailbox/inmemory/mail/InMemoryMessageMapper.java | 2 +- .../java/org/apache/james/mailbox/store/StoreMailboxManager.java | 4 +++- .../java/org/apache/james/mailbox/store/StoreMessageManager.java | 9 +++------ .../apache/james/mailbox/store/mail/AbstractMessageMapper.java | 3 ++- .../apache/james/mailbox/store/quota/CurrentQuotaCalculator.java | 4 +++- .../james/mailbox/store/search/LazyMessageSearchIndex.java | 2 +- .../james/mailbox/store/search/ListeningMessageSearchIndex.java | 2 +- .../james/mailbox/store/search/SimpleMessageSearchIndex.java | 6 ++++-- 9 files changed, 19 insertions(+), 15 deletions(-) diff --git a/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java b/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java index 8cab401..104aa75 100644 --- a/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java +++ b/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java @@ -153,7 +153,7 @@ public class MaildirMessageMapper extends AbstractMessageMapper { final List<UpdatedFlags> updatedFlags = new ArrayList<>(); final MaildirFolder folder = maildirStore.createMaildirFolder(mailbox); - Iterator<MailboxMessage> it = findInMailbox(mailbox, set, FetchType.Metadata, -1); + Iterator<MailboxMessage> it = findInMailbox(mailbox, set, FetchType.Metadata, UNLIMITED); while (it.hasNext()) { final MailboxMessage member = it.next(); Flags originalFlags = member.createFlags(); diff --git a/mailbox/memory/src/main/java/org/apache/james/mailbox/inmemory/mail/InMemoryMessageMapper.java b/mailbox/memory/src/main/java/org/apache/james/mailbox/inmemory/mail/InMemoryMessageMapper.java index 7d6e598..dfd2450 100644 --- a/mailbox/memory/src/main/java/org/apache/james/mailbox/inmemory/mail/InMemoryMessageMapper.java +++ b/mailbox/memory/src/main/java/org/apache/james/mailbox/inmemory/mail/InMemoryMessageMapper.java @@ -137,7 +137,7 @@ public class InMemoryMessageMapper extends AbstractMessageMapper { public List<MessageUid> retrieveMessagesMarkedForDeletion(Mailbox mailbox, MessageRange messageRange) { List<MessageUid> filteredResult = new ArrayList<>(); - Iterator<MailboxMessage> it = findInMailbox(mailbox, messageRange, FetchType.Metadata, -1); + Iterator<MailboxMessage> it = findInMailbox(mailbox, messageRange, FetchType.Metadata, UNLIMITED); while (it.hasNext()) { MailboxMessage member = it.next(); 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 22af4a8..09ca79f 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 @@ -19,6 +19,8 @@ package org.apache.james.mailbox.store; +import static org.apache.james.mailbox.store.mail.AbstractMessageMapper.UNLIMITED; + import java.security.SecureRandom; import java.util.ArrayList; import java.util.EnumSet; @@ -393,7 +395,7 @@ public class StoreMailboxManager implements MailboxManager { QuotaRoot quotaRoot = quotaRootResolver.getQuotaRoot(mailboxPath); long messageCount = messageMapper.countMessagesInMailbox(mailbox); - long totalSize = Iterators.toStream(messageMapper.findInMailbox(mailbox, MessageRange.all(), MessageMapper.FetchType.Metadata, -1)) + long totalSize = Iterators.toStream(messageMapper.findInMailbox(mailbox, MessageRange.all(), MessageMapper.FetchType.Metadata, UNLIMITED)) .mapToLong(Message::getFullContentOctets) .sum(); diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java index 1de663a..0a18a65 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java @@ -20,6 +20,7 @@ package org.apache.james.mailbox.store; import static org.apache.james.mailbox.extension.PreDeletionHook.DeleteOperation; +import static org.apache.james.mailbox.store.mail.AbstractMessageMapper.UNLIMITED; import java.io.File; import java.io.FileOutputStream; @@ -94,12 +95,10 @@ import org.apache.james.mime4j.stream.MimeTokenStream; import org.apache.james.mime4j.stream.RecursionMode; import org.apache.james.util.BodyOffsetInputStream; import org.apache.james.util.IteratorWrapper; -import org.apache.james.util.StreamUtils; import org.apache.james.util.streams.Iterators; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.github.fge.lambdas.Throwing; import com.github.steveash.guavate.Guavate; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedMap; @@ -120,8 +119,6 @@ import reactor.core.scheduler.Schedulers; * */ public class StoreMessageManager implements MessageManager { - - private static final int NO_LIMIT = -1; private static final MailboxCounters ZERO_MAILBOX_COUNTERS = MailboxCounters.builder() .count(0) .unseen(0) @@ -734,7 +731,7 @@ public class StoreMessageManager implements MessageManager { DeleteOperation deleteOperation = Flux.fromIterable(MessageRange.toRanges(uids)) .publishOn(Schedulers.elastic()) - .flatMap(range -> Mono.fromCallable(() -> messageMapper.findInMailbox(mailbox, range, FetchType.Metadata, NO_LIMIT)) + .flatMap(range -> Mono.fromCallable(() -> messageMapper.findInMailbox(mailbox, range, FetchType.Metadata, UNLIMITED)) .flatMapMany(iterator -> Flux.fromStream(Iterators.toStream(iterator)))) .map(mailboxMessage -> MetadataWithMailboxId.from(mailboxMessage.metaData(), mailboxMessage.getMailboxId())) .collect(Guavate.toImmutableList()) @@ -862,7 +859,7 @@ public class StoreMessageManager implements MessageManager { private Iterator<MailboxMessage> retrieveOriginalRows(MessageRange set, MailboxSession session) throws MailboxException { MessageMapper messageMapper = mapperFactory.getMessageMapper(session); - return messageMapper.findInMailbox(mailbox, set, FetchType.Full, -1); + return messageMapper.findInMailbox(mailbox, set, FetchType.Full, UNLIMITED); } private SortedMap<MessageUid, MessageMetaData> collectMetadata(Iterator<MessageMetaData> ids) { diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java index f1f24be..31be149 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java @@ -22,6 +22,7 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Optional; + import javax.mail.Flags; import org.apache.james.mailbox.MailboxSession; @@ -78,7 +79,7 @@ public abstract class AbstractMessageMapper extends TransactionalMapper implemen @Override public Iterator<UpdatedFlags> updateFlags(Mailbox mailbox, FlagsUpdateCalculator flagsUpdateCalculator, MessageRange set) throws MailboxException { final List<UpdatedFlags> updatedFlags = new ArrayList<>(); - Iterator<MailboxMessage> messages = findInMailbox(mailbox, set, FetchType.Metadata, -1); + Iterator<MailboxMessage> messages = findInMailbox(mailbox, set, FetchType.Metadata, UNLIMITED); long modSeq = -1; if (messages.hasNext()) { diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/quota/CurrentQuotaCalculator.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/quota/CurrentQuotaCalculator.java index fbf4480..ea41989 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/quota/CurrentQuotaCalculator.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/quota/CurrentQuotaCalculator.java @@ -19,6 +19,8 @@ package org.apache.james.mailbox.store.quota; +import static org.apache.james.mailbox.store.mail.AbstractMessageMapper.UNLIMITED; + import java.util.Iterator; import java.util.List; @@ -56,7 +58,7 @@ public class CurrentQuotaCalculator { long messagesSizes = 0; long messageCount = 0; for (Mailbox mailbox : mailboxes) { - Iterator<MailboxMessage> messages = mapper.findInMailbox(mailbox, MessageRange.all(), MessageMapper.FetchType.Metadata, -1); + Iterator<MailboxMessage> messages = mapper.findInMailbox(mailbox, MessageRange.all(), MessageMapper.FetchType.Metadata, UNLIMITED); messageCount += mapper.countMessagesInMailbox(mailbox); while (messages.hasNext()) { messagesSizes += messages.next().getFullContentOctets(); diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/LazyMessageSearchIndex.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/LazyMessageSearchIndex.java index 0a05fd3..8ab47bf 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/LazyMessageSearchIndex.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/LazyMessageSearchIndex.java @@ -116,7 +116,7 @@ public class LazyMessageSearchIndex extends ListeningMessageSearchIndex { done = oldDone; } synchronized (done) { - Iterator<MailboxMessage> messages = factory.getMessageMapper(session).findInMailbox(mailbox, MessageRange.all(), FetchType.Full, -1); + Iterator<MailboxMessage> messages = factory.getMessageMapper(session).findInMailbox(mailbox, MessageRange.all(), FetchType.Full, UNLIMITED); while (messages.hasNext()) { final MailboxMessage message = messages.next(); try { diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/ListeningMessageSearchIndex.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/ListeningMessageSearchIndex.java index 53d9ac7..f010e0e 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/ListeningMessageSearchIndex.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/ListeningMessageSearchIndex.java @@ -48,7 +48,7 @@ import com.google.common.collect.ImmutableList; public abstract class ListeningMessageSearchIndex implements MessageSearchIndex, MailboxListener.GroupMailboxListener { private static final Logger LOGGER = LoggerFactory.getLogger(ListeningMessageSearchIndex.class); - private static final int UNLIMITED = -1; + protected static final int UNLIMITED = -1; private final MailboxSessionMapperFactory factory; private final SessionProvider sessionProvider; private static final ImmutableList<Class<? extends Event>> INTERESTING_EVENTS = ImmutableList.of(Added.class, Expunged.class, FlagsUpdated.class, MailboxDeletion.class); diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndex.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndex.java index ce22aa9..4093e50 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndex.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndex.java @@ -18,6 +18,8 @@ ****************************************************************/ package org.apache.james.mailbox.store.search; +import static org.apache.james.mailbox.store.mail.AbstractMessageMapper.UNLIMITED; + import java.util.Collection; import java.util.EnumSet; import java.util.Iterator; @@ -124,14 +126,14 @@ public class SimpleMessageSearchIndex implements MessageSearchIndex { // only fetching this uid range UidRange[] ranges = uidCrit.getOperator().getRange(); for (UidRange r : ranges) { - Iterator<MailboxMessage> it = mapper.findInMailbox(mailbox, MessageRange.range(r.getLowValue(), r.getHighValue()), FetchType.Metadata, -1); + Iterator<MailboxMessage> it = mapper.findInMailbox(mailbox, MessageRange.range(r.getLowValue(), r.getHighValue()), FetchType.Metadata, UNLIMITED); while (it.hasNext()) { hitSet.add(it.next()); } } } else { // we have to fetch all messages - Iterator<MailboxMessage> messages = mapper.findInMailbox(mailbox, MessageRange.all(), FetchType.Full, -1); + Iterator<MailboxMessage> messages = mapper.findInMailbox(mailbox, MessageRange.all(), FetchType.Full, UNLIMITED); while (messages.hasNext()) { MailboxMessage m = messages.next(); hitSet.add(m); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
