for (Iterator<FSEntry> i = entry.getDirectory().iterator(); i.hasNext();) {
for (Iterator<? extends FSEntry> i = entry.getDirectory().iterator(); i.hasNext();) {
    public String[] list(String directory) throws IOException {        final FSEntry entry = getEntry(directory);        if (entry == null) {            throw new FileNotFoundException(directory);        }        if (!entry.isDirectory()) {            throw new IOException("Cannot list on non-directories " + directory);        }        final ArrayList<String> list = new ArrayList<String>();        for (Iterator<FSEntry> i = entry.getDirectory().iterator(); i.hasNext();) {            final FSEntry child = i.next();            final String name = child.getName();            list.add(name);        }        return list.toArray(new String[list.size()]);    }