sb.append(" ");
    private void printStatus(String path, SVNStatus status, PrintStream out) {        if (getCommandLine().hasArgument(SVNArgument.QUIET) && (!status.isManaged() || status.getContentsStatus() == SVNStatus.EXTERNAL)) {            return;        }        boolean remoteMode = getCommandLine().hasArgument(SVNArgument.SHOW_UPDATES);        StringBuffer sb = new StringBuffer();        appendStatus(status.getContentsStatus(), sb);        appendStatus(status.getPropertiesStatus(), sb);        sb.append(" ");        if (status.isAddedWithHistory()) {            sb.append("+");        } else {            sb.append(" ");        }        if (status.isSwitched()) {            sb.append("S");        }        sb.append(" ");        boolean detailed = getCommandLine().hasArgument(SVNArgument.SHOW_UPDATES) || getCommandLine().hasArgument(SVNArgument.VERBOSE);        boolean displayLastCommited = getCommandLine().hasArgument(SVNArgument.VERBOSE);        String lockStatus = " ";        if (remoteMode) {            if (status.getRemoteLockToken() != null) {                if (status.getLock() != null) {                    if (status.getRemoteLockToken().equals(status.getLock().getID())) {                        lockStatus = "K";                    } else {                        lockStatus = "T";                    }                                    } else {                    lockStatus = "O";                }            } else if (status.getLock() != null){                lockStatus = "B";            }        } else if (status.getLock() != null) {            lockStatus = "K";        }                if (!detailed) {            sb.append(lockStatus);            if (remoteMode) {                if (status.getRepositoryContentsStatus() != SVNStatus.NOT_MODIFIED ||                         status.getRepositoryPropertiesStatus() != SVNStatus.NOT_MODIFIED) {                    sb.append('*');                } else {                    sb.append(' ');                }            }            sb.append(" ");        } else {            char remote = ' ';            if (status.getRepositoryContentsStatus() != SVNStatus.NOT_MODIFIED ||                     status.getRepositoryPropertiesStatus() != SVNStatus.NOT_MODIFIED) {                remote = '*';            }            sb.append(lockStatus);            sb.append(" ");            sb.append(remote);                        String wcRevision = "";            if (!status.isManaged()) {                wcRevision = "";            } else if (status.getWorkingCopyRevision() < 0 && remote != '*') {                wcRevision = " ? ";            } else if (status.isAddedWithHistory()) {                wcRevision = "-";            } else if (status.getWorkingCopyRevision() >= 0) {                wcRevision = status.getWorkingCopyRevision() + "";            }            if (status.isManaged() && status.getContentsStatus() == SVNStatus.EXTERNAL) {                wcRevision = "";            }                        wcRevision = formatString(wcRevision, 6, false);            sb.append("   ");            sb.append(wcRevision);            if (displayLastCommited) {                String commitedRevsion;                if (status.isManaged() && status.getRevision() >= 0) {                    commitedRevsion = status.getRevision() + "";                } else if (status.isManaged() && remote != '*') {                    commitedRevsion = " ? ";                } else {                    commitedRevsion = "";                }                if (status.isManaged() && status.getContentsStatus() == SVNStatus.EXTERNAL) {                    commitedRevsion = "";                }                commitedRevsion = formatString(commitedRevsion, 6, false);                sb.append("   ");                sb.append(commitedRevsion);                String author;                 if (status.isManaged() && status.getAuthor() != null) {                    author = status.getAuthor();                } else if ((status.isManaged() && remote != '*') || status.getAuthor() == null) {                    author = " ? ";                                    } else {                    author = "";                }                author = formatString(author.trim(), 12, true);                sb.append(" ");                sb.append(author);                sb.append(" ");            } else {                sb.append("   ");                            }        }        sb.append(path);        if (out != null) {            out.println(sb.toString());        }        DebugLog.log(sb.toString());    }