de.mediathekview.mlib.tool.GermanStringSorter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of MLib Show documentation
Show all versions of MLib Show documentation
A central library with tools and utils for the MediathekView Client and the MediathekView Server
The newest version!
/*
* MediathekView
* Copyright (C) 2008 W. Xaver
* W.Xaver[at]googlemail.com
* http://zdfmediathk.sourceforge.net/
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
package de.mediathekview.mlib.tool;
import java.text.Collator;
import java.util.Comparator;
import java.util.Locale;
public class GermanStringSorter implements Comparator {
private static Collator collator;
private static GermanStringSorter instance;
private GermanStringSorter() {
super();
}
public static GermanStringSorter getInstance() {
if (instance == null) {
instance = new GermanStringSorter();
collator = Collator.getInstance(Locale.GERMANY);
// ignore lower/upper case, but accept special characters in localised alphabetical order
collator.setStrength(Collator.SECONDARY);
}
return instance;
}
@Override
public int compare(String o1, String o2) {
if (o1 != null && o2 != null) {
if (collator != null) {
return collator.compare(o1, o2);
}
return o1.compareTo(o2);
}
return 0;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy