diff --git a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/DispatchCommand.java b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/DispatchCommand.java index fa5ab53ea7..d548d34e6d 100644 --- a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/DispatchCommand.java +++ b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/DispatchCommand.java @@ -21,6 +21,7 @@ import com.google.gerrit.extensions.restapi.AuthException; import com.google.gerrit.server.CurrentUser; import com.google.gerrit.server.account.CapabilityUtils; import com.google.gerrit.server.args4j.SubcommandHandler; +import com.google.gerrit.sshd.commands.ErrorSlaveMode; import com.google.inject.Inject; import com.google.inject.Provider; import com.google.inject.assistedinject.Assisted; @@ -154,9 +155,13 @@ final class DispatchCommand extends BaseCommand { String format = "%-" + maxLength + "s %s"; for (String name : Sets.newTreeSet(commands.keySet())) { final CommandProvider p = commands.get(name); + Command c = p.getProvider().get(); + String description = c instanceof ErrorSlaveMode + ? "Command disabled: server is running in slave mode" + : Strings.nullToEmpty(p.getDescription()); + usage.append(" "); - usage.append(String.format(format, name, - Strings.nullToEmpty(p.getDescription()))); + usage.append(String.format(format, name, description)); usage.append("\n"); } usage.append("\n"); diff --git a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ErrorSlaveMode.java b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ErrorSlaveMode.java index b911547aaa..32c7203842 100644 --- a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ErrorSlaveMode.java +++ b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ErrorSlaveMode.java @@ -25,7 +25,7 @@ import java.io.IOException; * server. This is used when a user tries to run a command on a server in Slave * Mode, but the command only applies to the Master server. */ -final class ErrorSlaveMode extends BaseCommand { +public final class ErrorSlaveMode extends BaseCommand { @Override public void start(final Environment env) { String msg =