This is an automated email from the ASF dual-hosted git repository. rcordier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit ace778f57448ca34458e00382fbf0ecc3b7192d3 Author: Benoit Tellier <btell...@linagora.com> AuthorDate: Fri Dec 13 07:40:49 2019 +0100 [Refactoring] Improve Append command parser readability --- .../imap/decode/parser/AppendCommandParser.java | 24 ++++++++-------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/AppendCommandParser.java b/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/AppendCommandParser.java index a64259c..239fa80 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/AppendCommandParser.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/decode/parser/AppendCommandParser.java @@ -44,42 +44,34 @@ public class AppendCommandParser extends AbstractImapCommandParser { /** * If the next character in the request is a '(', tries to read a - * "flag_list" argument from the request. If not, returns a MessageFlags + * "flag_list" argument from the request. If not, returns a Flags * with no flags set. */ - public Flags optionalAppendFlags(ImapRequestLineReader request) throws DecodingException { + private Flags parseFlags(ImapRequestLineReader request) throws DecodingException { char next = request.nextWordChar(); if (next == '(') { return request.flagList(); - } else { - return null; } + return new Flags(); } /** * If the next character in the request is a '"', tries to read a DateTime - * argument. If not, returns null. + * argument. If not, returns now. */ - public LocalDateTime optionalDateTime(ImapRequestLineReader request) throws DecodingException { + private LocalDateTime parseDateTime(ImapRequestLineReader request) throws DecodingException { char next = request.nextWordChar(); if (next == '"') { return request.dateTime(); - } else { - return null; } + return LocalDateTime.now(); } @Override protected ImapMessage decode(ImapRequestLineReader request, Tag tag, ImapSession session) throws DecodingException { String mailboxName = request.mailbox(); - Flags flags = optionalAppendFlags(request); - if (flags == null) { - flags = new Flags(); - } - LocalDateTime datetime = optionalDateTime(request); - if (datetime == null) { - datetime = LocalDateTime.now(); - } + Flags flags = parseFlags(request); + LocalDateTime datetime = parseDateTime(request); request.nextWordChar(); return new AppendRequest(mailboxName, flags, Date.from(datetime.atZone(ZoneId.systemDefault()).toInstant()), request.consumeLiteral(true), tag); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org