diff --git a/Documentation/dev-plugins.txt b/Documentation/dev-plugins.txt index 35ff40b1d8..505d4b79a1 100644 --- a/Documentation/dev-plugins.txt +++ b/Documentation/dev-plugins.txt @@ -2734,7 +2734,7 @@ specific checks like IP filters. [source, java] ---- import com.google.gerrit.extensions.annotations.ExtensionPoint; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; public class MyPlugin implements MailFilter { public boolean shouldProcessMessage(MailMessage message) { diff --git a/java/com/google/gerrit/acceptance/AbstractDaemonTest.java b/java/com/google/gerrit/acceptance/AbstractDaemonTest.java index abb28ce070..36b0a65da7 100644 --- a/java/com/google/gerrit/acceptance/AbstractDaemonTest.java +++ b/java/com/google/gerrit/acceptance/AbstractDaemonTest.java @@ -68,6 +68,8 @@ import com.google.gerrit.extensions.common.EditInfo; import com.google.gerrit.extensions.restapi.BinaryResult; import com.google.gerrit.extensions.restapi.IdString; import com.google.gerrit.extensions.restapi.RestApiException; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.BooleanProjectConfig; @@ -108,8 +110,6 @@ import com.google.gerrit.server.index.change.ChangeIndex; import com.google.gerrit.server.index.change.ChangeIndexCollection; import com.google.gerrit.server.index.change.ChangeIndexer; import com.google.gerrit.server.index.group.GroupIndexer; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.send.EmailHeader; import com.google.gerrit.server.notedb.ChangeNoteUtil; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.MutableNotesMigration; diff --git a/java/com/google/gerrit/acceptance/AbstractNotificationTest.java b/java/com/google/gerrit/acceptance/AbstractNotificationTest.java index 2336f2f27a..f2d0f7043d 100644 --- a/java/com/google/gerrit/acceptance/AbstractNotificationTest.java +++ b/java/com/google/gerrit/acceptance/AbstractNotificationTest.java @@ -34,10 +34,10 @@ import com.google.gerrit.extensions.client.GeneralPreferencesInfo; import com.google.gerrit.extensions.client.GeneralPreferencesInfo.EmailStrategy; import com.google.gerrit.extensions.client.InheritableBoolean; import com.google.gerrit.extensions.client.ReviewerState; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; +import com.google.gerrit.mail.EmailHeader.AddressList; import com.google.gerrit.server.account.ProjectWatches.NotifyType; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.send.EmailHeader; -import com.google.gerrit.server.mail.send.EmailHeader.AddressList; import com.google.gerrit.testing.FakeEmailSender; import com.google.gerrit.testing.FakeEmailSender.Message; import java.io.IOException; diff --git a/java/com/google/gerrit/acceptance/BUILD b/java/com/google/gerrit/acceptance/BUILD index 25e1d7c168..efca382702 100644 --- a/java/com/google/gerrit/acceptance/BUILD +++ b/java/com/google/gerrit/acceptance/BUILD @@ -19,6 +19,7 @@ java_library( "//java/com/google/gerrit/index", "//java/com/google/gerrit/launcher", "//java/com/google/gerrit/lucene", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/pgm", "//java/com/google/gerrit/pgm/init", @@ -99,6 +100,7 @@ java_library2( "//java/com/google/gerrit/httpd", "//java/com/google/gerrit/index", "//java/com/google/gerrit/lucene", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/pgm/init", "//java/com/google/gerrit/reviewdb:server", diff --git a/java/com/google/gerrit/acceptance/TestAccount.java b/java/com/google/gerrit/acceptance/TestAccount.java index 094e8b0d85..5ce44ffda2 100644 --- a/java/com/google/gerrit/acceptance/TestAccount.java +++ b/java/com/google/gerrit/acceptance/TestAccount.java @@ -17,8 +17,8 @@ package com.google.gerrit.acceptance; import static java.util.stream.Collectors.toList; import com.google.common.net.InetAddresses; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; -import com.google.gerrit.server.mail.Address; import java.net.InetSocketAddress; import java.util.Arrays; import java.util.List; diff --git a/java/com/google/gerrit/server/mail/Address.java b/java/com/google/gerrit/mail/Address.java similarity index 95% rename from java/com/google/gerrit/server/mail/Address.java rename to java/com/google/gerrit/mail/Address.java index e91f3f3e99..24ab353d9c 100644 --- a/java/com/google/gerrit/server/mail/Address.java +++ b/java/com/google/gerrit/mail/Address.java @@ -12,9 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail; +package com.google.gerrit.mail; -import com.google.gerrit.server.mail.send.EmailHeader; +import com.google.gerrit.common.Nullable; public class Address { public static Address parse(String in) { @@ -50,8 +50,8 @@ public class Address { } } - final String name; - final String email; + @Nullable private final String name; + private final String email; public Address(String email) { this(null, email); @@ -62,6 +62,7 @@ public class Address { this.email = email; } + @Nullable public String getName() { return name; } diff --git a/java/com/google/gerrit/mail/BUILD b/java/com/google/gerrit/mail/BUILD new file mode 100644 index 0000000000..90bb82cc0c --- /dev/null +++ b/java/com/google/gerrit/mail/BUILD @@ -0,0 +1,18 @@ +java_library( + name = "mail", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = [ + "//java/com/google/gerrit/common:annotations", + "//java/com/google/gerrit/reviewdb:server", + "//lib:guava", + "//lib/auto:auto-value", + "//lib/auto:auto-value-annotations", + "//lib/flogger:api", + "//lib/jsoup", + "//lib/log:jsonevent-layout", + "//lib/log:log4j", + "//lib/mime4j:core", + "//lib/mime4j:dom", + ], +) diff --git a/java/com/google/gerrit/server/mail/send/EmailHeader.java b/java/com/google/gerrit/mail/EmailHeader.java similarity index 97% rename from java/com/google/gerrit/server/mail/send/EmailHeader.java rename to java/com/google/gerrit/mail/EmailHeader.java index 29354f2e6d..69d5fcdaab 100644 --- a/java/com/google/gerrit/server/mail/send/EmailHeader.java +++ b/java/com/google/gerrit/mail/EmailHeader.java @@ -12,12 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.send; +package com.google.gerrit.mail; import static java.nio.charset.StandardCharsets.UTF_8; import com.google.common.base.MoreObjects; -import com.google.gerrit.server.mail.Address; import java.io.IOException; import java.io.Writer; import java.text.SimpleDateFormat; @@ -183,7 +182,7 @@ public abstract class EmailHeader { list.add(addr); } - void remove(java.lang.String email) { + public void remove(java.lang.String email) { list.removeIf(address -> address.getEmail().equals(email)); } diff --git a/java/com/google/gerrit/server/mail/receive/HtmlParser.java b/java/com/google/gerrit/mail/HtmlParser.java similarity index 99% rename from java/com/google/gerrit/server/mail/receive/HtmlParser.java rename to java/com/google/gerrit/mail/HtmlParser.java index d68f076a61..98215997a1 100644 --- a/java/com/google/gerrit/server/mail/receive/HtmlParser.java +++ b/java/com/google/gerrit/mail/HtmlParser.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.common.base.Strings; import com.google.common.collect.ImmutableSet; diff --git a/java/com/google/gerrit/server/mail/receive/MailComment.java b/java/com/google/gerrit/mail/MailComment.java similarity index 84% rename from java/com/google/gerrit/server/mail/receive/MailComment.java rename to java/com/google/gerrit/mail/MailComment.java index 8571e126ba..fd8198cf32 100644 --- a/java/com/google/gerrit/server/mail/receive/MailComment.java +++ b/java/com/google/gerrit/mail/MailComment.java @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.gerrit.reviewdb.client.Comment; import java.util.Objects; /** A comment parsed from inbound email */ public class MailComment { - enum CommentType { + public enum CommentType { CHANGE_MESSAGE, FILE_COMMENT, INLINE_COMMENT @@ -42,6 +42,22 @@ public class MailComment { this.isLink = isLink; } + public CommentType getType() { + return type; + } + + public Comment getInReplyTo() { + return inReplyTo; + } + + public String getFileName() { + return fileName; + } + + public String getMessage() { + return message; + } + /** * Checks if the provided comment concerns the same exact spot in the change. This is basically an * equals method except that the message is not checked. diff --git a/java/com/google/gerrit/server/mail/MailHeader.java b/java/com/google/gerrit/mail/MailHeader.java similarity index 97% rename from java/com/google/gerrit/server/mail/MailHeader.java rename to java/com/google/gerrit/mail/MailHeader.java index cf145e546e..2f31a9c47f 100644 --- a/java/com/google/gerrit/server/mail/MailHeader.java +++ b/java/com/google/gerrit/mail/MailHeader.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail; +package com.google.gerrit.mail; /** Variables used by emails to hold data */ public enum MailHeader { diff --git a/java/com/google/gerrit/server/mail/receive/MailHeaderParser.java b/java/com/google/gerrit/mail/MailHeaderParser.java similarity index 92% rename from java/com/google/gerrit/server/mail/receive/MailHeaderParser.java rename to java/com/google/gerrit/mail/MailHeaderParser.java index d176095e63..8eb4d97047 100644 --- a/java/com/google/gerrit/server/mail/receive/MailHeaderParser.java +++ b/java/com/google/gerrit/mail/MailHeaderParser.java @@ -12,14 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.common.base.Splitter; import com.google.common.base.Strings; import com.google.common.flogger.FluentLogger; import com.google.common.primitives.Ints; -import com.google.gerrit.server.mail.MailHeader; -import com.google.gerrit.server.mail.MailUtil; import java.sql.Timestamp; import java.time.Instant; import java.time.format.DateTimeParseException; @@ -44,7 +42,8 @@ public class MailHeaderParser { } else if (header.startsWith(MailHeader.COMMENT_DATE.fieldWithDelimiter())) { String ts = header.substring(MailHeader.COMMENT_DATE.fieldWithDelimiter().length()).trim(); try { - metadata.timestamp = Timestamp.from(MailUtil.rfcDateformatter.parse(ts, Instant::from)); + metadata.timestamp = + Timestamp.from(MailProcessingUtil.rfcDateformatter.parse(ts, Instant::from)); } catch (DateTimeParseException e) { logger.atSevere().withCause(e).log( "Mail: Error while parsing timestamp from header of message %s", m.id()); @@ -91,7 +90,8 @@ public class MailHeaderParser { } else if (metadata.timestamp == null && line.contains(MailHeader.COMMENT_DATE.getName())) { String ts = extractFooter(MailHeader.COMMENT_DATE.withDelimiter(), line); try { - metadata.timestamp = Timestamp.from(MailUtil.rfcDateformatter.parse(ts, Instant::from)); + metadata.timestamp = + Timestamp.from(MailProcessingUtil.rfcDateformatter.parse(ts, Instant::from)); } catch (DateTimeParseException e) { logger.atSevere().withCause(e).log( "Mail: Error while parsing timestamp from footer of message %s", m.id()); diff --git a/java/com/google/gerrit/server/mail/receive/MailMessage.java b/java/com/google/gerrit/mail/MailMessage.java similarity index 97% rename from java/com/google/gerrit/server/mail/receive/MailMessage.java rename to java/com/google/gerrit/mail/MailMessage.java index 0d204646c0..bb83dfd9e8 100644 --- a/java/com/google/gerrit/server/mail/receive/MailMessage.java +++ b/java/com/google/gerrit/mail/MailMessage.java @@ -12,12 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableList; import com.google.gerrit.common.Nullable; -import com.google.gerrit.server.mail.Address; import java.time.Instant; /** diff --git a/java/com/google/gerrit/server/mail/receive/MailMetadata.java b/java/com/google/gerrit/mail/MailMetadata.java similarity index 96% rename from java/com/google/gerrit/server/mail/receive/MailMetadata.java rename to java/com/google/gerrit/mail/MailMetadata.java index 04c2addeed..a31146113e 100644 --- a/java/com/google/gerrit/server/mail/receive/MailMetadata.java +++ b/java/com/google/gerrit/mail/MailMetadata.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.common.base.MoreObjects; import java.sql.Timestamp; diff --git a/java/com/google/gerrit/server/mail/receive/MailParsingException.java b/java/com/google/gerrit/mail/MailParsingException.java similarity index 95% rename from java/com/google/gerrit/server/mail/receive/MailParsingException.java rename to java/com/google/gerrit/mail/MailParsingException.java index b91bb18538..7e85a27258 100644 --- a/java/com/google/gerrit/server/mail/receive/MailParsingException.java +++ b/java/com/google/gerrit/mail/MailParsingException.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; /** An {@link Exception} indicating that an email could not be parsed. */ public class MailParsingException extends Exception { diff --git a/java/com/google/gerrit/mail/MailProcessingUtil.java b/java/com/google/gerrit/mail/MailProcessingUtil.java new file mode 100644 index 0000000000..b63189a256 --- /dev/null +++ b/java/com/google/gerrit/mail/MailProcessingUtil.java @@ -0,0 +1,23 @@ +// Copyright (C) 2018 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.mail; + +import java.time.format.DateTimeFormatter; + +public class MailProcessingUtil { + + public static DateTimeFormatter rfcDateformatter = + DateTimeFormatter.ofPattern("EEE, dd MMM yyyy HH:mm:ss ZZZ"); +} diff --git a/java/com/google/gerrit/server/mail/receive/ParserUtil.java b/java/com/google/gerrit/mail/ParserUtil.java similarity index 99% rename from java/com/google/gerrit/server/mail/receive/ParserUtil.java rename to java/com/google/gerrit/mail/ParserUtil.java index e770a3ec7c..6a27ac4393 100644 --- a/java/com/google/gerrit/server/mail/receive/ParserUtil.java +++ b/java/com/google/gerrit/mail/ParserUtil.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.common.base.Splitter; import com.google.common.collect.Iterables; diff --git a/java/com/google/gerrit/server/mail/receive/RawMailParser.java b/java/com/google/gerrit/mail/RawMailParser.java similarity index 98% rename from java/com/google/gerrit/server/mail/receive/RawMailParser.java rename to java/com/google/gerrit/mail/RawMailParser.java index 57fe21f7b9..00754d3c32 100644 --- a/java/com/google/gerrit/server/mail/receive/RawMailParser.java +++ b/java/com/google/gerrit/mail/RawMailParser.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static java.nio.charset.StandardCharsets.UTF_8; @@ -21,7 +21,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.io.CharStreams; import com.google.common.primitives.Ints; -import com.google.gerrit.server.mail.Address; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStreamReader; diff --git a/java/com/google/gerrit/server/mail/receive/TextParser.java b/java/com/google/gerrit/mail/TextParser.java similarity index 99% rename from java/com/google/gerrit/server/mail/receive/TextParser.java rename to java/com/google/gerrit/mail/TextParser.java index b99c6083ad..1a635994b7 100644 --- a/java/com/google/gerrit/server/mail/receive/TextParser.java +++ b/java/com/google/gerrit/mail/TextParser.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import com.google.common.base.Splitter; import com.google.common.base.Strings; diff --git a/java/com/google/gerrit/server/BUILD b/java/com/google/gerrit/server/BUILD index 280a4670d5..a67cccb5ff 100644 --- a/java/com/google/gerrit/server/BUILD +++ b/java/com/google/gerrit/server/BUILD @@ -36,6 +36,7 @@ java_library( "//java/com/google/gerrit/index:query_exception", "//java/com/google/gerrit/index/project", "//java/com/google/gerrit/lifecycle", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/prettify:server", "//java/com/google/gerrit/reviewdb:server", diff --git a/java/com/google/gerrit/server/ReviewerByEmailSet.java b/java/com/google/gerrit/server/ReviewerByEmailSet.java index c16c9c8f60..caae45e738 100644 --- a/java/com/google/gerrit/server/ReviewerByEmailSet.java +++ b/java/com/google/gerrit/server/ReviewerByEmailSet.java @@ -17,7 +17,7 @@ package com.google.gerrit.server; import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableTable; import com.google.common.collect.Table; -import com.google.gerrit.server.mail.Address; +import com.google.gerrit.mail.Address; import com.google.gerrit.server.notedb.ReviewerStateInternal; import java.sql.Timestamp; diff --git a/java/com/google/gerrit/server/change/ChangeJson.java b/java/com/google/gerrit/server/change/ChangeJson.java index a5bcf488ed..abc911ad00 100644 --- a/java/com/google/gerrit/server/change/ChangeJson.java +++ b/java/com/google/gerrit/server/change/ChangeJson.java @@ -91,6 +91,7 @@ import com.google.gerrit.extensions.registration.DynamicMap; import com.google.gerrit.extensions.restapi.AuthException; import com.google.gerrit.extensions.restapi.Url; import com.google.gerrit.index.query.QueryResult; +import com.google.gerrit.mail.Address; import com.google.gerrit.metrics.Description; import com.google.gerrit.metrics.Description.Units; import com.google.gerrit.metrics.MetricMaker; @@ -123,7 +124,6 @@ import com.google.gerrit.server.config.TrackingFooters; import com.google.gerrit.server.git.GitRepositoryManager; import com.google.gerrit.server.git.MergeUtil; import com.google.gerrit.server.index.change.ChangeField; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.ReviewerStateInternal; import com.google.gerrit.server.patch.PatchListNotAvailableException; diff --git a/java/com/google/gerrit/server/change/ReviewerResource.java b/java/com/google/gerrit/server/change/ReviewerResource.java index 778897efa7..52f35853bf 100644 --- a/java/com/google/gerrit/server/change/ReviewerResource.java +++ b/java/com/google/gerrit/server/change/ReviewerResource.java @@ -19,10 +19,10 @@ import static com.google.common.base.Preconditions.checkArgument; import com.google.gerrit.common.Nullable; import com.google.gerrit.extensions.restapi.RestResource; import com.google.gerrit.extensions.restapi.RestView; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.server.IdentifiedUser; -import com.google.gerrit.server.mail.Address; import com.google.inject.TypeLiteral; import com.google.inject.assistedinject.Assisted; import com.google.inject.assistedinject.AssistedInject; diff --git a/java/com/google/gerrit/server/git/NotifyConfig.java b/java/com/google/gerrit/server/git/NotifyConfig.java index d2d3a39226..d39cf127fa 100644 --- a/java/com/google/gerrit/server/git/NotifyConfig.java +++ b/java/com/google/gerrit/server/git/NotifyConfig.java @@ -16,8 +16,8 @@ package com.google.gerrit.server.git; import com.google.common.base.Strings; import com.google.gerrit.common.data.GroupReference; +import com.google.gerrit.mail.Address; import com.google.gerrit.server.account.ProjectWatches.NotifyType; -import com.google.gerrit.server.mail.Address; import java.util.EnumSet; import java.util.HashSet; import java.util.Set; diff --git a/java/com/google/gerrit/server/index/change/ChangeField.java b/java/com/google/gerrit/server/index/change/ChangeField.java index 405e6fc160..3375ce7771 100644 --- a/java/com/google/gerrit/server/index/change/ChangeField.java +++ b/java/com/google/gerrit/server/index/change/ChangeField.java @@ -44,6 +44,7 @@ import com.google.gerrit.common.data.SubmitRecord; import com.google.gerrit.common.data.SubmitRequirement; import com.google.gerrit.index.FieldDef; import com.google.gerrit.index.SchemaUtil; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; @@ -58,7 +59,6 @@ import com.google.gerrit.server.StarredChangesUtil; import com.google.gerrit.server.config.AllUsersName; import com.google.gerrit.server.index.RefState; import com.google.gerrit.server.index.change.StalenessChecker.RefStatePattern; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.NoteDbChangeState.PrimaryStorage; import com.google.gerrit.server.notedb.ReviewerStateInternal; diff --git a/java/com/google/gerrit/server/mail/AutoReplyMailFilter.java b/java/com/google/gerrit/server/mail/AutoReplyMailFilter.java index 9032932db9..e18fd42171 100644 --- a/java/com/google/gerrit/server/mail/AutoReplyMailFilter.java +++ b/java/com/google/gerrit/server/mail/AutoReplyMailFilter.java @@ -15,7 +15,8 @@ package com.google.gerrit.server.mail; import com.google.common.flogger.FluentLogger; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailHeader; +import com.google.gerrit.mail.MailMessage; import com.google.inject.Singleton; /** Filters out auto-reply messages according to RFC 3834. */ diff --git a/java/com/google/gerrit/server/mail/ListMailFilter.java b/java/com/google/gerrit/server/mail/ListMailFilter.java index 5a41c77fb7..eee8c6069f 100644 --- a/java/com/google/gerrit/server/mail/ListMailFilter.java +++ b/java/com/google/gerrit/server/mail/ListMailFilter.java @@ -17,8 +17,8 @@ package com.google.gerrit.server.mail; import static java.util.stream.Collectors.joining; import com.google.common.flogger.FluentLogger; +import com.google.gerrit.mail.MailMessage; import com.google.gerrit.server.config.GerritServerConfig; -import com.google.gerrit.server.mail.receive.MailMessage; import com.google.inject.Inject; import com.google.inject.Singleton; import java.util.Arrays; @@ -52,7 +52,7 @@ public class ListMailFilter implements MailFilter { return true; } - boolean match = mailPattern.matcher(message.from().email).find(); + boolean match = mailPattern.matcher(message.from().getEmail()).find(); if (mode == ListFilterMode.WHITELIST && !match || mode == ListFilterMode.BLACKLIST && match) { logger.atInfo().log("Mail message from %s rejected by list filter", message.from()); return false; diff --git a/java/com/google/gerrit/server/mail/MailFilter.java b/java/com/google/gerrit/server/mail/MailFilter.java index d50064dfde..5fff8a3b3c 100644 --- a/java/com/google/gerrit/server/mail/MailFilter.java +++ b/java/com/google/gerrit/server/mail/MailFilter.java @@ -15,7 +15,7 @@ package com.google.gerrit.server.mail; import com.google.gerrit.extensions.annotations.ExtensionPoint; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; /** * Listener to filter incoming email. diff --git a/java/com/google/gerrit/server/mail/MailUtil.java b/java/com/google/gerrit/server/mail/MailUtil.java index 0487cc0347..507b53f170 100644 --- a/java/com/google/gerrit/server/mail/MailUtil.java +++ b/java/com/google/gerrit/server/mail/MailUtil.java @@ -24,7 +24,6 @@ import com.google.gerrit.server.ReviewerSet; import com.google.gerrit.server.account.AccountResolver; import com.google.gwtorm.server.OrmException; import java.io.IOException; -import java.time.format.DateTimeFormatter; import java.util.Collections; import java.util.HashSet; import java.util.List; @@ -34,8 +33,6 @@ import org.eclipse.jgit.revwalk.FooterKey; import org.eclipse.jgit.revwalk.FooterLine; public class MailUtil { - public static DateTimeFormatter rfcDateformatter = - DateTimeFormatter.ofPattern("EEE, dd MMM yyyy HH:mm:ss ZZZ"); public static MailRecipients getRecipientsFromFooters( AccountResolver accountResolver, List footerLines) diff --git a/java/com/google/gerrit/server/mail/receive/ImapMailReceiver.java b/java/com/google/gerrit/server/mail/receive/ImapMailReceiver.java index 169b41e760..648006d52c 100644 --- a/java/com/google/gerrit/server/mail/receive/ImapMailReceiver.java +++ b/java/com/google/gerrit/server/mail/receive/ImapMailReceiver.java @@ -15,6 +15,9 @@ package com.google.gerrit.server.mail.receive; import com.google.common.flogger.FluentLogger; +import com.google.gerrit.mail.MailMessage; +import com.google.gerrit.mail.MailParsingException; +import com.google.gerrit.mail.RawMailParser; import com.google.gerrit.server.git.WorkQueue; import com.google.gerrit.server.mail.EmailSettings; import com.google.gerrit.server.mail.Encryption; diff --git a/java/com/google/gerrit/server/mail/receive/MailProcessor.java b/java/com/google/gerrit/server/mail/receive/MailProcessor.java index bf76bdec1a..75053c8c68 100644 --- a/java/com/google/gerrit/server/mail/receive/MailProcessor.java +++ b/java/com/google/gerrit/server/mail/receive/MailProcessor.java @@ -26,6 +26,12 @@ import com.google.gerrit.extensions.client.Side; import com.google.gerrit.extensions.registration.DynamicMap; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.extensions.restapi.UnprocessableEntityException; +import com.google.gerrit.mail.HtmlParser; +import com.google.gerrit.mail.MailComment; +import com.google.gerrit.mail.MailHeaderParser; +import com.google.gerrit.mail.MailMessage; +import com.google.gerrit.mail.MailMetadata; +import com.google.gerrit.mail.TextParser; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; @@ -283,7 +289,7 @@ public class MailProcessor { comments = new ArrayList<>(); for (MailComment c : parsedComments) { - if (c.type == MailComment.CommentType.CHANGE_MESSAGE) { + if (c.getType() == MailComment.CommentType.CHANGE_MESSAGE) { continue; } comments.add( @@ -301,8 +307,8 @@ public class MailProcessor { @Override public void postUpdate(Context ctx) throws Exception { String patchSetComment = null; - if (parsedComments.get(0).type == MailComment.CommentType.CHANGE_MESSAGE) { - patchSetComment = parsedComments.get(0).message; + if (parsedComments.get(0).getType() == MailComment.CommentType.CHANGE_MESSAGE) { + patchSetComment = parsedComments.get(0).getMessage(); } // Send email notifications outgoingMailFactory @@ -342,12 +348,12 @@ public class MailProcessor { private ChangeMessage generateChangeMessage(ChangeContext ctx) { String changeMsg = "Patch Set " + psId.get() + ":"; - if (parsedComments.get(0).type == MailComment.CommentType.CHANGE_MESSAGE) { + if (parsedComments.get(0).getType() == MailComment.CommentType.CHANGE_MESSAGE) { // Add a blank line after Patch Set to follow the default format if (parsedComments.size() > 1) { changeMsg += "\n\n" + numComments(parsedComments.size() - 1); } - changeMsg += "\n\n" + parsedComments.get(0).message; + changeMsg += "\n\n" + parsedComments.get(0).getMessage(); } else { changeMsg += "\n\n" + numComments(parsedComments.size()); } @@ -356,11 +362,11 @@ public class MailProcessor { private PatchSet targetPatchSetForComment( ChangeContext ctx, MailComment mailComment, PatchSet current) throws OrmException { - if (mailComment.inReplyTo != null) { + if (mailComment.getInReplyTo() != null) { return psUtil.get( ctx.getDb(), ctx.getNotes(), - new PatchSet.Id(ctx.getChange().getId(), mailComment.inReplyTo.key.patchSetId)); + new PatchSet.Id(ctx.getChange().getId(), mailComment.getInReplyTo().key.patchSetId)); } return current; } @@ -372,11 +378,11 @@ public class MailProcessor { // The patch set that this comment is based on is different if this // comment was sent in reply to a comment on a previous patch set. Side side; - if (mailComment.inReplyTo != null) { - fileName = mailComment.inReplyTo.key.filename; - side = Side.fromShort(mailComment.inReplyTo.side); + if (mailComment.getInReplyTo() != null) { + fileName = mailComment.getInReplyTo().key.filename; + side = Side.fromShort(mailComment.getInReplyTo().side); } else { - fileName = mailComment.fileName; + fileName = mailComment.getFileName(); side = Side.REVISION; } @@ -386,16 +392,16 @@ public class MailProcessor { fileName, patchSetForComment.getId(), (short) side.ordinal(), - mailComment.message, + mailComment.getMessage(), false, null); comment.tag = tag; - if (mailComment.inReplyTo != null) { - comment.parentUuid = mailComment.inReplyTo.key.uuid; - comment.lineNbr = mailComment.inReplyTo.lineNbr; - comment.range = mailComment.inReplyTo.range; - comment.unresolved = mailComment.inReplyTo.unresolved; + if (mailComment.getInReplyTo() != null) { + comment.parentUuid = mailComment.getInReplyTo().key.uuid; + comment.lineNbr = mailComment.getInReplyTo().lineNbr; + comment.range = mailComment.getInReplyTo().range; + comment.unresolved = mailComment.getInReplyTo().unresolved; } CommentsUtil.setCommentRevId(comment, patchListCache, ctx.getChange(), patchSetForComment); return comment; diff --git a/java/com/google/gerrit/server/mail/receive/MailReceiver.java b/java/com/google/gerrit/server/mail/receive/MailReceiver.java index e4ad9690ec..dc99b46dca 100644 --- a/java/com/google/gerrit/server/mail/receive/MailReceiver.java +++ b/java/com/google/gerrit/server/mail/receive/MailReceiver.java @@ -19,6 +19,7 @@ import com.google.common.flogger.FluentLogger; import com.google.gerrit.extensions.events.LifecycleListener; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.lifecycle.LifecycleModule; +import com.google.gerrit.mail.MailMessage; import com.google.gerrit.server.git.WorkQueue; import com.google.gerrit.server.mail.EmailSettings; import com.google.gerrit.server.update.UpdateException; diff --git a/java/com/google/gerrit/server/mail/receive/Pop3MailReceiver.java b/java/com/google/gerrit/server/mail/receive/Pop3MailReceiver.java index a3ea265342..54971c407c 100644 --- a/java/com/google/gerrit/server/mail/receive/Pop3MailReceiver.java +++ b/java/com/google/gerrit/server/mail/receive/Pop3MailReceiver.java @@ -16,6 +16,9 @@ package com.google.gerrit.server.mail.receive; import com.google.common.flogger.FluentLogger; import com.google.common.primitives.Ints; +import com.google.gerrit.mail.MailMessage; +import com.google.gerrit.mail.MailParsingException; +import com.google.gerrit.mail.RawMailParser; import com.google.gerrit.server.git.WorkQueue; import com.google.gerrit.server.mail.EmailSettings; import com.google.gerrit.server.mail.Encryption; diff --git a/java/com/google/gerrit/server/mail/send/AddKeySender.java b/java/com/google/gerrit/server/mail/send/AddKeySender.java index ae8ac3147e..433bd9bc70 100644 --- a/java/com/google/gerrit/server/mail/send/AddKeySender.java +++ b/java/com/google/gerrit/server/mail/send/AddKeySender.java @@ -18,9 +18,9 @@ import com.google.common.base.Joiner; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; import com.google.gerrit.extensions.restapi.AuthException; +import com.google.gerrit.mail.Address; import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.account.AccountSshKey; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.permissions.GlobalPermission; import com.google.gerrit.server.permissions.PermissionBackend; import com.google.gerrit.server.permissions.PermissionBackendException; diff --git a/java/com/google/gerrit/server/mail/send/ChangeEmail.java b/java/com/google/gerrit/server/mail/send/ChangeEmail.java index 503fbd0a1f..eaaed8ce41 100644 --- a/java/com/google/gerrit/server/mail/send/ChangeEmail.java +++ b/java/com/google/gerrit/server/mail/send/ChangeEmail.java @@ -21,6 +21,7 @@ import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.NotifyHandling; import com.google.gerrit.extensions.api.changes.RecipientType; import com.google.gerrit.extensions.restapi.AuthException; +import com.google.gerrit.mail.MailHeader; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Change; @@ -30,7 +31,6 @@ import com.google.gerrit.reviewdb.client.PatchSetInfo; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.server.StarredChangesUtil; import com.google.gerrit.server.account.ProjectWatches.NotifyType; -import com.google.gerrit.server.mail.MailHeader; import com.google.gerrit.server.mail.send.ProjectWatch.Watchers; import com.google.gerrit.server.notedb.ReviewerStateInternal; import com.google.gerrit.server.patch.PatchList; diff --git a/java/com/google/gerrit/server/mail/send/CommentSender.java b/java/com/google/gerrit/server/mail/send/CommentSender.java index 0095fc17a5..54176e2981 100644 --- a/java/com/google/gerrit/server/mail/send/CommentSender.java +++ b/java/com/google/gerrit/server/mail/send/CommentSender.java @@ -23,6 +23,8 @@ import com.google.gerrit.common.data.FilenameComparator; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.common.errors.NoSuchEntityException; import com.google.gerrit.extensions.api.changes.NotifyHandling; +import com.google.gerrit.mail.MailHeader; +import com.google.gerrit.mail.MailProcessingUtil; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.Comment; @@ -32,8 +34,6 @@ import com.google.gerrit.reviewdb.client.RobotComment; import com.google.gerrit.server.CommentsUtil; import com.google.gerrit.server.account.ProjectWatches.NotifyType; import com.google.gerrit.server.config.GerritServerConfig; -import com.google.gerrit.server.mail.MailHeader; -import com.google.gerrit.server.mail.MailUtil; import com.google.gerrit.server.mail.receive.Protocol; import com.google.gerrit.server.patch.PatchFile; import com.google.gerrit.server.patch.PatchList; @@ -566,7 +566,7 @@ public class CommentSender extends ReplyToChangeSender { private String getCommentTimestamp() { // Grouping is currently done by timestamp. - return MailUtil.rfcDateformatter.format( + return MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(timestamp.toInstant(), ZoneId.of("UTC"))); } diff --git a/java/com/google/gerrit/server/mail/send/DeleteReviewerSender.java b/java/com/google/gerrit/server/mail/send/DeleteReviewerSender.java index c434d068f4..576d506d2c 100644 --- a/java/com/google/gerrit/server/mail/send/DeleteReviewerSender.java +++ b/java/com/google/gerrit/server/mail/send/DeleteReviewerSender.java @@ -16,11 +16,11 @@ package com.google.gerrit.server.mail.send; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.server.account.ProjectWatches.NotifyType; -import com.google.gerrit.server.mail.Address; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; diff --git a/java/com/google/gerrit/server/mail/send/EmailSender.java b/java/com/google/gerrit/server/mail/send/EmailSender.java index 23fa1fe589..ce4964d3cd 100644 --- a/java/com/google/gerrit/server/mail/send/EmailSender.java +++ b/java/com/google/gerrit/server/mail/send/EmailSender.java @@ -16,7 +16,8 @@ package com.google.gerrit.server.mail.send; import com.google.gerrit.common.Nullable; import com.google.gerrit.common.errors.EmailException; -import com.google.gerrit.server.mail.Address; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; import java.util.Collection; import java.util.Map; diff --git a/java/com/google/gerrit/server/mail/send/FromAddressGenerator.java b/java/com/google/gerrit/server/mail/send/FromAddressGenerator.java index 2489063365..5baabe95c5 100644 --- a/java/com/google/gerrit/server/mail/send/FromAddressGenerator.java +++ b/java/com/google/gerrit/server/mail/send/FromAddressGenerator.java @@ -14,8 +14,8 @@ package com.google.gerrit.server.mail.send; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; -import com.google.gerrit.server.mail.Address; /** Constructs an address to send email from. */ public interface FromAddressGenerator { diff --git a/java/com/google/gerrit/server/mail/send/FromAddressGeneratorProvider.java b/java/com/google/gerrit/server/mail/send/FromAddressGeneratorProvider.java index 500eef3452..b77909e2f3 100644 --- a/java/com/google/gerrit/server/mail/send/FromAddressGeneratorProvider.java +++ b/java/com/google/gerrit/server/mail/send/FromAddressGeneratorProvider.java @@ -17,13 +17,13 @@ package com.google.gerrit.server.mail.send; import static java.nio.charset.StandardCharsets.UTF_8; import com.google.gerrit.common.data.ParameterizedString; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.server.GerritPersonIdent; import com.google.gerrit.server.account.AccountCache; import com.google.gerrit.server.account.AccountState; import com.google.gerrit.server.config.AnonymousCowardName; import com.google.gerrit.server.config.GerritServerConfig; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.MailUtil; import com.google.inject.Inject; import com.google.inject.Provider; diff --git a/java/com/google/gerrit/server/mail/send/InboundEmailRejectionSender.java b/java/com/google/gerrit/server/mail/send/InboundEmailRejectionSender.java index 5143dc7756..65ce1285fa 100644 --- a/java/com/google/gerrit/server/mail/send/InboundEmailRejectionSender.java +++ b/java/com/google/gerrit/server/mail/send/InboundEmailRejectionSender.java @@ -18,8 +18,8 @@ import static com.google.common.base.Preconditions.checkNotNull; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.MailHeader; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailHeader; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; import org.apache.james.mime4j.dom.field.FieldName; diff --git a/java/com/google/gerrit/server/mail/send/NewChangeSender.java b/java/com/google/gerrit/server/mail/send/NewChangeSender.java index 9f94fa3203..f94f1ca9e1 100644 --- a/java/com/google/gerrit/server/mail/send/NewChangeSender.java +++ b/java/com/google/gerrit/server/mail/send/NewChangeSender.java @@ -16,8 +16,8 @@ package com.google.gerrit.server.mail.send; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.query.change.ChangeData; import com.google.gwtorm.server.OrmException; import java.util.ArrayList; diff --git a/java/com/google/gerrit/server/mail/send/NotificationEmail.java b/java/com/google/gerrit/server/mail/send/NotificationEmail.java index 0cc7a1d86f..032bcbfd59 100644 --- a/java/com/google/gerrit/server/mail/send/NotificationEmail.java +++ b/java/com/google/gerrit/server/mail/send/NotificationEmail.java @@ -19,11 +19,11 @@ import com.google.common.collect.Iterables; import com.google.common.flogger.FluentLogger; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailHeader; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Branch; import com.google.gerrit.server.account.ProjectWatches.NotifyType; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.MailHeader; import com.google.gerrit.server.mail.send.ProjectWatch.Watchers; import com.google.gwtorm.server.OrmException; import java.util.HashMap; diff --git a/java/com/google/gerrit/server/mail/send/OutgoingEmail.java b/java/com/google/gerrit/server/mail/send/OutgoingEmail.java index 0612237645..fe9b44626a 100644 --- a/java/com/google/gerrit/server/mail/send/OutgoingEmail.java +++ b/java/com/google/gerrit/server/mail/send/OutgoingEmail.java @@ -26,12 +26,13 @@ import com.google.gerrit.extensions.api.changes.NotifyHandling; import com.google.gerrit.extensions.api.changes.RecipientType; import com.google.gerrit.extensions.client.GeneralPreferencesInfo; import com.google.gerrit.extensions.client.GeneralPreferencesInfo.EmailFormat; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; +import com.google.gerrit.mail.EmailHeader.AddressList; +import com.google.gerrit.mail.MailHeader; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.UserIdentity; import com.google.gerrit.server.account.AccountState; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.MailHeader; -import com.google.gerrit.server.mail.send.EmailHeader.AddressList; import com.google.gerrit.server.permissions.PermissionBackendException; import com.google.gerrit.server.validators.OutgoingEmailValidationListener; import com.google.gerrit.server.validators.ValidationException; diff --git a/java/com/google/gerrit/server/mail/send/ProjectWatch.java b/java/com/google/gerrit/server/mail/send/ProjectWatch.java index 15197ef353..9a86fdb218 100644 --- a/java/com/google/gerrit/server/mail/send/ProjectWatch.java +++ b/java/com/google/gerrit/server/mail/send/ProjectWatch.java @@ -21,6 +21,7 @@ import com.google.gerrit.common.data.GroupDescription; import com.google.gerrit.common.data.GroupReference; import com.google.gerrit.index.query.Predicate; import com.google.gerrit.index.query.QueryParseException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Project; @@ -30,7 +31,6 @@ import com.google.gerrit.server.account.AccountState; import com.google.gerrit.server.account.ProjectWatches.NotifyType; import com.google.gerrit.server.account.ProjectWatches.ProjectWatchKey; import com.google.gerrit.server.git.NotifyConfig; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.project.ProjectState; import com.google.gerrit.server.query.change.ChangeData; import com.google.gerrit.server.query.change.ChangeQueryBuilder; diff --git a/java/com/google/gerrit/server/mail/send/RegisterNewEmailSender.java b/java/com/google/gerrit/server/mail/send/RegisterNewEmailSender.java index c6670262f3..0dbfb60189 100644 --- a/java/com/google/gerrit/server/mail/send/RegisterNewEmailSender.java +++ b/java/com/google/gerrit/server/mail/send/RegisterNewEmailSender.java @@ -18,8 +18,8 @@ import static com.google.common.base.Preconditions.checkNotNull; import com.google.gerrit.common.errors.EmailException; import com.google.gerrit.extensions.api.changes.RecipientType; +import com.google.gerrit.mail.Address; import com.google.gerrit.server.IdentifiedUser; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.EmailTokenVerifier; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; diff --git a/java/com/google/gerrit/server/mail/send/SmtpEmailSender.java b/java/com/google/gerrit/server/mail/send/SmtpEmailSender.java index 10e8b0bed9..2262b5c385 100644 --- a/java/com/google/gerrit/server/mail/send/SmtpEmailSender.java +++ b/java/com/google/gerrit/server/mail/send/SmtpEmailSender.java @@ -22,9 +22,10 @@ import com.google.gerrit.common.Nullable; import com.google.gerrit.common.TimeUtil; import com.google.gerrit.common.Version; import com.google.gerrit.common.errors.EmailException; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; import com.google.gerrit.server.config.ConfigUtil; import com.google.gerrit.server.config.GerritServerConfig; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.Encryption; import com.google.inject.AbstractModule; import com.google.inject.Inject; diff --git a/java/com/google/gerrit/server/notedb/ChangeNotesParser.java b/java/com/google/gerrit/server/notedb/ChangeNotesParser.java index 5f2593b879..5810c64c06 100644 --- a/java/com/google/gerrit/server/notedb/ChangeNotesParser.java +++ b/java/com/google/gerrit/server/notedb/ChangeNotesParser.java @@ -55,6 +55,7 @@ import com.google.common.flogger.FluentLogger; import com.google.common.primitives.Ints; import com.google.gerrit.common.data.LabelType; import com.google.gerrit.common.data.SubmitRecord; +import com.google.gerrit.mail.Address; import com.google.gerrit.metrics.Timer1; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; @@ -70,7 +71,6 @@ import com.google.gerrit.reviewdb.server.ReviewDbUtil; import com.google.gerrit.server.ReviewerByEmailSet; import com.google.gerrit.server.ReviewerSet; import com.google.gerrit.server.ReviewerStatusUpdate; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotesCommit.ChangeNotesRevWalk; import com.google.gerrit.server.util.LabelVote; import java.io.IOException; diff --git a/java/com/google/gerrit/server/notedb/ChangeNotesState.java b/java/com/google/gerrit/server/notedb/ChangeNotesState.java index 3eb06b23bb..3543202bce 100644 --- a/java/com/google/gerrit/server/notedb/ChangeNotesState.java +++ b/java/com/google/gerrit/server/notedb/ChangeNotesState.java @@ -39,6 +39,7 @@ import com.google.common.collect.Maps; import com.google.common.collect.Table; import com.google.gerrit.common.Nullable; import com.google.gerrit.common.data.SubmitRecord; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Branch; import com.google.gerrit.reviewdb.client.Change; @@ -61,7 +62,6 @@ import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.Reviewer import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ReviewerSetEntryProto; import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ReviewerStatusUpdateProto; import com.google.gerrit.server.index.change.ChangeField.StoredSubmitRecord; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.NoteDbChangeState.PrimaryStorage; import com.google.gson.Gson; import java.io.IOException; diff --git a/java/com/google/gerrit/server/notedb/ChangeUpdate.java b/java/com/google/gerrit/server/notedb/ChangeUpdate.java index 69fbfe17b5..903a982a46 100644 --- a/java/com/google/gerrit/server/notedb/ChangeUpdate.java +++ b/java/com/google/gerrit/server/notedb/ChangeUpdate.java @@ -52,6 +52,7 @@ import com.google.common.collect.Table; import com.google.common.collect.TreeBasedTable; import com.google.gerrit.common.Nullable; import com.google.gerrit.common.data.SubmitRecord; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.Comment; @@ -62,7 +63,6 @@ import com.google.gerrit.reviewdb.client.RobotComment; import com.google.gerrit.server.CurrentUser; import com.google.gerrit.server.GerritPersonIdent; import com.google.gerrit.server.config.GerritServerConfig; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.project.ProjectCache; import com.google.gerrit.server.util.LabelVote; import com.google.gerrit.server.util.RequestId; diff --git a/java/com/google/gerrit/server/project/ProjectConfig.java b/java/com/google/gerrit/server/project/ProjectConfig.java index d42b652595..bfbd99e1f6 100644 --- a/java/com/google/gerrit/server/project/ProjectConfig.java +++ b/java/com/google/gerrit/server/project/ProjectConfig.java @@ -41,6 +41,7 @@ import com.google.gerrit.common.data.SubscribeSection; import com.google.gerrit.common.errors.InvalidNameException; import com.google.gerrit.extensions.client.InheritableBoolean; import com.google.gerrit.extensions.client.ProjectState; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.BooleanProjectConfig; import com.google.gerrit.reviewdb.client.Branch; @@ -55,7 +56,6 @@ import com.google.gerrit.server.git.NotifyConfig; import com.google.gerrit.server.git.ValidationError; import com.google.gerrit.server.git.meta.MetaDataUpdate; import com.google.gerrit.server.git.meta.VersionedMetaData; -import com.google.gerrit.server.mail.Address; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; diff --git a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java index 31135043a1..5855404145 100644 --- a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java +++ b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java @@ -39,6 +39,7 @@ import com.google.gerrit.index.query.Predicate; import com.google.gerrit.index.query.QueryBuilder; import com.google.gerrit.index.query.QueryParseException; import com.google.gerrit.index.query.QueryRequiresAuthException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Branch; @@ -65,7 +66,6 @@ import com.google.gerrit.server.index.change.ChangeField; import com.google.gerrit.server.index.change.ChangeIndex; import com.google.gerrit.server.index.change.ChangeIndexCollection; import com.google.gerrit.server.index.change.ChangeIndexRewriter; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.NotesMigration; import com.google.gerrit.server.notedb.ReviewerStateInternal; diff --git a/java/com/google/gerrit/server/query/change/ReviewerByEmailPredicate.java b/java/com/google/gerrit/server/query/change/ReviewerByEmailPredicate.java index f4e979c82a..667c630814 100644 --- a/java/com/google/gerrit/server/query/change/ReviewerByEmailPredicate.java +++ b/java/com/google/gerrit/server/query/change/ReviewerByEmailPredicate.java @@ -17,8 +17,8 @@ package com.google.gerrit.server.query.change; import static com.google.common.base.Preconditions.checkArgument; import com.google.gerrit.index.query.Predicate; +import com.google.gerrit.mail.Address; import com.google.gerrit.server.index.change.ChangeField; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ReviewerStateInternal; import com.google.gwtorm.server.OrmException; diff --git a/java/com/google/gerrit/server/restapi/BUILD b/java/com/google/gerrit/server/restapi/BUILD index ff114fae82..1207c71136 100644 --- a/java/com/google/gerrit/server/restapi/BUILD +++ b/java/com/google/gerrit/server/restapi/BUILD @@ -12,6 +12,7 @@ java_library( "//java/com/google/gerrit/index", "//java/com/google/gerrit/index:query_exception", "//java/com/google/gerrit/index/project", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/prettify:server", "//java/com/google/gerrit/reviewdb:server", diff --git a/java/com/google/gerrit/server/restapi/change/DeleteReviewerByEmailOp.java b/java/com/google/gerrit/server/restapi/change/DeleteReviewerByEmailOp.java index fac1003d89..3231d165f2 100644 --- a/java/com/google/gerrit/server/restapi/change/DeleteReviewerByEmailOp.java +++ b/java/com/google/gerrit/server/restapi/change/DeleteReviewerByEmailOp.java @@ -17,12 +17,12 @@ package com.google.gerrit.server.restapi.change; import com.google.common.flogger.FluentLogger; import com.google.gerrit.extensions.api.changes.DeleteReviewerInput; import com.google.gerrit.extensions.api.changes.NotifyHandling; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; import com.google.gerrit.reviewdb.client.PatchSet; import com.google.gerrit.server.ChangeUtil; import com.google.gerrit.server.change.NotifyUtil; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.send.DeleteReviewerSender; import com.google.gerrit.server.update.BatchUpdateOp; import com.google.gerrit.server.update.ChangeContext; diff --git a/java/com/google/gerrit/server/restapi/change/ListReviewers.java b/java/com/google/gerrit/server/restapi/change/ListReviewers.java index 750e74ff59..46bb33f601 100644 --- a/java/com/google/gerrit/server/restapi/change/ListReviewers.java +++ b/java/com/google/gerrit/server/restapi/change/ListReviewers.java @@ -16,12 +16,12 @@ package com.google.gerrit.server.restapi.change; import com.google.gerrit.extensions.api.changes.ReviewerInfo; import com.google.gerrit.extensions.restapi.RestReadView; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.ApprovalsUtil; import com.google.gerrit.server.change.ChangeResource; import com.google.gerrit.server.change.ReviewerResource; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.permissions.PermissionBackendException; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; diff --git a/java/com/google/gerrit/server/restapi/change/ListRevisionReviewers.java b/java/com/google/gerrit/server/restapi/change/ListRevisionReviewers.java index d0630b790f..32c4ea347f 100644 --- a/java/com/google/gerrit/server/restapi/change/ListRevisionReviewers.java +++ b/java/com/google/gerrit/server/restapi/change/ListRevisionReviewers.java @@ -17,12 +17,12 @@ package com.google.gerrit.server.restapi.change; import com.google.gerrit.extensions.api.changes.ReviewerInfo; import com.google.gerrit.extensions.restapi.MethodNotAllowedException; import com.google.gerrit.extensions.restapi.RestReadView; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.ApprovalsUtil; import com.google.gerrit.server.change.ReviewerResource; import com.google.gerrit.server.change.RevisionResource; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.permissions.PermissionBackendException; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; diff --git a/java/com/google/gerrit/server/restapi/change/PostReview.java b/java/com/google/gerrit/server/restapi/change/PostReview.java index c6dbda3250..ac7a50d4e5 100644 --- a/java/com/google/gerrit/server/restapi/change/PostReview.java +++ b/java/com/google/gerrit/server/restapi/change/PostReview.java @@ -64,6 +64,7 @@ import com.google.gerrit.extensions.restapi.Response; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.extensions.restapi.UnprocessableEntityException; import com.google.gerrit.extensions.restapi.Url; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; @@ -94,7 +95,6 @@ import com.google.gerrit.server.change.RevisionResource; import com.google.gerrit.server.change.WorkInProgressOp; import com.google.gerrit.server.config.GerritServerConfig; import com.google.gerrit.server.extensions.events.CommentAdded; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.ChangeUpdate; import com.google.gerrit.server.notedb.NotesMigration; diff --git a/java/com/google/gerrit/server/restapi/change/PostReviewers.java b/java/com/google/gerrit/server/restapi/change/PostReviewers.java index 4991c18414..748ec625fa 100644 --- a/java/com/google/gerrit/server/restapi/change/PostReviewers.java +++ b/java/com/google/gerrit/server/restapi/change/PostReviewers.java @@ -37,6 +37,7 @@ import com.google.gerrit.extensions.restapi.AuthException; import com.google.gerrit.extensions.restapi.BadRequestException; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.extensions.restapi.UnprocessableEntityException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.BooleanProjectConfig; @@ -55,7 +56,6 @@ import com.google.gerrit.server.change.ReviewerResource; import com.google.gerrit.server.change.RevisionResource; import com.google.gerrit.server.config.GerritServerConfig; import com.google.gerrit.server.group.SystemGroupBackend; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.send.OutgoingEmailValidator; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.notedb.NotesMigration; diff --git a/java/com/google/gerrit/server/restapi/change/PostReviewersOp.java b/java/com/google/gerrit/server/restapi/change/PostReviewersOp.java index 3cb613662b..08b66aa8b1 100644 --- a/java/com/google/gerrit/server/restapi/change/PostReviewersOp.java +++ b/java/com/google/gerrit/server/restapi/change/PostReviewersOp.java @@ -30,6 +30,7 @@ import com.google.gerrit.extensions.api.changes.NotifyHandling; import com.google.gerrit.extensions.api.changes.RecipientType; import com.google.gerrit.extensions.client.ReviewerState; import com.google.gerrit.extensions.restapi.RestApiException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.PatchSet; @@ -42,7 +43,6 @@ import com.google.gerrit.server.account.AccountCache; import com.google.gerrit.server.account.AccountState; import com.google.gerrit.server.change.ChangeResource; import com.google.gerrit.server.extensions.events.ReviewerAdded; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.mail.send.AddReviewerSender; import com.google.gerrit.server.notedb.NotesMigration; import com.google.gerrit.server.notedb.ReviewerStateInternal; diff --git a/java/com/google/gerrit/server/restapi/change/Reviewers.java b/java/com/google/gerrit/server/restapi/change/Reviewers.java index a4cfbd2f43..f0aef13923 100644 --- a/java/com/google/gerrit/server/restapi/change/Reviewers.java +++ b/java/com/google/gerrit/server/restapi/change/Reviewers.java @@ -21,12 +21,12 @@ import com.google.gerrit.extensions.restapi.IdString; import com.google.gerrit.extensions.restapi.ResourceNotFoundException; import com.google.gerrit.extensions.restapi.RestView; import com.google.gerrit.extensions.restapi.TopLevelResource; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.ApprovalsUtil; import com.google.gerrit.server.change.ChangeResource; import com.google.gerrit.server.change.ReviewerResource; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.restapi.account.AccountsCollection; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; diff --git a/java/com/google/gerrit/server/restapi/change/RevisionReviewers.java b/java/com/google/gerrit/server/restapi/change/RevisionReviewers.java index 7cf30e2609..b9b7a4f273 100644 --- a/java/com/google/gerrit/server/restapi/change/RevisionReviewers.java +++ b/java/com/google/gerrit/server/restapi/change/RevisionReviewers.java @@ -22,12 +22,12 @@ import com.google.gerrit.extensions.restapi.MethodNotAllowedException; import com.google.gerrit.extensions.restapi.ResourceNotFoundException; import com.google.gerrit.extensions.restapi.RestView; import com.google.gerrit.extensions.restapi.TopLevelResource; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.ApprovalsUtil; import com.google.gerrit.server.change.ReviewerResource; import com.google.gerrit.server.change.RevisionResource; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.restapi.account.AccountsCollection; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; diff --git a/java/com/google/gerrit/server/validators/OutgoingEmailValidationListener.java b/java/com/google/gerrit/server/validators/OutgoingEmailValidationListener.java index 9f152a518d..996ad87ed3 100644 --- a/java/com/google/gerrit/server/validators/OutgoingEmailValidationListener.java +++ b/java/com/google/gerrit/server/validators/OutgoingEmailValidationListener.java @@ -16,8 +16,8 @@ package com.google.gerrit.server.validators; import com.google.gerrit.common.Nullable; import com.google.gerrit.extensions.annotations.ExtensionPoint; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.send.EmailHeader; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; import java.util.Map; import java.util.Set; diff --git a/java/com/google/gerrit/testing/BUILD b/java/com/google/gerrit/testing/BUILD index 43aa978786..55565ad1d8 100644 --- a/java/com/google/gerrit/testing/BUILD +++ b/java/com/google/gerrit/testing/BUILD @@ -19,6 +19,7 @@ java_library( "//java/com/google/gerrit/index", "//java/com/google/gerrit/index/project", "//java/com/google/gerrit/lifecycle", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/pgm/init", "//java/com/google/gerrit/reviewdb:server", diff --git a/java/com/google/gerrit/testing/FakeEmailSender.java b/java/com/google/gerrit/testing/FakeEmailSender.java index 28946dc5f1..e81d0f45b1 100644 --- a/java/com/google/gerrit/testing/FakeEmailSender.java +++ b/java/com/google/gerrit/testing/FakeEmailSender.java @@ -22,10 +22,10 @@ import com.google.common.collect.ImmutableMap; import com.google.common.flogger.FluentLogger; import com.google.gerrit.common.Nullable; import com.google.gerrit.common.errors.EmailException; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.EmailHeader; +import com.google.gerrit.mail.MailHeader; import com.google.gerrit.server.git.WorkQueue; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.MailHeader; -import com.google.gerrit.server.mail.send.EmailHeader; import com.google.gerrit.server.mail.send.EmailSender; import com.google.inject.AbstractModule; import com.google.inject.Inject; diff --git a/javatests/com/google/gerrit/acceptance/api/accounts/AccountIT.java b/javatests/com/google/gerrit/acceptance/api/accounts/AccountIT.java index 0bcf02b09b..aa9ef80841 100644 --- a/javatests/com/google/gerrit/acceptance/api/accounts/AccountIT.java +++ b/javatests/com/google/gerrit/acceptance/api/accounts/AccountIT.java @@ -90,6 +90,7 @@ import com.google.gerrit.extensions.restapi.UnprocessableEntityException; import com.google.gerrit.gpg.Fingerprint; import com.google.gerrit.gpg.PublicKeyStore; import com.google.gerrit.gpg.testing.TestKey; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.Project; @@ -111,7 +112,6 @@ import com.google.gerrit.server.git.LockFailureException; import com.google.gerrit.server.git.meta.MetaDataUpdate; import com.google.gerrit.server.index.account.AccountIndexer; import com.google.gerrit.server.index.account.StalenessChecker; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.rebuild.ChangeRebuilderImpl; import com.google.gerrit.server.project.ProjectConfig; import com.google.gerrit.server.project.RefPattern; diff --git a/javatests/com/google/gerrit/acceptance/api/accounts/BUILD b/javatests/com/google/gerrit/acceptance/api/accounts/BUILD index b52efe79f7..9bc30ba969 100644 --- a/javatests/com/google/gerrit/acceptance/api/accounts/BUILD +++ b/javatests/com/google/gerrit/acceptance/api/accounts/BUILD @@ -8,4 +8,5 @@ acceptance_tests( "noci", "no_windows", ], + deps = ["//java/com/google/gerrit/mail"], ) diff --git a/javatests/com/google/gerrit/acceptance/api/change/ChangeIT.java b/javatests/com/google/gerrit/acceptance/api/change/ChangeIT.java index f9284bd326..624e1b00b8 100644 --- a/javatests/com/google/gerrit/acceptance/api/change/ChangeIT.java +++ b/javatests/com/google/gerrit/acceptance/api/change/ChangeIT.java @@ -126,6 +126,7 @@ import com.google.gerrit.extensions.restapi.ResourceConflictException; import com.google.gerrit.extensions.restapi.ResourceNotFoundException; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.extensions.restapi.UnprocessableEntityException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Branch; @@ -140,7 +141,6 @@ import com.google.gerrit.server.StarredChangesUtil; import com.google.gerrit.server.change.ChangeResource; import com.google.gerrit.server.git.ChangeMessageModifier; import com.google.gerrit.server.group.SystemGroupBackend; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.NoteDbChangeState.PrimaryStorage; import com.google.gerrit.server.project.testing.Util; import com.google.gerrit.server.restapi.change.PostReview; diff --git a/javatests/com/google/gerrit/acceptance/git/AbstractPushForReview.java b/javatests/com/google/gerrit/acceptance/git/AbstractPushForReview.java index cfa7ec4dd4..b4ae8a237c 100644 --- a/javatests/com/google/gerrit/acceptance/git/AbstractPushForReview.java +++ b/javatests/com/google/gerrit/acceptance/git/AbstractPushForReview.java @@ -71,6 +71,7 @@ import com.google.gerrit.extensions.common.EditInfo; import com.google.gerrit.extensions.common.LabelInfo; import com.google.gerrit.extensions.common.RevisionInfo; import com.google.gerrit.extensions.common.testing.EditInfoSubject; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.BooleanProjectConfig; import com.google.gerrit.reviewdb.client.Change; @@ -84,7 +85,6 @@ import com.google.gerrit.server.git.receive.NoteDbPushOption; import com.google.gerrit.server.git.receive.ReceiveConstants; import com.google.gerrit.server.git.validators.CommitValidators.ChangeIdValidator; import com.google.gerrit.server.group.SystemGroupBackend; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.project.testing.Util; import com.google.gerrit.server.query.change.ChangeData; import com.google.gerrit.testing.FakeEmailSender.Message; diff --git a/javatests/com/google/gerrit/acceptance/git/BUILD b/javatests/com/google/gerrit/acceptance/git/BUILD index 7a6a3c4b03..3541fec640 100644 --- a/javatests/com/google/gerrit/acceptance/git/BUILD +++ b/javatests/com/google/gerrit/acceptance/git/BUILD @@ -16,6 +16,7 @@ java_library( srcs = ["AbstractPushForReview.java"], deps = [ "//java/com/google/gerrit/acceptance:lib", + "//java/com/google/gerrit/mail", ], ) diff --git a/javatests/com/google/gerrit/acceptance/rest/change/BUILD b/javatests/com/google/gerrit/acceptance/rest/change/BUILD index 6a4b4a7d69..46eb0ba3e6 100644 --- a/javatests/com/google/gerrit/acceptance/rest/change/BUILD +++ b/javatests/com/google/gerrit/acceptance/rest/change/BUILD @@ -15,6 +15,7 @@ acceptance_tests( labels = ["rest"], deps = [ ":submit_util", + "//java/com/google/gerrit/mail", ], ) diff --git a/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersByEmailIT.java b/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersByEmailIT.java index 84c9c0392e..06b67d8c06 100644 --- a/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersByEmailIT.java +++ b/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersByEmailIT.java @@ -32,7 +32,7 @@ import com.google.gerrit.extensions.client.InheritableBoolean; import com.google.gerrit.extensions.client.ReviewerState; import com.google.gerrit.extensions.common.AccountInfo; import com.google.gerrit.extensions.common.ChangeInfo; -import com.google.gerrit.server.mail.Address; +import com.google.gerrit.mail.Address; import com.google.gerrit.testing.FakeEmailSender.Message; import java.util.List; import org.junit.Before; diff --git a/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java b/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java index 129d98aae7..22599990a4 100644 --- a/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java +++ b/javatests/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java @@ -46,8 +46,8 @@ import com.google.gerrit.extensions.common.ChangeInfo; import com.google.gerrit.extensions.common.LabelInfo; import com.google.gerrit.extensions.common.ReviewerUpdateInfo; import com.google.gerrit.extensions.restapi.AuthException; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.RefNames; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.restapi.change.PostReviewers; import com.google.gerrit.testing.FakeEmailSender.Message; import com.google.gson.stream.JsonReader; diff --git a/javatests/com/google/gerrit/acceptance/server/mail/AbstractMailIT.java b/javatests/com/google/gerrit/acceptance/server/mail/AbstractMailIT.java index 32f1ce55e7..c1b5cf448c 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/AbstractMailIT.java +++ b/javatests/com/google/gerrit/acceptance/server/mail/AbstractMailIT.java @@ -22,7 +22,7 @@ import com.google.gerrit.extensions.api.changes.ReviewInput; import com.google.gerrit.extensions.api.changes.ReviewInput.CommentInput; import com.google.gerrit.extensions.client.Comment; import com.google.gerrit.extensions.client.Side; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; import java.time.Instant; import java.util.HashMap; import org.junit.Ignore; diff --git a/javatests/com/google/gerrit/acceptance/server/mail/BUILD b/javatests/com/google/gerrit/acceptance/server/mail/BUILD index 41752722fc..b5ad42514e 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/BUILD +++ b/javatests/com/google/gerrit/acceptance/server/mail/BUILD @@ -3,6 +3,7 @@ load("//javatests/com/google/gerrit/acceptance:tests.bzl", "acceptance_tests") DEPS = [ "//lib/greenmail", "//lib/mail", + "//java/com/google/gerrit/mail", ] acceptance_tests( diff --git a/javatests/com/google/gerrit/acceptance/server/mail/ListMailFilterIT.java b/javatests/com/google/gerrit/acceptance/server/mail/ListMailFilterIT.java index 438954c0a4..13f041676e 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/ListMailFilterIT.java +++ b/javatests/com/google/gerrit/acceptance/server/mail/ListMailFilterIT.java @@ -21,8 +21,8 @@ import com.google.gerrit.acceptance.NoHttpd; import com.google.gerrit.extensions.common.ChangeInfo; import com.google.gerrit.extensions.common.ChangeMessageInfo; import com.google.gerrit.extensions.common.CommentInfo; -import com.google.gerrit.server.mail.MailUtil; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; +import com.google.gerrit.mail.MailProcessingUtil; import com.google.gerrit.server.mail.receive.MailProcessor; import com.google.inject.Inject; import java.time.ZoneId; @@ -100,7 +100,7 @@ public class ListMailFilterIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message diff --git a/javatests/com/google/gerrit/acceptance/server/mail/MailMetadataIT.java b/javatests/com/google/gerrit/acceptance/server/mail/MailMetadataIT.java index 3315a3371c..988b0517d8 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/MailMetadataIT.java +++ b/javatests/com/google/gerrit/acceptance/server/mail/MailMetadataIT.java @@ -22,8 +22,8 @@ import com.google.gerrit.acceptance.AbstractDaemonTest; import com.google.gerrit.acceptance.PushOneCommit; import com.google.gerrit.extensions.api.changes.ReviewInput; import com.google.gerrit.extensions.common.ChangeMessageInfo; -import com.google.gerrit.server.mail.MailUtil; -import com.google.gerrit.server.mail.send.EmailHeader; +import com.google.gerrit.mail.EmailHeader; +import com.google.gerrit.mail.MailProcessingUtil; import com.google.gerrit.testing.FakeEmailSender; import com.google.gerrit.testing.TestTimeUtil; import java.sql.Timestamp; @@ -147,7 +147,7 @@ public class MailMetadataIT extends AbstractDaemonTest { .contains( entry.getKey() + ": " - + MailUtil.rfcDateformatter.format( + + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant( ((Timestamp) entry.getValue()).toInstant(), ZoneId.of("UTC")))); } else { diff --git a/javatests/com/google/gerrit/acceptance/server/mail/MailProcessorIT.java b/javatests/com/google/gerrit/acceptance/server/mail/MailProcessorIT.java index f34fe33e1b..b9f30d634a 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/MailProcessorIT.java +++ b/javatests/com/google/gerrit/acceptance/server/mail/MailProcessorIT.java @@ -20,8 +20,8 @@ import com.google.common.collect.Iterables; import com.google.gerrit.extensions.common.ChangeInfo; import com.google.gerrit.extensions.common.ChangeMessageInfo; import com.google.gerrit.extensions.common.CommentInfo; -import com.google.gerrit.server.mail.MailUtil; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; +import com.google.gerrit.mail.MailProcessingUtil; import com.google.gerrit.server.mail.receive.MailProcessor; import com.google.gerrit.testing.FakeEmailSender.Message; import com.google.inject.Inject; @@ -40,7 +40,7 @@ public class MailProcessorIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message @@ -68,7 +68,7 @@ public class MailProcessorIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message @@ -104,7 +104,7 @@ public class MailProcessorIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message @@ -141,7 +141,7 @@ public class MailProcessorIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message @@ -171,7 +171,7 @@ public class MailProcessorIT extends AbstractMailIT { ChangeInfo changeInfo = gApi.changes().id(changeId).get(); List comments = gApi.changes().id(changeId).current().commentsAsList(); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); assertThat(comments).hasSize(2); @@ -206,7 +206,7 @@ public class MailProcessorIT extends AbstractMailIT { List comments = gApi.changes().id(changeId).current().commentsAsList(); assertThat(comments).hasSize(2); String ts = - MailUtil.rfcDateformatter.format( + MailProcessingUtil.rfcDateformatter.format( ZonedDateTime.ofInstant(comments.get(0).updated.toInstant(), ZoneId.of("UTC"))); // Build Message diff --git a/javatests/com/google/gerrit/acceptance/server/mail/MailSenderIT.java b/javatests/com/google/gerrit/acceptance/server/mail/MailSenderIT.java index 4f51e1f47a..8d21b5b477 100644 --- a/javatests/com/google/gerrit/acceptance/server/mail/MailSenderIT.java +++ b/javatests/com/google/gerrit/acceptance/server/mail/MailSenderIT.java @@ -17,7 +17,7 @@ package com.google.gerrit.acceptance.server.mail; import static com.google.common.truth.Truth.assertThat; import com.google.gerrit.acceptance.GerritConfig; -import com.google.gerrit.server.mail.send.EmailHeader; +import com.google.gerrit.mail.EmailHeader; import java.net.URI; import java.util.Map; import org.junit.Test; diff --git a/javatests/com/google/gerrit/acceptance/server/project/BUILD b/javatests/com/google/gerrit/acceptance/server/project/BUILD index efa1cdb48f..42dfbac545 100644 --- a/javatests/com/google/gerrit/acceptance/server/project/BUILD +++ b/javatests/com/google/gerrit/acceptance/server/project/BUILD @@ -4,4 +4,5 @@ acceptance_tests( srcs = glob(["*IT.java"]), group = "server_project", labels = ["server"], + deps = ["//java/com/google/gerrit/mail"], ) diff --git a/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java b/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java index ca0cae45fc..cfdd781a42 100644 --- a/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java +++ b/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java @@ -26,11 +26,11 @@ import com.google.gerrit.common.data.Permission; import com.google.gerrit.extensions.api.changes.ReviewInput; import com.google.gerrit.extensions.api.changes.StarsInput; import com.google.gerrit.extensions.common.GroupInfo; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.server.account.ProjectWatches.NotifyType; import com.google.gerrit.server.git.NotifyConfig; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.testing.FakeEmailSender.Message; import java.util.EnumSet; import java.util.List; diff --git a/javatests/com/google/gerrit/server/mail/receive/AbstractParserTest.java b/javatests/com/google/gerrit/mail/AbstractParserTest.java similarity index 97% rename from javatests/com/google/gerrit/server/mail/receive/AbstractParserTest.java rename to javatests/com/google/gerrit/mail/AbstractParserTest.java index 0e894a6baf..5219ce8939 100644 --- a/javatests/com/google/gerrit/server/mail/receive/AbstractParserTest.java +++ b/javatests/com/google/gerrit/mail/AbstractParserTest.java @@ -12,13 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Comment; -import com.google.gerrit.server.mail.Address; import java.sql.Timestamp; import java.time.Instant; import java.util.ArrayList; diff --git a/javatests/com/google/gerrit/server/mail/AddressTest.java b/javatests/com/google/gerrit/mail/AddressTest.java similarity index 81% rename from javatests/com/google/gerrit/server/mail/AddressTest.java rename to javatests/com/google/gerrit/mail/AddressTest.java index 7dbd5631f2..53ff1fe20a 100644 --- a/javatests/com/google/gerrit/server/mail/AddressTest.java +++ b/javatests/com/google/gerrit/mail/AddressTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.fail; @@ -24,57 +24,57 @@ public class AddressTest extends GerritBaseTests { @Test public void parse_NameEmail1() { final Address a = Address.parse("A U Thor "); - assertThat(a.name).isEqualTo("A U Thor"); - assertThat(a.email).isEqualTo("author@example.com"); + assertThat(a.getName()).isEqualTo("A U Thor"); + assertThat(a.getEmail()).isEqualTo("author@example.com"); } @Test public void parse_NameEmail2() { final Address a = Address.parse("A "); - assertThat(a.name).isEqualTo("A"); - assertThat(a.email).isEqualTo("a@b"); + assertThat(a.getName()).isEqualTo("A"); + assertThat(a.getEmail()).isEqualTo("a@b"); } @Test public void parse_NameEmail3() { final Address a = Address.parse(""); - assertThat(a.name).isNull(); - assertThat(a.email).isEqualTo("a@b"); + assertThat(a.getName()).isNull(); + assertThat(a.getEmail()).isEqualTo("a@b"); } @Test public void parse_NameEmail4() { final Address a = Address.parse("A U Thor"); - assertThat(a.name).isEqualTo("A U Thor"); - assertThat(a.email).isEqualTo("author@example.com"); + assertThat(a.getName()).isEqualTo("A U Thor"); + assertThat(a.getEmail()).isEqualTo("author@example.com"); } @Test public void parse_NameEmail5() { final Address a = Address.parse("A U Thor "); - assertThat(a.name).isEqualTo("A U Thor"); - assertThat(a.email).isEqualTo("author@example.com"); + assertThat(a.getName()).isEqualTo("A U Thor"); + assertThat(a.getEmail()).isEqualTo("author@example.com"); } @Test public void parse_Email1() { final Address a = Address.parse("author@example.com"); - assertThat(a.name).isNull(); - assertThat(a.email).isEqualTo("author@example.com"); + assertThat(a.getName()).isNull(); + assertThat(a.getEmail()).isEqualTo("author@example.com"); } @Test public void parse_Email2() { final Address a = Address.parse("a@b"); - assertThat(a.name).isNull(); - assertThat(a.email).isEqualTo("a@b"); + assertThat(a.getName()).isNull(); + assertThat(a.getEmail()).isEqualTo("a@b"); } @Test public void parse_NewTLD() { Address a = Address.parse("A U Thor "); - assertThat(a.name).isEqualTo("A U Thor"); - assertThat(a.email).isEqualTo("author@example.systems"); + assertThat(a.getName()).isEqualTo("A U Thor"); + assertThat(a.getEmail()).isEqualTo("author@example.systems"); } @Test diff --git a/javatests/com/google/gerrit/mail/BUILD b/javatests/com/google/gerrit/mail/BUILD new file mode 100644 index 0000000000..488bbcc56e --- /dev/null +++ b/javatests/com/google/gerrit/mail/BUILD @@ -0,0 +1,36 @@ +load("//tools/bzl:junit.bzl", "junit_tests") + +junit_tests( + name = "maillib_tests", + size = "small", + srcs = glob( + ["**/*.java"], + ), + visibility = ["//visibility:public"], + deps = [ + "//java/com/google/gerrit/common:annotations", + "//java/com/google/gerrit/common:server", + "//java/com/google/gerrit/extensions:api", + "//java/com/google/gerrit/extensions/common/testing:common-test-util", + "//java/com/google/gerrit/index", + "//java/com/google/gerrit/index:query_exception", + "//java/com/google/gerrit/lifecycle", + "//java/com/google/gerrit/mail", + "//java/com/google/gerrit/metrics", + "//java/com/google/gerrit/reviewdb:server", + "//java/com/google/gerrit/server", + "//java/com/google/gerrit/server/project/testing:project-test-util", + "//java/com/google/gerrit/testing:gerrit-test-util", + "//java/org/eclipse/jgit:server", + "//lib:grappa", + "//lib:gson", + "//lib:guava-retrying", + "//lib:gwtorm", + "//lib/commons:codec", + "//lib/guice", + "//lib/jgit/org.eclipse.jgit:jgit", + "//lib/jgit/org.eclipse.jgit.junit:junit", + "//lib/truth", + "//lib/truth:truth-java8-extension", + ], +) diff --git a/javatests/com/google/gerrit/server/mail/receive/GenericHtmlParserTest.java b/javatests/com/google/gerrit/mail/GenericHtmlParserTest.java similarity index 98% rename from javatests/com/google/gerrit/server/mail/receive/GenericHtmlParserTest.java rename to javatests/com/google/gerrit/mail/GenericHtmlParserTest.java index f78953d54a..4718bad7c5 100644 --- a/javatests/com/google/gerrit/server/mail/receive/GenericHtmlParserTest.java +++ b/javatests/com/google/gerrit/mail/GenericHtmlParserTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; /** Test parser for a generic Html email client response */ public class GenericHtmlParserTest extends HtmlParserTest { diff --git a/javatests/com/google/gerrit/server/mail/receive/GmailHtmlParserTest.java b/javatests/com/google/gerrit/mail/GmailHtmlParserTest.java similarity index 98% rename from javatests/com/google/gerrit/server/mail/receive/GmailHtmlParserTest.java rename to javatests/com/google/gerrit/mail/GmailHtmlParserTest.java index df71629d86..f597dee660 100644 --- a/javatests/com/google/gerrit/server/mail/receive/GmailHtmlParserTest.java +++ b/javatests/com/google/gerrit/mail/GmailHtmlParserTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; public class GmailHtmlParserTest extends HtmlParserTest { @Override diff --git a/javatests/com/google/gerrit/server/mail/receive/HtmlParserTest.java b/javatests/com/google/gerrit/mail/HtmlParserTest.java similarity index 99% rename from javatests/com/google/gerrit/server/mail/receive/HtmlParserTest.java rename to javatests/com/google/gerrit/mail/HtmlParserTest.java index d88e09faff..d630bd6290 100644 --- a/javatests/com/google/gerrit/server/mail/receive/HtmlParserTest.java +++ b/javatests/com/google/gerrit/mail/HtmlParserTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; diff --git a/javatests/com/google/gerrit/server/mail/receive/MailHeaderParserTest.java b/javatests/com/google/gerrit/mail/MailHeaderParserTest.java similarity index 97% rename from javatests/com/google/gerrit/server/mail/receive/MailHeaderParserTest.java rename to javatests/com/google/gerrit/mail/MailHeaderParserTest.java index 071dc4b0a7..2d2c2ea778 100644 --- a/javatests/com/google/gerrit/server/mail/receive/MailHeaderParserTest.java +++ b/javatests/com/google/gerrit/mail/MailHeaderParserTest.java @@ -12,12 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.MailHeader; import java.time.Instant; import java.time.LocalDateTime; import java.time.Month; diff --git a/javatests/com/google/gerrit/server/mail/receive/ParserUtilTest.java b/javatests/com/google/gerrit/mail/ParserUtilTest.java similarity index 97% rename from javatests/com/google/gerrit/server/mail/receive/ParserUtilTest.java rename to javatests/com/google/gerrit/mail/ParserUtilTest.java index dfa492c00e..47a53673f8 100644 --- a/javatests/com/google/gerrit/server/mail/receive/ParserUtilTest.java +++ b/javatests/com/google/gerrit/mail/ParserUtilTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; diff --git a/javatests/com/google/gerrit/server/mail/receive/RawMailParserTest.java b/javatests/com/google/gerrit/mail/RawMailParserTest.java similarity index 83% rename from javatests/com/google/gerrit/server/mail/receive/RawMailParserTest.java rename to javatests/com/google/gerrit/mail/RawMailParserTest.java index fb52947c8a..9049704f0f 100644 --- a/javatests/com/google/gerrit/server/mail/receive/RawMailParserTest.java +++ b/javatests/com/google/gerrit/mail/RawMailParserTest.java @@ -12,17 +12,17 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; -import com.google.gerrit.server.mail.receive.data.AttachmentMessage; -import com.google.gerrit.server.mail.receive.data.Base64HeaderMessage; -import com.google.gerrit.server.mail.receive.data.HtmlMimeMessage; -import com.google.gerrit.server.mail.receive.data.NonUTF8Message; -import com.google.gerrit.server.mail.receive.data.QuotedPrintableHeaderMessage; -import com.google.gerrit.server.mail.receive.data.RawMailMessage; -import com.google.gerrit.server.mail.receive.data.SimpleTextMessage; +import com.google.gerrit.mail.data.AttachmentMessage; +import com.google.gerrit.mail.data.Base64HeaderMessage; +import com.google.gerrit.mail.data.HtmlMimeMessage; +import com.google.gerrit.mail.data.NonUTF8Message; +import com.google.gerrit.mail.data.QuotedPrintableHeaderMessage; +import com.google.gerrit.mail.data.RawMailMessage; +import com.google.gerrit.mail.data.SimpleTextMessage; import com.google.gerrit.testing.GerritBaseTests; import org.junit.Test; diff --git a/javatests/com/google/gerrit/server/mail/receive/TextParserTest.java b/javatests/com/google/gerrit/mail/TextParserTest.java similarity index 99% rename from javatests/com/google/gerrit/server/mail/receive/TextParserTest.java rename to javatests/com/google/gerrit/mail/TextParserTest.java index 89e1f22aee..e11321add6 100644 --- a/javatests/com/google/gerrit/server/mail/receive/TextParserTest.java +++ b/javatests/com/google/gerrit/mail/TextParserTest.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive; +package com.google.gerrit.mail; import static com.google.common.truth.Truth.assertThat; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/AttachmentMessage.java b/javatests/com/google/gerrit/mail/data/AttachmentMessage.java similarity index 95% rename from javatests/com/google/gerrit/server/mail/receive/data/AttachmentMessage.java rename to javatests/com/google/gerrit/mail/data/AttachmentMessage.java index eb4d18091a..1d94d68027 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/AttachmentMessage.java +++ b/javatests/com/google/gerrit/mail/data/AttachmentMessage.java @@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/Base64HeaderMessage.java b/javatests/com/google/gerrit/mail/data/Base64HeaderMessage.java similarity index 93% rename from javatests/com/google/gerrit/server/mail/receive/data/Base64HeaderMessage.java rename to javatests/com/google/gerrit/mail/data/Base64HeaderMessage.java index 91dc6f1977..aa19537010 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/Base64HeaderMessage.java +++ b/javatests/com/google/gerrit/mail/data/Base64HeaderMessage.java @@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/HtmlMimeMessage.java b/javatests/com/google/gerrit/mail/data/HtmlMimeMessage.java similarity index 96% rename from javatests/com/google/gerrit/server/mail/receive/data/HtmlMimeMessage.java rename to javatests/com/google/gerrit/mail/data/HtmlMimeMessage.java index 756581f95e..1d68cc8a2c 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/HtmlMimeMessage.java +++ b/javatests/com/google/gerrit/mail/data/HtmlMimeMessage.java @@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/NonUTF8Message.java b/javatests/com/google/gerrit/mail/data/NonUTF8Message.java similarity index 93% rename from javatests/com/google/gerrit/server/mail/receive/data/NonUTF8Message.java rename to javatests/com/google/gerrit/mail/data/NonUTF8Message.java index 3fafd4b26b..32915e744d 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/NonUTF8Message.java +++ b/javatests/com/google/gerrit/mail/data/NonUTF8Message.java @@ -11,10 +11,10 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/QuotedPrintableHeaderMessage.java b/javatests/com/google/gerrit/mail/data/QuotedPrintableHeaderMessage.java similarity index 93% rename from javatests/com/google/gerrit/server/mail/receive/data/QuotedPrintableHeaderMessage.java rename to javatests/com/google/gerrit/mail/data/QuotedPrintableHeaderMessage.java index 2dc48b5b9a..47e813a0bb 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/QuotedPrintableHeaderMessage.java +++ b/javatests/com/google/gerrit/mail/data/QuotedPrintableHeaderMessage.java @@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/mail/receive/data/RawMailMessage.java b/javatests/com/google/gerrit/mail/data/RawMailMessage.java similarity index 89% rename from javatests/com/google/gerrit/server/mail/receive/data/RawMailMessage.java rename to javatests/com/google/gerrit/mail/data/RawMailMessage.java index 2af82ad607..53c782cd8f 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/RawMailMessage.java +++ b/javatests/com/google/gerrit/mail/data/RawMailMessage.java @@ -12,9 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.MailMessage; import org.junit.Ignore; /** Base class for all email parsing tests. */ diff --git a/javatests/com/google/gerrit/server/mail/receive/data/SimpleTextMessage.java b/javatests/com/google/gerrit/mail/data/SimpleTextMessage.java similarity index 97% rename from javatests/com/google/gerrit/server/mail/receive/data/SimpleTextMessage.java rename to javatests/com/google/gerrit/mail/data/SimpleTextMessage.java index aa5b78a66b..a8f5b94a92 100644 --- a/javatests/com/google/gerrit/server/mail/receive/data/SimpleTextMessage.java +++ b/javatests/com/google/gerrit/mail/data/SimpleTextMessage.java @@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.mail.receive.data; +package com.google.gerrit.mail.data; -import com.google.gerrit.server.mail.Address; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import java.time.LocalDateTime; import java.time.Month; import java.time.ZoneOffset; diff --git a/javatests/com/google/gerrit/server/BUILD b/javatests/com/google/gerrit/server/BUILD index f405c283e3..569b0b967d 100644 --- a/javatests/com/google/gerrit/server/BUILD +++ b/javatests/com/google/gerrit/server/BUILD @@ -41,6 +41,7 @@ junit_tests( "//java/com/google/gerrit/index", "//java/com/google/gerrit/index:query_exception", "//java/com/google/gerrit/lifecycle", + "//java/com/google/gerrit/mail", "//java/com/google/gerrit/metrics", "//java/com/google/gerrit/reviewdb:server", "//java/com/google/gerrit/server", diff --git a/javatests/com/google/gerrit/server/mail/AutoReplyMailFilterTest.java b/javatests/com/google/gerrit/server/mail/AutoReplyMailFilterTest.java index a7234f4b38..f8a613aa37 100644 --- a/javatests/com/google/gerrit/server/mail/AutoReplyMailFilterTest.java +++ b/javatests/com/google/gerrit/server/mail/AutoReplyMailFilterTest.java @@ -16,7 +16,8 @@ package com.google.gerrit.server.mail; import static com.google.common.truth.Truth.assertThat; -import com.google.gerrit.server.mail.receive.MailMessage; +import com.google.gerrit.mail.Address; +import com.google.gerrit.mail.MailMessage; import com.google.gerrit.testing.GerritBaseTests; import java.time.Instant; import org.junit.Test; diff --git a/javatests/com/google/gerrit/server/mail/send/FromAddressGeneratorProviderTest.java b/javatests/com/google/gerrit/server/mail/send/FromAddressGeneratorProviderTest.java index 7028bb2c31..f99c356d26 100644 --- a/javatests/com/google/gerrit/server/mail/send/FromAddressGeneratorProviderTest.java +++ b/javatests/com/google/gerrit/server/mail/send/FromAddressGeneratorProviderTest.java @@ -22,12 +22,12 @@ import static org.easymock.EasyMock.replay; import static org.easymock.EasyMock.verify; import com.google.gerrit.common.TimeUtil; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.server.account.AccountCache; import com.google.gerrit.server.account.AccountState; import com.google.gerrit.server.config.AllUsersName; import com.google.gerrit.server.config.AllUsersNameProvider; -import com.google.gerrit.server.mail.Address; import java.util.Arrays; import java.util.List; import java.util.Optional; diff --git a/javatests/com/google/gerrit/server/notedb/ChangeNotesStateTest.java b/javatests/com/google/gerrit/server/notedb/ChangeNotesStateTest.java index 3d65eaecdc..574f6accb3 100644 --- a/javatests/com/google/gerrit/server/notedb/ChangeNotesStateTest.java +++ b/javatests/com/google/gerrit/server/notedb/ChangeNotesStateTest.java @@ -30,6 +30,7 @@ import com.google.common.collect.ImmutableTable; import com.google.common.collect.Iterables; import com.google.gerrit.common.data.SubmitRecord; import com.google.gerrit.common.data.SubmitRequirement; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; @@ -47,7 +48,6 @@ import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ChangeCo import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ReviewerByEmailSetEntryProto; import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ReviewerSetEntryProto; import com.google.gerrit.server.cache.proto.Cache.ChangeNotesStateProto.ReviewerStatusUpdateProto; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotesState.ChangeColumns; import com.google.gerrit.server.notedb.ChangeNotesState.Serializer; import com.google.gwtorm.client.KeyUtil; diff --git a/javatests/com/google/gerrit/server/notedb/ChangeNotesTest.java b/javatests/com/google/gerrit/server/notedb/ChangeNotesTest.java index 3a98127fdc..852c8bc866 100644 --- a/javatests/com/google/gerrit/server/notedb/ChangeNotesTest.java +++ b/javatests/com/google/gerrit/server/notedb/ChangeNotesTest.java @@ -35,6 +35,7 @@ import com.google.common.collect.ListMultimap; import com.google.common.collect.Lists; import com.google.gerrit.common.TimeUtil; import com.google.gerrit.common.data.SubmitRecord; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Branch; import com.google.gerrit.reviewdb.client.Change; @@ -50,7 +51,6 @@ import com.google.gerrit.server.CurrentUser; import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.ReviewerSet; import com.google.gerrit.server.config.GerritServerId; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.notedb.ChangeNotesCommit.ChangeNotesRevWalk; import com.google.gerrit.server.util.RequestId; import com.google.gerrit.testing.TestChanges; diff --git a/javatests/com/google/gerrit/server/notedb/CommitMessageOutputTest.java b/javatests/com/google/gerrit/server/notedb/CommitMessageOutputTest.java index db7035bc71..963546f241 100644 --- a/javatests/com/google/gerrit/server/notedb/CommitMessageOutputTest.java +++ b/javatests/com/google/gerrit/server/notedb/CommitMessageOutputTest.java @@ -20,10 +20,10 @@ import static com.google.gerrit.server.notedb.ReviewerStateInternal.REVIEWER; import com.google.common.collect.ImmutableList; import com.google.gerrit.common.TimeUtil; +import com.google.gerrit.mail.Address; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.server.CurrentUser; -import com.google.gerrit.server.mail.Address; import com.google.gerrit.server.util.RequestId; import com.google.gerrit.testing.ConfigSuite; import com.google.gerrit.testing.TestChanges;