if (entry != null && !entry.isHidden()) {
if (entry != null) {
    private static void collectInfo(SVNDirectory dir, String name, boolean recursive, ISVNInfoHandler handler) throws SVNException {        SVNEntries entries = dir.getEntries();        SVNEntry entry = entries.getEntry(name, true);        try {            if (entry != null && !entry.isHidden()) {                if (entry.isFile()) {                    // child file                    File file = dir.getFile(name, false);                    handler.handleInfo(SVNInfo.createInfo(file, entry));                    return;                } else if (entry.isDirectory() && !"".equals(name)) {                    // child dir                	dir = dir.getChildDirectory(name);                	if (dir != null) {                		collectInfo(dir, "", recursive, handler);                	}                    return;                } else if ("".equals(name)) {                    // report root.                    handler.handleInfo(SVNInfo.createInfo(dir.getRoot(), entry));                }                              if (recursive) {                    for (Iterator ents = entries.entries(true); ents.hasNext();) {                        SVNEntry childEntry = (SVNEntry) ents.next();                        if ("".equals(childEntry.getName())) {                            continue;                        }                        if (childEntry.isDirectory()) {                            SVNDirectory childDir = dir.getChildDirectory(childEntry.getName());                            if (childDir != null) {                                collectInfo(childDir, "", recursive, handler);                            }                        } else if (childEntry.isFile()) {                            handler.handleInfo(SVNInfo.createInfo(dir.getFile(childEntry.getName(), false), childEntry));                        }                    }                }            }         } finally {            entries.close();        }            }