th.printStackTrace();
    public void report(ISVNReporter reporter) throws SVNException {        SVNEntries targetEntries = myWCAccess.getTarget().getEntries();        SVNEntries anchorEntries = myWCAccess.getAnchor().getEntries();        SVNEntry targetEntry = anchorEntries.getEntry(myWCAccess.getTargetName());                try {            if (targetEntry == null || targetEntry.isHidden() ||                     (targetEntry.isDirectory() && targetEntry.isScheduledForAddition())) {                long revision = anchorEntries.getEntry("").getRevision();                reporter.setPath("", null, revision, targetEntry != null ? targetEntry.isIncomplete() : true);                reporter.deletePath("");                reporter.finishReport();                return;            }            long revision = targetEntry.isFile() ? targetEntry.getRevision() :                 targetEntries.getEntry("").getRevision();            if (revision < 0) {                                revision = anchorEntries.getEntry("").getRevision();            }            reporter.setPath("", null, revision, targetEntry.isIncomplete());            boolean missing = !targetEntry.isScheduledForDeletion() &&                  !myWCAccess.getAnchor().getFile(myWCAccess.getTargetName(), false).exists();                        if (targetEntry.isDirectory()) {                if (missing) {                    reporter.deletePath("");                } else {                    reportEntries(reporter, myWCAccess.getTarget(), "", targetEntry.isIncomplete(), myIsRecursive);                }            } else if (targetEntry.isFile()){                if (missing) {                    restoreFile(myWCAccess.getAnchor(), targetEntry.getName());                }                // report either linked path or entry path                String url = targetEntry.getURL();                SVNEntry parentEntry = targetEntries.getEntry("");                String parentURL = parentEntry.getURL();                String expectedURL = PathUtil.append(parentURL, PathUtil.encode(targetEntry.getName()));                if (!expectedURL.equals(url)) {                    reporter.linkPath(SVNRepositoryLocation.parseURL(url), "", targetEntry.getLockToken(), targetEntry.getRevision(), false);                } else if (targetEntry.getRevision() != parentEntry.getRevision() || targetEntry.getLockToken() != null) {                    reporter.setPath("", targetEntry.getLockToken(), targetEntry.getRevision(), false);                }                        }            reporter.finishReport();        } catch (Throwable th) {            th.printStackTrace();            reporter.abortReport();            SVNErrorManager.error(0, th);        }    }