Merge "Add redirect parameter to logout URL"
diff --git a/src/main/java/com/googlesource/gerrit/plugins/cfoauth/InitOAuthConfig.java b/src/main/java/com/googlesource/gerrit/plugins/cfoauth/InitOAuthConfig.java
index c532357..c2c54ff 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/cfoauth/InitOAuthConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/cfoauth/InitOAuthConfig.java
@@ -36,6 +36,7 @@
private final InitFlags flags;
private final ConsoleUI ui;
private final Section cfg;
+ private final String redirectUrl;
@Inject
InitOAuthConfig(InitFlags flags, ConsoleUI ui,
@@ -44,6 +45,7 @@
this.flags = flags;
this.ui = ui;
this.cfg = sections.get(PLUGIN_SECTION, pluginName);
+ this.redirectUrl = getRedirectUrl(sections);
}
@Override
@@ -60,7 +62,13 @@
cfg.set(VERIFIY_SIGNATURES, Boolean.toString(
ui.yesno(true, "Verify token signatures", VERIFIY_SIGNATURES)));
flags.cfg.setString("auth", null, "logouturl", CharMatcher.is('/')
- .trimTrailingFrom(cfg.get(SERVER_URL)) + "/logout.do");
+ .trimTrailingFrom(cfg.get(SERVER_URL)) + "/logout.do?redirect="
+ + redirectUrl);
+ }
+
+ private static String getRedirectUrl(Section.Factory sections) {
+ Section gerrit = sections.get("gerrit", null);
+ return CharMatcher.is('/').trimTrailingFrom(gerrit.get("canonicalWebUrl"));
}
@Override