summaryrefslogtreecommitdiff
path: root/android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java')
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java b/android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java
index bb8ac0e99b8c..eac2ec1d9123 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/ServersManager.java
@@ -22,6 +22,13 @@ import android.content.Context;
import org.libreoffice.impressremote.util.Preferences;
class ServersManager implements Comparator<Server> {
+ private static final class CompareResult {
+ private CompareResult() {
+ }
+
+ public static final int EQUAL = 0;
+ }
+
private final ServersFinder mBluetoothServersFinder;
private final ServersFinder mTcpServersFinder;
@@ -94,6 +101,25 @@ class ServersManager implements Comparator<Server> {
@Override
public int compare(Server aFirstServer, Server aSecondServer) {
+ int aServersTypesComparison = compareServersTypes(aFirstServer, aSecondServer);
+ int aServersNamesComparison = compareServersNames(aFirstServer, aSecondServer);
+
+ if (aServersTypesComparison != CompareResult.EQUAL) {
+ return aServersTypesComparison;
+ }
+ else {
+ return aServersNamesComparison;
+ }
+ }
+
+ private int compareServersTypes(Server aFirstServer, Server aSecondServer) {
+ Server.Type aFirstServerType = aFirstServer.getType();
+ Server.Type aSecondServerType = aSecondServer.getType();
+
+ return aFirstServerType.compareTo(aSecondServerType);
+ }
+
+ private int compareServersNames(Server aFirstServer, Server aSecondServer) {
String aFirstServerName = aFirstServer.getName();
String aSecondServerName = aSecondServer.getName();