compareTo method
Implementation
@override
int compareTo(NsgDataItem a, NsgDataItem b) {
var valueA = a.getFieldValue(name) as List;
var valueB = b.getFieldValue(name) as List;
if (valueA.length != valueB.length) return valueA.length.compareTo(valueB.length);
for (var i = 0; i < valueA.length; i++) {
if (valueA[i] is NsgDataItem) {
for (var fieldName in valueA[i].fieldList.fields.keys) {
var field = valueA[i].fieldList.fields[fieldName];
var result = (field!.compareTo(valueA[i], valueB[i]) != 0);
if (result) return -1;
}
} else {
if (valueA[i] != valueB[i]) {
return -1;
}
}
}
return 0;
}