in tiles-request-api/src/main/java/org/apache/tiles/request/collection/RemovableKeySet.java [78:93]
public boolean retainAll(Collection<?> c) {
Collection<String> realCollection = (Collection<String>) c;
boolean retValue = false;
Set<String> keysToRemove = new LinkedHashSet<String>();
for (Enumeration<String> keys = request.getKeys(); keys.hasMoreElements();) {
String key = keys.nextElement();
if (!realCollection.contains(key)) {
retValue = true;
keysToRemove.add(key);
}
}
for (String key : keysToRemove) {
request.removeValue(key);
}
return retValue;
}