handleEvent(SVNEventFactory.createLockEvent(wcAccess, wcAccess.getTargetName(), SVNEventAction.UNLOCK_FAILED, null, "unlock failed"), ISVNEventHandler.UNKNOWN); } else {
handleEvent(SVNEventFactory.createLockEvent(wcAccess, wcAccess.getTargetName(), SVNEventAction.UNLOCK_FAILED, null, error.getMessage()), ISVNEventHandler.UNKNOWN); } if (lock != null) {
            public void handleUnlock(String path, SVNLock lock, SVNException error) throws SVNException {                SVNURL fullURL = rootURL.appendPath(path, false);                LockInfo lockInfo = (LockInfo) entriesMap.get(fullURL);                SVNWCAccess wcAccess = createWCAccess(lockInfo.myFile);                if (error != null) {                    handleEvent(SVNEventFactory.createLockEvent(wcAccess, wcAccess.getTargetName(), SVNEventAction.UNLOCK_FAILED, null, "unlock failed"),                             ISVNEventHandler.UNKNOWN);                } else {                    try {                        wcAccess.open(true, false);                        SVNEntry entry = wcAccess.getAnchor().getEntries().getEntry(                                wcAccess.getTargetName(), true);                        entry.setLockToken(null);                        entry.setLockComment(null);                        entry.setLockOwner(null);                        entry.setLockCreationDate(null);                        wcAccess.getAnchor().getEntries().save(true);                        wcAccess.getAnchor().getEntries().close();                        if (wcAccess.getAnchor().getProperties(entry.getName(), false).getPropertyValue(SVNProperty.NEEDS_LOCK) != null) {                            SVNFileUtil.setReadonly(wcAccess.getAnchor().getFile(entry.getName()), true);                        }                        handleEvent(SVNEventFactory.createLockEvent(wcAccess, wcAccess.getTargetName(), SVNEventAction.UNLOCKED, lock, null),                                ISVNEventHandler.UNKNOWN);                    } finally {                        wcAccess.close(true);                    }                }            }