From b7a07e86e7779379b875d66636bd3cd341bd98e1 Mon Sep 17 00:00:00 2001 From: Julia Beliaeva Date: Mon, 28 Mar 2016 18:11:52 +0300 Subject: [PATCH] [hg] provide author from email for HgFileRevision since it does not have a separate email field IDEA-153750 HgRevisionNumber now has getName for just name (similar to getEmail) and getAuthor (as it was before my changes). --- .../com/intellij/vcs/log/util/VcsUserUtil.java | 11 ++++++++--- .../src/org/zmlx/hg4idea/HgRevisionNumber.java | 18 ++++++++++++------ .../hg4idea/log/HgFileRevisionLogParser.java | 2 +- .../org/zmlx/hg4idea/log/HgHistoryUtil.java | 4 ++-- 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/util/VcsUserUtil.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/util/VcsUserUtil.java index d3ef6524d686..95bd8f1c6922 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/util/VcsUserUtil.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/util/VcsUserUtil.java @@ -51,10 +51,15 @@ public class VcsUserUtil { @NotNull private static String getName(@NotNull VcsUser user) { - if (!user.getName().isEmpty()) return user.getName(); - String emailNamePart = getNameFromEmail(user.getEmail()); + return getUserName(user.getName(), user.getEmail()); + } + + @NotNull + public static String getUserName(@NotNull String name, @NotNull String email) { + if (!name.isEmpty()) return name; + String emailNamePart = getNameFromEmail(email); if (emailNamePart != null) return emailNamePart; - return user.getEmail(); + return email; } @Nullable diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/HgRevisionNumber.java b/plugins/hg4idea/src/org/zmlx/hg4idea/HgRevisionNumber.java index ecfffcea3d9f..27d35aba4546 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/HgRevisionNumber.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/HgRevisionNumber.java @@ -15,6 +15,7 @@ package org.zmlx.hg4idea; import com.google.common.base.Objects; import com.intellij.openapi.util.Couple; import com.intellij.openapi.vcs.history.VcsRevisionNumber; +import com.intellij.vcs.log.util.VcsUserUtil; import org.jetbrains.annotations.NotNull; import org.zmlx.hg4idea.log.HgBaseLogParser; import org.zmlx.hg4idea.util.HgUtil; @@ -109,10 +110,20 @@ public class HgRevisionNumber implements VcsRevisionNumber { } @NotNull - public String getAuthor() { + public String getName() { return author; } + @NotNull + public String getEmail() { + return email; + } + + @NotNull + public String getAuthor() { + return VcsUserUtil.getUserName(author, email); + } + public boolean isWorkingVersion() { return isWorkingVersion; } @@ -208,9 +219,4 @@ public class HgRevisionNumber implements VcsRevisionNumber { public String getSubject() { return mySubject; } - - @NotNull - public String getEmail() { - return email; - } } diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgFileRevisionLogParser.java b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgFileRevisionLogParser.java index 540a025d2507..b9a1cde2edd1 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgFileRevisionLogParser.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgFileRevisionLogParser.java @@ -92,7 +92,7 @@ public class HgFileRevisionLogParser extends HgBaseLogParser { } } } - return new HgFileRevision(myProject, myHgFile, vcsRevisionNumber, branchName, revisionDate, author, commitMessage, + return new HgFileRevision(myProject, myHgFile, vcsRevisionNumber, branchName, revisionDate, vcsRevisionNumber.getAuthor(), commitMessage, filesModified, filesAdded, filesDeleted, copies); } diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java index ad383521105c..901431a8e501 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java @@ -172,8 +172,8 @@ public class HgHistoryUtil { vcsFullCommitDetailsList.add(factory.createFullDetails(factory.createHash(vcsRevisionNumber.getChangeset()), parentsHash, revision.getRevisionDate().getTime(), root, vcsRevisionNumber.getSubject(), - vcsRevisionNumber.getAuthor(), vcsRevisionNumber.getEmail(), - vcsRevisionNumber.getCommitMessage(), vcsRevisionNumber.getAuthor(), + vcsRevisionNumber.getName(), vcsRevisionNumber.getEmail(), + vcsRevisionNumber.getCommitMessage(), vcsRevisionNumber.getName(), vcsRevisionNumber.getEmail(), revision.getRevisionDate().getTime(), new ThrowableComputable, Exception>() { @Override