+ CollectionSortFilter sortFilter = new CollectionSortFilter();
+ sortFilter.addComparator(Artist.class, new Comparator<Artist>() {
+
+ @Override
+ public int compare(Artist leftArtist, Artist rightArtist) {
+ return leftArtist.name().compareToIgnoreCase(rightArtist.name());
+ }
+
+ });
+ sortFilter.addComparator(Track.class, new Comparator<Track>() {
+
+ @Override
+ public int compare(Track leftTrack, Track rightTrack) {
+ return leftTrack.name().compareToIgnoreCase(rightTrack.name());
+ }
+
+ });
+ sortFilter.addComparator(Style.class, new Comparator<Style>() {
+
+ @Override
+ public int compare(Style leftStyle, Style rightStyle) {
+ return leftStyle.name().compareToIgnoreCase(rightStyle.name());
+ }
+
+ });
+ templateContextFactory.addFilter("sort", sortFilter);