url = getCanonicalURL(url); if (url == null) { throw new SVNException(url + ": not valid URL"); } try { openConnection(); StringBuffer request = DAVEditorHandler.generateEditorRequest(myConnection, null, getLocation().toString(), revision, target, url, recursive, ignoreAncestry, false, true, reporter); DAVEditorHandler handler = new DAVEditorHandler(editor, true);  DAVBaselineInfo info = DAVUtil.getBaselineInfo(myConnection, getLocation().getPath(), revision, false, false, null); String path = PathUtil.append(info.baselineBase, info.baselinePath); DAVResponse response = DAVUtil.getResourceProperties(myConnection, path, null, DAVElement.STARTING_PROPERTIES, false); path = (String) response.getPropertyValue(DAVElement.VERSION_CONTROLLED_CONFIGURATION);  myConnection.doReport(path, request, handler); } finally { closeConnection(); }
diff(url, revision, revision, target, ignoreAncestry, recursive, reporter, editor);
    public void diff(String url, long revision, String target, boolean ignoreAncestry, boolean recursive, ISVNReporterBaton reporter, ISVNEditor editor) throws SVNException {        url = getCanonicalURL(url);        if (url == null) {            throw new SVNException(url + ": not valid URL");        }        try {            openConnection();            StringBuffer request = DAVEditorHandler.generateEditorRequest(myConnection, null, getLocation().toString(), revision, target, url, recursive, ignoreAncestry, false, true, reporter);            DAVEditorHandler handler = new DAVEditorHandler(editor, true);            DAVBaselineInfo info = DAVUtil.getBaselineInfo(myConnection, getLocation().getPath(), revision, false, false, null);            String path = PathUtil.append(info.baselineBase, info.baselinePath);            DAVResponse response = DAVUtil.getResourceProperties(myConnection, path, null, DAVElement.STARTING_PROPERTIES, false);            path = (String) response.getPropertyValue(DAVElement.VERSION_CONTROLLED_CONFIGURATION);            myConnection.doReport(path, request, handler);        } finally {            closeConnection();        }    }