Split off mail data processing out of server package
Much of the mail processing code is not specific to building a code review server, so it doesn't need to live in the server package. Change-Id: Ie5b22908fecdfa8b2e26eacb9dabb87123c39e27
This commit is contained in:
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
18
java/com/google/gerrit/mail/BUILD
Normal file
18
java/com/google/gerrit/mail/BUILD
Normal file
@@ -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",
|
||||
],
|
||||
)
|
||||
@@ -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));
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
@@ -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.
|
||||
@@ -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 {
|
||||
@@ -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());
|
||||
@@ -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;
|
||||
|
||||
/**
|
||||
@@ -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;
|
||||
@@ -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 {
|
||||
23
java/com/google/gerrit/mail/MailProcessingUtil.java
Normal file
23
java/com/google/gerrit/mail/MailProcessingUtil.java
Normal file
@@ -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");
|
||||
}
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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. */
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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<FooterLine> footerLines)
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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")));
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -8,4 +8,5 @@ acceptance_tests(
|
||||
"noci",
|
||||
"no_windows",
|
||||
],
|
||||
deps = ["//java/com/google/gerrit/mail"],
|
||||
)
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -16,6 +16,7 @@ java_library(
|
||||
srcs = ["AbstractPushForReview.java"],
|
||||
deps = [
|
||||
"//java/com/google/gerrit/acceptance:lib",
|
||||
"//java/com/google/gerrit/mail",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@ acceptance_tests(
|
||||
labels = ["rest"],
|
||||
deps = [
|
||||
":submit_util",
|
||||
"//java/com/google/gerrit/mail",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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<CommentInfo> 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
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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<CommentInfo> 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<CommentInfo> 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<CommentInfo> 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<CommentInfo> 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<CommentInfo> 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<CommentInfo> 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
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -4,4 +4,5 @@ acceptance_tests(
|
||||
srcs = glob(["*IT.java"]),
|
||||
group = "server_project",
|
||||
labels = ["server"],
|
||||
deps = ["//java/com/google/gerrit/mail"],
|
||||
)
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
@@ -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 <author@example.com>");
|
||||
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 <a@b>");
|
||||
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("<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_NameEmail4() {
|
||||
final Address a = Address.parse("A U Thor<author@example.com>");
|
||||
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 <author@example.com>");
|
||||
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 <author@example.systems>");
|
||||
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
|
||||
36
javatests/com/google/gerrit/mail/BUILD
Normal file
36
javatests/com/google/gerrit/mail/BUILD
Normal file
@@ -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",
|
||||
],
|
||||
)
|
||||
@@ -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 {
|
||||
@@ -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
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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. */
|
||||
@@ -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;
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user