String newURL = PathUtil.encode(newLocation.toString());
String newURL = newLocation.toString();
    public void relocate(SVNRepositoryLocation newLocation, String path, boolean recursive) throws SVNException {        try {            ISVNEntry targetEntry = locateEntry(path);            if (targetEntry == null) {                throw new SVNException("could not find directory '" + path + "'");            }            if (!targetEntry.isDirectory()) {                throw new SVNException("could not relocate file '" + path + "' only directories could be switched");            }            String newURL = PathUtil.encode(newLocation.toString());            targetEntry.setPropertyValue(SVNProperty.URL, newURL);            for (Iterator children = targetEntry.asDirectory().childEntries(); children.hasNext();) {                ISVNEntry child = (ISVNEntry) children.next();                updateURL(child, newURL, recursive);            }            targetEntry.save();            if (targetEntry.equals(getRoot())) {                setLocation(newLocation);            }        } finally {            getRoot().dispose();        }    }