aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/services
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2019-08-31 15:34:17 +0200
committerChristian Schneppe <christian@pix-art.de>2019-08-31 15:34:17 +0200
commit240addee71f05e091f462a48dc9a590b070ccb61 (patch)
tree3f38c0ffd9c6b3fffcbdc6fa9a3725419f855ae9 /src/main/java/de/pixart/messenger/services
parentca21a38cb691aff03fb6a376cbd22e91f3c02ce1 (diff)
refactored filename and extension parsing
Diffstat (limited to 'src/main/java/de/pixart/messenger/services')
-rw-r--r--src/main/java/de/pixart/messenger/services/AbstractConnectionManager.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/services/AbstractConnectionManager.java b/src/main/java/de/pixart/messenger/services/AbstractConnectionManager.java
index 3399b7861..47c4c9171 100644
--- a/src/main/java/de/pixart/messenger/services/AbstractConnectionManager.java
+++ b/src/main/java/de/pixart/messenger/services/AbstractConnectionManager.java
@@ -138,4 +138,23 @@ public class AbstractConnectionManager {
PowerManager powerManager = (PowerManager) mXmppConnectionService.getSystemService(Context.POWER_SERVICE);
return powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, name);
}
+
+ public static class Extension {
+ public final String main;
+ public final String secondary;
+
+ private Extension(String main, String secondary) {
+ this.main = main;
+ this.secondary = secondary;
+ }
+
+ public static Extension of(String path) {
+ final int pos = path.lastIndexOf('/');
+ final String filename = path.substring(pos + 1).toLowerCase();
+ final String[] parts = filename.split("\\.");
+ final String main = parts.length >= 2 ? parts[parts.length - 1] : null;
+ final String secondary = parts.length >= 3 ? parts[parts.length - 2] : null;
+ return new Extension(main, secondary);
+ }
+ }
}