The function has a bug, it does not take Preference.getQuality() into account
and in result the last Preference is always returned.
public static <T extends Metadata> T getPreferredMetadata(
List<T> supported, List<Preference<T>> preferences) {
T result = null;
float maxQuality = 0;
...
result = pref.getMetadata();
maxQuality = pref.getQuality(); <-- missing line
...
Daniel
------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2627923