if (adminArea == null && !myAdminAreas.containsKey(path)) {
if (adminArea == null) {
    public SVNAdminArea retrieve(File path) throws SVNException {        SVNAdminArea adminArea = getAdminArea(path);        if (adminArea == null && !myAdminAreas.containsKey(path)) {            SVNEntry subEntry = null;            try {                SVNAdminArea dirAdminArea = getAdminArea(path.getParentFile());                if (dirAdminArea != null) {                    subEntry = dirAdminArea.getEntry(path.getName(), true);                }            } catch (SVNException svne) {                subEntry = null;            }            SVNFileType type = SVNFileType.getType(path);            if (subEntry != null) {                if (subEntry.getKind() == SVNNodeKind.DIR && type == SVNFileType.FILE) {                    SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Expected ''{0}'' to be a directory but found a file", path);                    SVNErrorManager.error(err);                } else if (subEntry.getKind() == SVNNodeKind.FILE && type == SVNFileType.DIRECTORY) {                    SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Expected ''{0}'' to be a file but found a directory", path);                    SVNErrorManager.error(err);                }            }            File adminDir = new File(path, SVNFileUtil.getAdminDirectoryName());            SVNFileType wcType = SVNFileType.getType(adminDir);                        if (type == SVNFileType.NONE) {                SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Directory ''{0}'' is missing", path);                SVNErrorManager.error(err);            } else if (type == SVNFileType.DIRECTORY && wcType == SVNFileType.NONE) {                SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Directory ''{0}'' containing working copy admin area is missing", adminDir);                SVNErrorManager.error(err);            } else if (type == SVNFileType.DIRECTORY && wcType == SVNFileType.DIRECTORY) {                SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Unable to lock ''{0}''", path);                SVNErrorManager.error(err);            }            SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.WC_NOT_LOCKED, "Working copy ''{0}'' is not locked", path);            SVNErrorManager.error(err);        }        return adminArea;    }