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 12367a727fffecb0c649362b01027d4763d22755 Author: Benoit Tellier <[email protected]> AuthorDate: Tue Dec 10 10:22:36 2019 +0700 [Refactoring] FetchData: boolean setter parameter are always true Remove this useless parameter. Rename these methods to `fetch*` to better express the intent. --- .../apache/james/imap/api/message/FetchData.java | 25 +++++--------- .../imap/decode/parser/FetchCommandParser.java | 40 +++++++++++----------- .../james/imap/message/request/FetchRequest.java | 2 +- .../james/imap/processor/fetch/FetchProcessor.java | 2 +- .../processor/fetch/FetchDataConverterTest.java | 14 ++++---- 5 files changed, 37 insertions(+), 46 deletions(-) diff --git a/protocols/imap/src/main/java/org/apache/james/imap/api/message/FetchData.java b/protocols/imap/src/main/java/org/apache/james/imap/api/message/FetchData.java index da9443c..3459a63 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/api/message/FetchData.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/api/message/FetchData.java @@ -25,7 +25,6 @@ import java.util.Objects; import java.util.Set; import com.google.common.base.MoreObjects; -import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSet; public class FetchData { @@ -55,8 +54,7 @@ public class FetchData { return itemToFetch.contains(Item.BODY); } - public FetchData setBody(boolean body) { - Preconditions.checkArgument(body, "'body' can not be unset"); + public FetchData fetchBody() { itemToFetch.add(Item.BODY); return this; } @@ -65,8 +63,7 @@ public class FetchData { return itemToFetch.contains(Item.BODY_STRUCTURE); } - public FetchData setBodyStructure(boolean bodyStructure) { - Preconditions.checkArgument(bodyStructure, "'bodyStructure' can not be unset"); + public FetchData fetchBodyStructure() { itemToFetch.add(Item.BODY_STRUCTURE); return this; } @@ -75,8 +72,7 @@ public class FetchData { return itemToFetch.contains(Item.ENVELOPE); } - public FetchData setEnvelope(boolean envelope) { - Preconditions.checkArgument(envelope, "'envelope' can not be unset"); + public FetchData fetchEnvelope() { itemToFetch.add(Item.ENVELOPE); return this; } @@ -85,8 +81,7 @@ public class FetchData { return itemToFetch.contains(Item.FLAGS); } - public FetchData setFlags(boolean flags) { - Preconditions.checkArgument(flags, "'flags' can not be unset"); + public FetchData fetchFlags() { itemToFetch.add(Item.FLAGS); return this; } @@ -95,8 +90,7 @@ public class FetchData { return itemToFetch.contains(Item.INTERNAL_DATE); } - public FetchData setInternalDate(boolean internalDate) { - Preconditions.checkArgument(internalDate, "'internalDate' can not be unset"); + public FetchData fetchInternalDate() { itemToFetch.add(Item.INTERNAL_DATE); return this; } @@ -105,8 +99,7 @@ public class FetchData { return itemToFetch.contains(Item.SIZE); } - public FetchData setSize(boolean size) { - Preconditions.checkArgument(size, "'size' can not be unset"); + public FetchData fetchSize() { itemToFetch.add(Item.SIZE); return this; } @@ -115,8 +108,7 @@ public class FetchData { return itemToFetch.contains(Item.UID); } - public FetchData setUid(boolean uid) { - Preconditions.checkArgument(uid, "'uid' can not be unset"); + public FetchData fetchUid() { itemToFetch.add(Item.UID); return this; } @@ -130,8 +122,7 @@ public class FetchData { return itemToFetch.contains(Item.MODSEQ); } - public FetchData setModSeq(boolean modSeq) { - Preconditions.checkArgument(modSeq, "'modSeq' can not be unset"); + public FetchData fetchModSeq() { itemToFetch.add(Item.MODSEQ); return this; } diff --git a/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/FetchCommandParser.java b/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/FetchCommandParser.java index f929325..698a819 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/FetchCommandParser.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/FetchCommandParser.java @@ -129,34 +129,34 @@ public class FetchCommandParser extends AbstractUidCommandParser { // Simple elements with no '[]' parameters. if (next != '[') { if ("FAST".equalsIgnoreCase(name)) { - fetch.setFlags(true); - fetch.setInternalDate(true); - fetch.setSize(true); + fetch.fetchFlags(); + fetch.fetchInternalDate(); + fetch.fetchSize(); } else if ("FULL".equalsIgnoreCase(name)) { - fetch.setFlags(true); - fetch.setInternalDate(true); - fetch.setSize(true); - fetch.setEnvelope(true); - fetch.setBody(true); + fetch.fetchFlags(); + fetch.fetchInternalDate(); + fetch.fetchSize(); + fetch.fetchEnvelope(); + fetch.fetchBody(); } else if ("ALL".equalsIgnoreCase(name)) { - fetch.setFlags(true); - fetch.setInternalDate(true); - fetch.setSize(true); - fetch.setEnvelope(true); + fetch.fetchFlags(); + fetch.fetchInternalDate(); + fetch.fetchSize(); + fetch.fetchEnvelope(); } else if ("FLAGS".equalsIgnoreCase(name)) { - fetch.setFlags(true); + fetch.fetchFlags(); } else if ("RFC822.SIZE".equalsIgnoreCase(name)) { - fetch.setSize(true); + fetch.fetchSize(); } else if ("ENVELOPE".equalsIgnoreCase(name)) { - fetch.setEnvelope(true); + fetch.fetchEnvelope(); } else if ("INTERNALDATE".equalsIgnoreCase(name)) { - fetch.setInternalDate(true); + fetch.fetchInternalDate(); } else if ("BODY".equalsIgnoreCase(name)) { - fetch.setBody(true); + fetch.fetchBody(); } else if ("BODYSTRUCTURE".equalsIgnoreCase(name)) { - fetch.setBodyStructure(true); + fetch.fetchBodyStructure(); } else if ("UID".equalsIgnoreCase(name)) { - fetch.setUid(true); + fetch.fetchUid(); } else if ("RFC822".equalsIgnoreCase(name)) { fetch.add(BodyFetchElement.createRFC822(), false); } else if ("RFC822.HEADER".equalsIgnoreCase(name)) { @@ -164,7 +164,7 @@ public class FetchCommandParser extends AbstractUidCommandParser { } else if ("RFC822.TEXT".equalsIgnoreCase(name)) { fetch.add(BodyFetchElement.createRFC822Text(), false); } else if ("MODSEQ".equalsIgnoreCase(name)) { - fetch.setModSeq(true); + fetch.fetchModSeq(); } else { throw new DecodingException(HumanReadableText.ILLEGAL_ARGUMENTS, "Invalid fetch attribute: " + name); } diff --git a/protocols/imap/src/main/java/org/apache/james/imap/message/request/FetchRequest.java b/protocols/imap/src/main/java/org/apache/james/imap/message/request/FetchRequest.java index 61e8758..6867bda 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/message/request/FetchRequest.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/message/request/FetchRequest.java @@ -36,7 +36,7 @@ public class FetchRequest extends AbstractImapRequest { this.idSet = idSet; this.fetch = fetch; if (useUids) { - fetch.setUid(true); + fetch.fetchUid(); } } diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java index 668128e..ef8c007 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java @@ -108,7 +108,7 @@ public class FetchProcessor extends AbstractMailboxProcessor<FetchRequest> { } // if QRESYNC is enable its necessary to also return the UID in all cases if (EnableProcessor.getEnabledCapabilities(session).contains(ImapConstants.SUPPORTS_QRESYNC)) { - fetch.setUid(true); + fetch.fetchUid(); } processMessageRanges(session, mailbox, ranges, fetch, useUids, mailboxSession, responder); diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/fetch/FetchDataConverterTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/fetch/FetchDataConverterTest.java index 0050bfa..84f06e7 100644 --- a/protocols/imap/src/test/java/org/apache/james/imap/processor/fetch/FetchDataConverterTest.java +++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/fetch/FetchDataConverterTest.java @@ -44,14 +44,14 @@ class FetchDataConverterTest { static Stream<Arguments> getFetchGroupShouldReturnCorrectValue() { return Stream.of( Arguments.arguments(new FetchData(), FetchGroup.MINIMAL), - Arguments.arguments(new FetchData().setBody(true), FetchGroup.MINIMAL.with(Profile.MIME_DESCRIPTOR)), - Arguments.arguments(new FetchData().setBodyStructure(true), FetchGroup.MINIMAL.with(Profile.MIME_DESCRIPTOR)), + Arguments.arguments(new FetchData().fetchBody(), FetchGroup.MINIMAL.with(Profile.MIME_DESCRIPTOR)), + Arguments.arguments(new FetchData().fetchBodyStructure(), FetchGroup.MINIMAL.with(Profile.MIME_DESCRIPTOR)), Arguments.arguments(new FetchData().setChangedSince(0L), FetchGroup.MINIMAL), - Arguments.arguments(new FetchData().setEnvelope(true), FetchGroup.HEADERS), - Arguments.arguments(new FetchData().setFlags(true), FetchGroup.MINIMAL), - Arguments.arguments(new FetchData().setInternalDate(true), FetchGroup.MINIMAL), - Arguments.arguments(new FetchData().setModSeq(true), FetchGroup.MINIMAL), - Arguments.arguments(new FetchData().setUid(true), FetchGroup.MINIMAL), + Arguments.arguments(new FetchData().fetchEnvelope(), FetchGroup.HEADERS), + Arguments.arguments(new FetchData().fetchFlags(), FetchGroup.MINIMAL), + Arguments.arguments(new FetchData().fetchInternalDate(), FetchGroup.MINIMAL), + Arguments.arguments(new FetchData().fetchModSeq(), FetchGroup.MINIMAL), + Arguments.arguments(new FetchData().fetchUid(), FetchGroup.MINIMAL), Arguments.arguments(new FetchData().setVanished(true), FetchGroup.MINIMAL), Arguments.arguments(new FetchData().add(BodyFetchElement.createRFC822(), PEEK), FetchGroup.FULL_CONTENT), Arguments.arguments(new FetchData().add(BodyFetchElement.createRFC822Header(), PEEK), FetchGroup.HEADERS), --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
