package org.argeo.util; import java.util.Dictionary; import java.util.Enumeration; import java.util.Iterator; /** * Access the keys of a {@link String}-keyed {@link Dictionary} (common throughout * the OSGi APIs) as an {@link Iterable} so that they are easily usable in * for-each loops. */ class DictionaryKeys implements Iterable { private final Dictionary dictionary; public DictionaryKeys(Dictionary dictionary) { this.dictionary = dictionary; } @Override public Iterator iterator() { return new KeyIterator(dictionary.keys()); } private static class KeyIterator implements Iterator { private final Enumeration keys; KeyIterator(Enumeration keys) { this.keys = keys; } @Override public boolean hasNext() { return keys.hasMoreElements(); } @Override public String next() { return keys.nextElement(); } } }