1819202122232425262728
this.expr = expr; } public Comparator instantiate(Node node, final ExprContext context) { return new Comparator() { public int compare(Object o1, Object o2) { return cmp.compare(getKey(o1), getKey(o2)); } private String getKey(Object obj) { try {
840841842843844845846847848849850
if (node == null) { break; } if (XSL_SORT.equals(node.getName())) { Locale locale = Lang.getLocale(node.getAttributeValue(LANG)); Comparator cmp; String dataType = node.getAttributeValue(DATA_TYPE); if ("number".equals(dataType)) { cmp = new NumberComparator(); } else { int caseOrder = 0;