diff options
Diffstat (limited to 'taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt')
-rw-r--r-- | taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt b/taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt index ba6ee1c..b46f306 100644 --- a/taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt +++ b/taler-kotlin-common/src/main/java/net/taler/common/AndroidUtils.kt @@ -112,3 +112,12 @@ fun Long.toShortDate(context: Context): CharSequence { val flags = FORMAT_SHOW_DATE or FORMAT_SHOW_YEAR or FORMAT_ABBREV_ALL return formatDateTime(context, this, flags) } + +fun Version.getIncompatibleStringOrNull(context: Context, otherVersion: String): String? { + val other = Version.parse(otherVersion) ?: return context.getString(R.string.version_invalid) + val match = compare(other) ?: return context.getString(R.string.version_invalid) + if (match.compatible) return null + if (match.currentCmp < 0) return context.getString(R.string.version_too_old) + if (match.currentCmp > 0) return context.getString(R.string.version_too_new) + throw AssertionError("$this == $other") +} |