Skip to content
This repository was archived by the owner on Sep 17, 2025. It is now read-only.

Commit ec4806c

Browse files
author
Eduard Ablekimov
committed
Make project build, refactoring
1 parent 1625e84 commit ec4806c

5 files changed

Lines changed: 54 additions & 50 deletions

File tree

app/src/main/java/com/ackee/versionupdatehandler/setup/MainActivity.kt

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,12 @@ class MainActivity : AppCompatActivity() {
4646
button {
4747
text = "Customized dialog"
4848
onClick {
49-
getDefaultStatusResolver().checkVersionStatusAndOpenDialog(8, supportFragmentManager, DialogSettings.Builder()
50-
.title("My custom title")
51-
.messageRes(R.string.update_dialog_message)
52-
.positiveButton("Yaay")
53-
.negativeButton("Never")
54-
.build()
55-
)
49+
getDefaultStatusResolver().checkVersionStatusAndOpenDialog(8, supportFragmentManager, DialogSettings(
50+
title = "My custom title",
51+
messageRes = R.string.update_dialog_message,
52+
positiveButton = "Yaay",
53+
negativeButton = "Never"
54+
))
5655
}
5756
}.lparams(width = matchParent) {
5857
bottomMargin = dip(16)
@@ -79,10 +78,10 @@ class MainActivity : AppCompatActivity() {
7978
getDefaultStatusResolver().checkVersionStatusAndOpenDialog(version, supportFragmentManager)
8079
}
8180

82-
private fun getDefaultStatusResolver(minimalVersion: Int = 10, currentVersion: Int = 15): VersionStatusResolver {
81+
private fun getDefaultStatusResolver(minimalVersion: Long = 10, currentVersion: Long = 15): VersionStatusResolver {
8382
return VersionStatusResolver(object : VersionFetcher {
8483
override suspend fun fetch(): VersionsConfiguration {
85-
return BasicVersionsConfiguration(10, 15)
84+
return BasicVersionsConfiguration(minimalVersion, currentVersion)
8685
}
8786
})
8887
}

rest-fetcher/src/main/java/com/ackee/versionupdatehandler/RestVersionFetcher.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import com.google.gson.FieldNamingPolicy
88
import com.google.gson.GsonBuilder
99
import com.google.gson.JsonObject
1010
import okhttp3.OkHttpClient
11-
import okhttp3.logging.HttpLoggingInterceptor
1211
import retrofit2.Retrofit
1312
import retrofit2.converter.gson.GsonConverterFactory
1413
import retrofit2.http.GET

status-resolver/src/main/java/com/ackee/versioupdatehandler/UpdateDialog.kt

Lines changed: 36 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -48,24 +48,33 @@ class UpdateDialog : DialogFragment() {
4848
return builder.create()
4949
}
5050

51-
private fun setupNegativeButton(settings: DialogSettings, builder: AlertDialog.Builder,
52-
isForceUpdate: Boolean) {
53-
var negButton: String? = "Cancel"
54-
if (settings.negativeButton != null) {
55-
negButton = settings.negativeButton
51+
private fun setupTitle(settings: DialogSettings, builder: AlertDialog.Builder) {
52+
var title: String? = "Update app"
53+
if (settings.title != null) {
54+
title = settings.title
5655
}
57-
if (settings.negativeButtonRes > 0) {
58-
negButton = getString(settings.negativeButtonRes)
56+
if (settings.titleRes > 0) {
57+
title = getString(settings.titleRes)
5958
}
60-
builder.setNegativeButton(negButton) { _, _ ->
61-
if (isForceUpdate) {
62-
requireActivity().moveTaskToBack(true)
63-
}
59+
builder.setTitle(title)
60+
}
61+
62+
private fun setupMessage(settings: DialogSettings, builder: AlertDialog.Builder) {
63+
var message: String? = "Your application is outdated. Please update to the newest version"
64+
if (settings.message != null) {
65+
message = settings.message
66+
}
67+
if (settings.messageRes > 0) {
68+
message = getString(settings.messageRes)
6469
}
70+
builder.setMessage(message)
6571
}
6672

67-
private fun setupPositiveButton(settings: DialogSettings, builder: AlertDialog.Builder,
68-
isForceUpdate: Boolean) {
73+
private fun setupPositiveButton(
74+
settings: DialogSettings,
75+
builder: AlertDialog.Builder,
76+
isForceUpdate: Boolean
77+
) {
6978
var posButton: String? = "Update"
7079
if (settings.positiveButton != null) {
7180
posButton = settings.positiveButton
@@ -83,26 +92,23 @@ class UpdateDialog : DialogFragment() {
8392
}
8493
}
8594

86-
private fun setupMessage(settings: DialogSettings, builder: AlertDialog.Builder) {
87-
var message: String? = "Your application is outdated. Please update to the newest version"
88-
if (settings.message != null) {
89-
message = settings.message
90-
}
91-
if (settings.messageRes > 0) {
92-
message = getString(settings.messageRes)
95+
private fun setupNegativeButton(
96+
settings: DialogSettings,
97+
builder: AlertDialog.Builder,
98+
isForceUpdate: Boolean
99+
) {
100+
var negButton: String? = "Cancel"
101+
if (settings.negativeButton != null) {
102+
negButton = settings.negativeButton
93103
}
94-
builder.setMessage(message)
95-
}
96-
97-
private fun setupTitle(settings: DialogSettings, builder: AlertDialog.Builder) {
98-
var title: String? = "Update app"
99-
if (settings.title != null) {
100-
title = settings.title
104+
if (settings.negativeButtonRes > 0) {
105+
negButton = getString(settings.negativeButtonRes)
101106
}
102-
if (settings.titleRes > 0) {
103-
title = getString(settings.titleRes)
107+
builder.setNegativeButton(negButton) { _, _ ->
108+
if (isForceUpdate) {
109+
requireActivity().moveTaskToBack(true)
110+
}
104111
}
105-
builder.setTitle(title)
106112
}
107113

108114
/**

status-resolver/src/main/java/com/ackee/versioupdatehandler/VersionStatusResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ class VersionStatusResolver(private val fetcher: VersionFetcher) {
3232
suspend fun checkVersionStatusAndOpenDialog(
3333
version: Int,
3434
fragmentManager: FragmentManager,
35-
settings: DialogSettings = DialogSettings.Builder().build()
35+
settings: DialogSettings = DialogSettings()
3636
) {
3737
val versionStatus = checkVersionStatus(version)
3838
if (versionStatus != VersionStatus.UP_TO_DATE) {

status-resolver/src/main/java/com/ackee/versioupdatehandler/model/DialogSettings.kt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ import kotlinx.android.parcel.Parcelize
88
*/
99
@Parcelize
1010
class DialogSettings(
11-
val packageName: String?,
12-
val title: String?,
13-
val titleRes: Int,
14-
val message: String?,
15-
val messageRes: Int,
16-
val positiveButton: String?,
17-
val positiveButtonRes: Int,
18-
val negativeButton: String?,
19-
val negativeButtonRes: Int
11+
val packageName: String? = null,
12+
val title: String? = null,
13+
val titleRes: Int = -1,
14+
val message: String? = null,
15+
val messageRes: Int = -1,
16+
val positiveButton: String? = null,
17+
val positiveButtonRes: Int = -1,
18+
val negativeButton: String? = null,
19+
val negativeButtonRes: Int = -1
2020
) : Parcelable

0 commit comments

Comments
 (0)