} else { read("()))", null);
    public long getDir(String path, long revision, Map properties, ISVNDirEntryHandler handler) throws SVNException {        Long rev = getRevisionObject(revision);        // convert path to path relative to repos root.        try {            openConnection();            path = getRepositoryPath(path);            Object[] buffer = new Object[] { "get-dir", path, rev,                    Boolean.valueOf(properties != null),                    Boolean.valueOf(handler != null) };            write("(w(s(n)ww))", buffer);            authenticate();            buffer[1] = properties;            buffer = read("[(N(*P)", buffer);            revision = buffer[0] != null ? SVNReader.getLong(buffer, 0)                    : revision;            if (handler != null) {                buffer[0] = handler;                read("(*D)))", buffer);            }        } finally {            closeConnection();        }        return revision;    }