Refactor complex logic out of formatters into getters.
Create 2 new getters via refactoring: getSshHost() and
getEmailRegistrationToken() and use them in formatters.
Change-Id: I7f9bc24521b38222c80ed3f57fcbf8de032a6203
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/NewChangeSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/NewChangeSender.java
index 5b2566d..dc8c2c2 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/NewChangeSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/NewChangeSender.java
@@ -112,24 +112,31 @@
}
private String getPullUrl() {
- final List<HostKey> hostKeys = sshInfo.getHostKeys();
- if (hostKeys.isEmpty()) {
+ final String host = getSshHost();
+ if (host == null) {
return "";
}
- final String host = hostKeys.get(0).getHost();
final StringBuilder r = new StringBuilder();
r.append("git pull ssh://");
- if (host.startsWith("*:")) {
- r.append(getGerritHost());
- r.append(host.substring(1));
- } else {
- r.append(host);
- }
+ r.append(host);
r.append("/");
r.append(projectName);
r.append(" ");
r.append(patchSet.getRefName());
return r.toString();
}
+
+ public String getSshHost() {
+ final List<HostKey> hostKeys = sshInfo.getHostKeys();
+ if (hostKeys.isEmpty()) {
+ return null;
+ }
+
+ final String host = hostKeys.get(0).getHost();
+ if (host.startsWith("*:")) {
+ return getGerritHost() + host.substring(1);
+ }
+ return host;
+ }
}
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
index 0007efe..9b201fd 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
@@ -56,14 +56,7 @@
final StringBuilder url = new StringBuilder();
url.append(getGerritUrl());
url.append("#VE,");
- try {
- url.append(authConfig.getEmailRegistrationToken().newToken(
- Base64.encodeBytes(addr.getBytes("UTF-8"))));
- } catch (XsrfException e) {
- throw new IllegalArgumentException(e);
- } catch (UnsupportedEncodingException e) {
- throw new IllegalArgumentException(e);
- }
+ url.append(getEmailRegistrationToken());
appendText("Welcome to Gerrit Code Review at ");
appendText(getGerritHost());
@@ -93,4 +86,15 @@
+ " Replies to this message will not\n");
appendText("be read or answered.\n");
}
+
+ public String getEmailRegistrationToken() {
+ try {
+ return authConfig.getEmailRegistrationToken().newToken(
+ Base64.encodeBytes(addr.getBytes("UTF-8")));
+ } catch (XsrfException e) {
+ throw new IllegalArgumentException(e);
+ } catch (UnsupportedEncodingException e) {
+ throw new IllegalArgumentException(e);
+ }
+ }
}
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/ReplacePatchSetSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/ReplacePatchSetSender.java
index 5ac39fa..841aa35 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/ReplacePatchSetSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/ReplacePatchSetSender.java
@@ -125,24 +125,31 @@
}
private String getPullUrl() {
- final List<HostKey> hostKeys = sshInfo.getHostKeys();
- if (hostKeys.isEmpty()) {
+ final String host = getSshHost();
+ if (host == null) {
return "";
}
- final String host = hostKeys.get(0).getHost();
final StringBuilder r = new StringBuilder();
r.append("git pull ssh://");
- if (host.startsWith("*:")) {
- r.append(getGerritHost());
- r.append(host.substring(1));
- } else {
- r.append(host);
- }
+ r.append(host);
r.append("/");
r.append(projectName);
r.append(" ");
r.append(patchSet.getRefName());
return r.toString();
}
+
+ public String getSshHost() {
+ final List<HostKey> hostKeys = sshInfo.getHostKeys();
+ if (hostKeys.isEmpty()) {
+ return null;
+ }
+
+ final String host = hostKeys.get(0).getHost();
+ if (host.startsWith("*:")) {
+ return getGerritHost() + host.substring(1);
+ }
+ return host;
+ }
}