summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/transport
diff options
context:
space:
mode:
authorDavid Ostrovsky <david@ostrovsky.org>2014-03-19 21:43:41 +0100
committerJames Moger <james.moger@gitblit.com>2014-04-10 18:58:09 -0400
commit4495ff757818e2a5c2a556ab2e6a0c3d36bbbc11 (patch)
tree93cc359a233124693b05ee3271c4f5aae269347c /src/main/java/com/gitblit/transport
parentebd4f4460cfe786f89898decbb6f62dd25a9d1ea (diff)
downloadgitblit-4495ff757818e2a5c2a556ab2e6a0c3d36bbbc11.tar.gz
gitblit-4495ff757818e2a5c2a556ab2e6a0c3d36bbbc11.zip
Report identified user and command on command failure
Fix commented out code. Now failure is reported as: Internal server error (user admin) during gitblit version
Diffstat (limited to 'src/main/java/com/gitblit/transport')
-rw-r--r--src/main/java/com/gitblit/transport/ssh/commands/BaseCommand.java30
1 files changed, 11 insertions, 19 deletions
diff --git a/src/main/java/com/gitblit/transport/ssh/commands/BaseCommand.java b/src/main/java/com/gitblit/transport/ssh/commands/BaseCommand.java
index 4162a400..c4d6a57e 100644
--- a/src/main/java/com/gitblit/transport/ssh/commands/BaseCommand.java
+++ b/src/main/java/com/gitblit/transport/ssh/commands/BaseCommand.java
@@ -232,7 +232,7 @@ public abstract class BaseCommand implements Command, SessionAware {
public void cancel() {
synchronized (this) {
try {
- // onExit(/*STATUS_CANCEL*/);
+ onExit(STATUS_CANCEL);
} finally {
ctx = null;
}
@@ -317,18 +317,12 @@ public abstract class BaseCommand implements Command, SessionAware {
/**
* Terminate this command and return a result code to the remote client.
* <p>
- * Commands should invoke this at most once. Once invoked, the command may
- * lose access to request based resources as any callbacks previously
- * registered with {@link RequestCleanup} will fire.
+ * Commands should invoke this at most once.
*
- * @param rc
- * exit code for the remote client.
+ * @param rc exit code for the remote client.
*/
protected void onExit(final int rc) {
exit.onExit(rc);
- // if (cleanup != null) {
- // cleanup.run();
- // }
}
private int handleError(final Throwable e) {
@@ -346,16 +340,14 @@ public abstract class BaseCommand implements Command, SessionAware {
} else {
final StringBuilder m = new StringBuilder();
m.append("Internal server error");
- // if (userProvider.get().isIdentifiedUser()) {
- // final IdentifiedUser u = (IdentifiedUser) userProvider.get();
- // m.append(" (user ");
- // m.append(u.getAccount().getUserName());
- // m.append(" account ");
- // m.append(u.getAccountId());
- // m.append(")");
- // }
- // m.append(" during ");
- // m.append(contextProvider.get().getCommandLine());
+ String user = ctx.getClient().getUsername();
+ if (user != null) {
+ m.append(" (user ");
+ m.append(user);
+ m.append(")");
+ }
+ m.append(" during ");
+ m.append(ctx.getCommandLine());
log.error(m.toString(), e);
}