diff options
author | Shawn O. Pearce <sop@google.com> | 2009-08-04 17:44:20 -0700 |
---|---|---|
committer | Shawn O. Pearce <sop@google.com> | 2009-08-04 17:44:23 -0700 |
commit | 5fc9443c2c84e200695deb22c6e9cd16094cbe6b (patch) | |
tree | a5797cd6828b71c278f2c2a95b08d5bd2c0a479d | |
parent | af70a696b7224298970565478fd4253f96d928e7 (diff) |
Fix sshdAddress in GerritConfig object sent to clients
Guice was failing to inject our SshInfo object if we marked it as
an optional value, but does inject it if we mark it as required.
I suspect a potential bug in Guice... but for now we can just make
the property required, if we ever run without an SSH daemon we can
stub out the interface easily enough and have it return a null when
asked for the address.
Signed-off-by: Shawn O. Pearce <sop@google.com>
-rw-r--r-- | src/main/java/com/google/gerrit/server/config/GerritConfigProvider.java | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/main/java/com/google/gerrit/server/config/GerritConfigProvider.java b/src/main/java/com/google/gerrit/server/config/GerritConfigProvider.java index c252c77013..43739c67f2 100644 --- a/src/main/java/com/google/gerrit/server/config/GerritConfigProvider.java +++ b/src/main/java/com/google/gerrit/server/config/GerritConfigProvider.java @@ -47,8 +47,8 @@ public class GerritConfigProvider implements Provider<GerritConfig> { private final AuthConfig authConfig; private final SchemaFactory<ReviewDb> schema; private final Project.NameKey wildProject; + private final SshInfo sshInfo; - private SshInfo sshd; private EmailSender emailSender; private ContactStore contactStore; @@ -56,20 +56,16 @@ public class GerritConfigProvider implements Provider<GerritConfig> { GerritConfigProvider(@GerritServerConfig final Config gsc, @CanonicalWebUrl @Nullable final String cwu, final AuthConfig ac, final SchemaFactory<ReviewDb> sf, - @WildProjectName final Project.NameKey wp) { + @WildProjectName final Project.NameKey wp, final SshInfo si) { cfg = gsc; canonicalWebUrl = cwu; authConfig = ac; schema = sf; + sshInfo = si; wildProject = wp; } @Inject(optional = true) - void setSshd(final SshInfo d) { - sshd = d; - } - - @Inject(optional = true) void setEmailSender(final EmailSender d) { emailSender = d; } @@ -108,7 +104,8 @@ public class GerritConfigProvider implements Provider<GerritConfig> { db.close(); } - final InetSocketAddress addr = sshd != null ? sshd.getAddress() : null; + final InetSocketAddress addr = + sshInfo != null ? sshInfo.getAddress() : null; if (addr != null) { final InetAddress ip = addr.getAddress(); String host; |