if (Revision.BASE.equals(revision)) { ws.getFileContent(wsPath).getBaseFileContent(bos);
final ISVNEntryContent content = ws.getContent(wsPath); if (content == null || content.isDirectory()) { throw new ClientException("Can't find file " + path, "", 0); } if (Revision.BASE.equals(revision)) { content.asFile().getBaseFileContent(bos);
    public byte[] fileContent(String path, Revision revision) throws ClientException {        ByteArrayOutputStream bos = new ByteArrayOutputStream();        ISVNWorkspace ws = null;        String wsPath = null;        if (!isURL(path)) {            try {                ws = createWorkspace(path);                wsPath = SVNUtil.getWorkspacePath(ws, path);                if (Revision.BASE.equals(revision)) {                    ws.getFileContent(wsPath).getBaseFileContent(bos);                    return bos.toByteArray();                } else if (Revision.WORKING.equals(revision)) {                    ws.getFileContent(wsPath).getWorkingCopyContent(bos);                    return bos.toByteArray();                }                path = ws.getLocation(wsPath).toString();            } catch (SVNException e) {                throwException(e);            }        }        String repos = PathUtil.removeTail(path);        try {            SVNRepository repository = createRepository(repos);            long revNumber = getRevisionNumber(revision, repository, ws, wsPath);            repository.getFile(PathUtil.tail(path), revNumber, null, bos);        } catch (SVNException e) {            throwException(e);        }        return bos.toByteArray();    }