summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn O. Pearce <sop@google.com>2009-02-10 19:23:56 -0800
committerShawn O. Pearce <sop@google.com>2009-02-10 19:23:56 -0800
commit99bab581a0d1ebf411e792dbac0a2c32c328c4be (patch)
tree755c02a200f8fc93d027ee9b05bb5f0a69c5c75e
parent2fe632e92c4cc87a7eedb229be288c347c5f165a (diff)
Move Account to PersonIdent code to ChangeUtil for reuse
We need this code in other areas where we create a RefUpdate object in JGit on behalf of an authenticated Account. It is somewhat related to changes, so ChangeUtil is good enough as a home for now. Signed-off-by: Shawn O. Pearce <sop@google.com>
-rw-r--r--src/main/java/com/google/gerrit/server/ChangeUtil.java16
-rw-r--r--src/main/java/com/google/gerrit/server/ssh/Receive.java16
2 files changed, 17 insertions, 15 deletions
diff --git a/src/main/java/com/google/gerrit/server/ChangeUtil.java b/src/main/java/com/google/gerrit/server/ChangeUtil.java
index c3b2fd46fd..6c3d8811fd 100644
--- a/src/main/java/com/google/gerrit/server/ChangeUtil.java
+++ b/src/main/java/com/google/gerrit/server/ChangeUtil.java
@@ -14,10 +14,12 @@
package com.google.gerrit.server;
+import com.google.gerrit.client.reviewdb.Account;
import com.google.gerrit.client.reviewdb.Change;
import com.google.gerrit.client.reviewdb.ReviewDb;
import com.google.gwtorm.client.OrmException;
+import org.spearce.jgit.lib.PersonIdent;
import org.spearce.jgit.util.Base64;
import org.spearce.jgit.util.NB;
@@ -39,6 +41,20 @@ public class ChangeUtil {
return Base64.encodeBytes(raw);
}
+ public static PersonIdent toPersonIdent(final Account userAccount) {
+ String name = userAccount.getFullName();
+ if (name == null) {
+ name = userAccount.getPreferredEmail();
+ }
+ if (name == null) {
+ name = "Anonymous Coward";
+ }
+
+ String user = "account-" + userAccount.getId().toString();
+ String host = "unknown";
+ return new PersonIdent(name, user + "@" + host);
+ }
+
private static synchronized void fill(byte[] raw, ReviewDb db)
throws OrmException {
if (uuidSeq == 0) {
diff --git a/src/main/java/com/google/gerrit/server/ssh/Receive.java b/src/main/java/com/google/gerrit/server/ssh/Receive.java
index 417cb46740..c27ff57bcf 100644
--- a/src/main/java/com/google/gerrit/server/ssh/Receive.java
+++ b/src/main/java/com/google/gerrit/server/ssh/Receive.java
@@ -121,7 +121,7 @@ class Receive extends AbstractGitCommand {
loadMyEmails();
lookup(reviewerId, "reviewer", reviewerEmail);
lookup(ccId, "cc", ccEmail);
- refLogIdent = createRefLogIdent();
+ refLogIdent = ChangeUtil.toPersonIdent(userAccount);
rp = new ReceivePack(repo);
rp.setAllowCreates(true);
@@ -185,20 +185,6 @@ class Receive extends AbstractGitCommand {
}
}
- private PersonIdent createRefLogIdent() {
- String name = userAccount.getFullName();
- if (name == null) {
- name = userAccount.getPreferredEmail();
- }
- if (name == null) {
- name = "Anonymous Coward";
- }
-
- String user = "account-" + userAccount.getId().toString();
- String host = "unknown";
- return new PersonIdent(name, user + "@" + host);
- }
-
private void verifyActiveContributorAgreement() throws Failure {
AccountAgreement bestAgreement = null;
ContributorAgreement bestCla = null;