if (returnValue instanceof Collection) {
final Iterator keys = ((Collection) returnValue).iterator();
final Vector<ProxyInfo> proxies = new Vector<ProxyInfo>();
while (keys.hasNext()) {
final Object primaryKey = keys.next();
proxies.addElement(new ProxyInfo(beanContext, primaryKey));
}
returnValue = proxies;
} else if (returnValue instanceof Enumeration) {
final Enumeration keys = (Enumeration) returnValue;
final Vector<ProxyInfo> proxies = new Vector<ProxyInfo>();
while (keys.hasMoreElements()) {
final Object primaryKey = keys.nextElement();
proxies.addElement(new ProxyInfo(beanContext, primaryKey));
}
returnValue = new ArrayEnumeration(proxies);
} else {
returnValue = new ProxyInfo(beanContext, returnValue);
}
return returnValue;
}