1 10 11 package org.mmbase.applications.media.filters; 12 13 import org.mmbase.applications.media.urlcomposers.URLComposer; 14 import java.util.*; 15 import org.mmbase.util.xml.DocumentReader; 16 import org.w3c.dom.Element ; 17 18 24 public class ChainSorter extends Sorter { 25 26 private List comparators; 27 public ChainSorter() { 28 comparators = new ArrayList(); 29 } 30 33 public void clear() { 34 comparators.clear(); 35 } 36 39 public void add(Sorter ri) { 40 comparators.add(ri); 41 } 42 43 public int size() { 44 return comparators.size(); 45 } 46 47 50 public void configure(DocumentReader reader, Element e) { 51 Iterator i = comparators.iterator(); 52 while (i.hasNext()) { 53 Sorter ri = (Sorter) i.next(); 54 ri.configure(reader, e); 55 } 56 } 57 58 public int compareURLComposer(URLComposer o1, URLComposer o2) { 59 Iterator i = comparators.iterator(); 60 while (i.hasNext()) { 61 int comp = ((Sorter) i.next()).compare(o1, o2); 62 if (comp != 0) return comp; 63 } 64 return 0; 65 } 66 } 67 68 | Popular Tags |