Skip to content

Commit 3970297

Browse files
committed
Refactor
1 parent 94aec5c commit 3970297

7 files changed

Lines changed: 64 additions & 67 deletions

File tree

src/main/kotlin/failchat/ConfigKeys.kt

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,32 @@
11
package failchat
22

3-
@Suppress("ClassName")
43
object ConfigKeys {
54

65
//todo use properties from here
76

8-
object peka2tv {
7+
object Peka2tv {
98
const val enabled = "peka2tv.enabled"
109
const val channel = "peka2tv.channel"
1110
}
1211

13-
object goodgame {
12+
object Goodgame {
1413
const val enabled = "goodgame.enabled"
1514
const val channel = "goodgame.channel"
1615
}
1716

18-
object twitch {
17+
object Twitch {
1918
const val enabled = "twitch.enabled"
2019
const val channel = "twitch.channel"
20+
const val expiresAt = "twitch.bearer-token-expires-at"
21+
const val token = "twitch.bearer-token"
2122
}
2223

23-
object youtube {
24+
object Youtube {
2425
const val enabled = "youtube.enabled"
2526
const val channel = "youtube.channel"
2627
}
2728

28-
object nativeClient {
29+
object NativeClient {
2930
private const val prefix = "native-client"
3031
const val backgroundColor = "$prefix.background-color"
3132
const val coloredNicknames = "$prefix.colored-nicknames"
@@ -34,7 +35,7 @@ object ConfigKeys {
3435
const val showStatusMessages = "$prefix.show-status-messages"
3536
}
3637

37-
object externalClient {
38+
object ExternalClient {
3839
private const val prefix = "external-client"
3940
const val backgroundColor = "$prefix.background-color"
4041
const val coloredNicknames = "$prefix.colored-nicknames"

src/main/kotlin/failchat/ConfigUtils.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,4 @@ fun Configuration.resetEmoticonsUpdatedTime() {
1111
}
1212
}
1313

14-
fun getFailchatHomePath(): Path {
15-
return Paths.get(System.getProperty("user.home")).resolve(".failchat")
16-
}
14+
val failchatHomePath: Path = Paths.get(System.getProperty("user.home")).resolve(".failchat")

src/main/kotlin/failchat/Kodein.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ val kodein = DI.direct {
307307

308308
// Etc
309309
bind<Path>("workingDirectory") with singleton { Paths.get("") }
310-
bind<Path>("homeDirectory") with singleton { getFailchatHomePath() }
310+
bind<Path>("homeDirectory") with singleton { failchatHomePath }
311311
bind<Path>("failchatEmoticonsDirectory") with singleton { instance<Path>("homeDirectory").resolve("failchat-emoticons") }
312312
bind<Path>("emoticonCacheDirectory") with singleton { instance<Path>("workingDirectory").resolve("emoticons") }
313313
bind<Path>("emoticonDbFile") with singleton { instance<Path>("emoticonCacheDirectory").resolve("emoticons.db") }

src/main/kotlin/failchat/chat/ChatMessageSender.kt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -130,18 +130,18 @@ class ChatMessageSender(
130130
put("clickTransparency", config.getBoolean(ConfigKeys.clickTransparency))
131131
put("showClickTransparencyIcon", config.getBoolean(ConfigKeys.showClickTransparencyIcon))
132132
putObject("nativeClient").apply {
133-
put("backgroundColor", config.getString(ConfigKeys.nativeClient.backgroundColor))
134-
put("coloredNicknames", config.getBoolean(ConfigKeys.nativeClient.coloredNicknames))
135-
put("hideMessages", config.getBoolean(ConfigKeys.nativeClient.hideMessages))
136-
put("hideMessagesAfter", config.getInt(ConfigKeys.nativeClient.hideMessagesAfter))
137-
put("showStatusMessages", config.getBoolean(ConfigKeys.nativeClient.showStatusMessages))
133+
put("backgroundColor", config.getString(ConfigKeys.NativeClient.backgroundColor))
134+
put("coloredNicknames", config.getBoolean(ConfigKeys.NativeClient.coloredNicknames))
135+
put("hideMessages", config.getBoolean(ConfigKeys.NativeClient.hideMessages))
136+
put("hideMessagesAfter", config.getInt(ConfigKeys.NativeClient.hideMessagesAfter))
137+
put("showStatusMessages", config.getBoolean(ConfigKeys.NativeClient.showStatusMessages))
138138
}
139139
putObject("externalClient").apply {
140-
put("backgroundColor", config.getString(ConfigKeys.externalClient.backgroundColor))
141-
put("coloredNicknames", config.getBoolean(ConfigKeys.externalClient.coloredNicknames))
142-
put("hideMessages", config.getBoolean(ConfigKeys.externalClient.hideMessages))
143-
put("hideMessagesAfter", config.getInt(ConfigKeys.externalClient.hideMessagesAfter))
144-
put("showStatusMessages", config.getBoolean(ConfigKeys.externalClient.showStatusMessages))
140+
put("backgroundColor", config.getString(ConfigKeys.ExternalClient.backgroundColor))
141+
put("coloredNicknames", config.getBoolean(ConfigKeys.ExternalClient.coloredNicknames))
142+
put("hideMessages", config.getBoolean(ConfigKeys.ExternalClient.hideMessages))
143+
put("hideMessagesAfter", config.getInt(ConfigKeys.ExternalClient.hideMessagesAfter))
144+
put("showStatusMessages", config.getBoolean(ConfigKeys.ExternalClient.showStatusMessages))
145145
}
146146
putObject("enabledOrigins").apply {
147147
COUNTABLE_ORIGINS.forEach { origin ->

src/main/kotlin/failchat/gui/SettingsFrame.kt

Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -217,24 +217,24 @@ class SettingsFrame(
217217
}
218218

219219
fun updateSettingsValues() {
220-
peka2tvChannel.text = config.getString(ConfigKeys.peka2tv.channel)
221-
goodgameChannel.text = config.getString(ConfigKeys.goodgame.channel)
222-
twitchChannel.text = config.getString(ConfigKeys.twitch.channel)
223-
youtubeChannel.text = config.getString(ConfigKeys.youtube.channel)
220+
peka2tvChannel.text = config.getString(ConfigKeys.Peka2tv.channel)
221+
goodgameChannel.text = config.getString(ConfigKeys.Goodgame.channel)
222+
twitchChannel.text = config.getString(ConfigKeys.Twitch.channel)
223+
youtubeChannel.text = config.getString(ConfigKeys.Youtube.channel)
224224

225-
config.getBoolean(ConfigKeys.peka2tv.enabled).let {
225+
config.getBoolean(ConfigKeys.Peka2tv.enabled).let {
226226
peka2tvEnabled.isSelected = it
227227
peka2tvChannel.configureChannelField(it)
228228
}
229-
config.getBoolean(ConfigKeys.goodgame.enabled).let {
229+
config.getBoolean(ConfigKeys.Goodgame.enabled).let {
230230
goodgameEnabled.isSelected = it
231231
goodgameChannel.configureChannelField(it)
232232
}
233-
config.getBoolean(ConfigKeys.twitch.enabled).let {
233+
config.getBoolean(ConfigKeys.Twitch.enabled).let {
234234
twitchEnabled.isSelected = it
235235
twitchChannel.configureChannelField(it)
236236
}
237-
config.getBoolean(ConfigKeys.youtube.enabled).let {
237+
config.getBoolean(ConfigKeys.Youtube.enabled).let {
238238
youtubeEnabled.isSelected = it
239239
youtubeChannel.configureChannelField(it)
240240
}
@@ -256,17 +256,17 @@ class SettingsFrame(
256256
zoomPercent.text = config.getInt(ConfigKeys.zoomPercent).toString()
257257
deletedMessagePlaceholder.text = config.getString(ConfigKeys.deletedMessagePlaceholder)
258258

259-
nativeBgColorPicker.value = Color.web(config.getString(ConfigKeys.nativeClient.backgroundColor))
260-
coloredNicknamesNative.isSelected = config.getBoolean(ConfigKeys.nativeClient.coloredNicknames)
261-
hideMessagesNative.isSelected = config.getBoolean(ConfigKeys.nativeClient.hideMessages)
262-
hideMessagesNativeAfter.text = config.getInt(ConfigKeys.nativeClient.hideMessagesAfter).toString()
263-
showStatusMessagesNative.isSelected = config.getBoolean(ConfigKeys.nativeClient.showStatusMessages)
259+
nativeBgColorPicker.value = Color.web(config.getString(ConfigKeys.NativeClient.backgroundColor))
260+
coloredNicknamesNative.isSelected = config.getBoolean(ConfigKeys.NativeClient.coloredNicknames)
261+
hideMessagesNative.isSelected = config.getBoolean(ConfigKeys.NativeClient.hideMessages)
262+
hideMessagesNativeAfter.text = config.getInt(ConfigKeys.NativeClient.hideMessagesAfter).toString()
263+
showStatusMessagesNative.isSelected = config.getBoolean(ConfigKeys.NativeClient.showStatusMessages)
264264

265-
externalBgColorPicker.value = Color.web(config.getString(ConfigKeys.externalClient.backgroundColor))
266-
coloredNicknamesExternal.isSelected = config.getBoolean(ConfigKeys.externalClient.coloredNicknames)
267-
hideMessagesExternal.isSelected = config.getBoolean(ConfigKeys.externalClient.hideMessages)
268-
hideMessagesExternalAfter.text = config.getInt(ConfigKeys.externalClient.hideMessagesAfter).toString()
269-
showStatusMessagesExternal.isSelected = config.getBoolean(ConfigKeys.externalClient.showStatusMessages)
265+
externalBgColorPicker.value = Color.web(config.getString(ConfigKeys.ExternalClient.backgroundColor))
266+
coloredNicknamesExternal.isSelected = config.getBoolean(ConfigKeys.ExternalClient.coloredNicknames)
267+
hideMessagesExternal.isSelected = config.getBoolean(ConfigKeys.ExternalClient.hideMessages)
268+
hideMessagesExternalAfter.text = config.getInt(ConfigKeys.ExternalClient.hideMessagesAfter).toString()
269+
showStatusMessagesExternal.isSelected = config.getBoolean(ConfigKeys.ExternalClient.showStatusMessages)
270270

271271
opacitySlider.value = config.getDouble(ConfigKeys.opacity)
272272

@@ -280,15 +280,15 @@ class SettingsFrame(
280280

281281
private fun saveSettingsValues() {
282282
//todo use loop for origins
283-
config.setProperty(ConfigKeys.peka2tv.channel, peka2tvChannel.text)
284-
config.setProperty(ConfigKeys.goodgame.channel, goodgameChannel.text)
285-
config.setProperty(ConfigKeys.twitch.channel, twitchChannel.text)
286-
config.setProperty(ConfigKeys.youtube.channel, youtubeChannel.text)
283+
config.setProperty(ConfigKeys.Peka2tv.channel, peka2tvChannel.text)
284+
config.setProperty(ConfigKeys.Goodgame.channel, goodgameChannel.text)
285+
config.setProperty(ConfigKeys.Twitch.channel, twitchChannel.text)
286+
config.setProperty(ConfigKeys.Youtube.channel, youtubeChannel.text)
287287

288-
config.setProperty(ConfigKeys.peka2tv.enabled, peka2tvEnabled.isSelected)
289-
config.setProperty(ConfigKeys.goodgame.enabled, goodgameEnabled.isSelected)
290-
config.setProperty(ConfigKeys.twitch.enabled, twitchEnabled.isSelected)
291-
config.setProperty(ConfigKeys.youtube.enabled, youtubeEnabled.isSelected)
288+
config.setProperty(ConfigKeys.Peka2tv.enabled, peka2tvEnabled.isSelected)
289+
config.setProperty(ConfigKeys.Goodgame.enabled, goodgameEnabled.isSelected)
290+
config.setProperty(ConfigKeys.Twitch.enabled, twitchEnabled.isSelected)
291+
config.setProperty(ConfigKeys.Youtube.enabled, youtubeEnabled.isSelected)
292292

293293
config.setProperty(ConfigKeys.skin, skin.value.name)
294294
config.setProperty(ConfigKeys.frame, frame.isSelected)
@@ -309,17 +309,17 @@ class SettingsFrame(
309309
config.setProperty(ConfigKeys.zoomPercent, parseZoomPercent(zoomPercent.text))
310310
config.setProperty(ConfigKeys.deletedMessagePlaceholder, deletedMessagePlaceholder.text)
311311

312-
config.setProperty(ConfigKeys.nativeClient.backgroundColor, nativeBgColorPicker.value.toHexFormat())
313-
config.setProperty(ConfigKeys.nativeClient.coloredNicknames, coloredNicknamesNative.isSelected)
314-
config.setProperty(ConfigKeys.nativeClient.hideMessages, hideMessagesNative.isSelected)
315-
config.setProperty(ConfigKeys.nativeClient.hideMessagesAfter, parseHideMessagesAfter(hideMessagesNativeAfter.text))
316-
config.setProperty(ConfigKeys.nativeClient.showStatusMessages, showStatusMessagesNative.isSelected)
317-
318-
config.setProperty(ConfigKeys.externalClient.backgroundColor, externalBgColorPicker.value.toHexFormat())
319-
config.setProperty(ConfigKeys.externalClient.coloredNicknames, coloredNicknamesExternal.isSelected)
320-
config.setProperty(ConfigKeys.externalClient.hideMessages, hideMessagesExternal.isSelected)
321-
config.setProperty(ConfigKeys.externalClient.hideMessagesAfter, parseHideMessagesAfter(hideMessagesExternalAfter.text))
322-
config.setProperty(ConfigKeys.externalClient.showStatusMessages, showStatusMessagesExternal.isSelected)
312+
config.setProperty(ConfigKeys.NativeClient.backgroundColor, nativeBgColorPicker.value.toHexFormat())
313+
config.setProperty(ConfigKeys.NativeClient.coloredNicknames, coloredNicknamesNative.isSelected)
314+
config.setProperty(ConfigKeys.NativeClient.hideMessages, hideMessagesNative.isSelected)
315+
config.setProperty(ConfigKeys.NativeClient.hideMessagesAfter, parseHideMessagesAfter(hideMessagesNativeAfter.text))
316+
config.setProperty(ConfigKeys.NativeClient.showStatusMessages, showStatusMessagesNative.isSelected)
317+
318+
config.setProperty(ConfigKeys.ExternalClient.backgroundColor, externalBgColorPicker.value.toHexFormat())
319+
config.setProperty(ConfigKeys.ExternalClient.coloredNicknames, coloredNicknamesExternal.isSelected)
320+
config.setProperty(ConfigKeys.ExternalClient.hideMessages, hideMessagesExternal.isSelected)
321+
config.setProperty(ConfigKeys.ExternalClient.hideMessagesAfter, parseHideMessagesAfter(hideMessagesExternalAfter.text))
322+
config.setProperty(ConfigKeys.ExternalClient.showStatusMessages, showStatusMessagesExternal.isSelected)
323323

324324
config.setProperty(ConfigKeys.ignore, ignoreList.text.split("\n").dropLastWhile { it.isEmpty() }.toTypedArray())
325325
}
Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package failchat.twitch
22

3+
import failchat.ConfigKeys
34
import mu.KLogging
45
import org.apache.commons.configuration2.Configuration
56
import java.time.Instant
@@ -8,13 +9,10 @@ class ConfigurationTokenContainer(
89
private val config: Configuration
910
) : HelixTokenContainer {
1011

11-
private companion object : KLogging() {
12-
const val expiresAtKey = "twitch.bearer-token-expires-at"
13-
const val tokenKey = "twitch.bearer-token"
14-
}
12+
private companion object : KLogging()
1513

1614
override fun getToken(): HelixApiToken? {
17-
val expiresAt = Instant.ofEpochMilli(config.getLong(expiresAtKey, 0))
15+
val expiresAt = Instant.ofEpochMilli(config.getLong(ConfigKeys.Twitch.expiresAt, 0))
1816
val now = Instant.now()
1917
if (now > expiresAt) {
2018
return null
@@ -24,8 +22,8 @@ class ConfigurationTokenContainer(
2422
}
2523

2624
override fun setToken(token: HelixApiToken) {
27-
config.setProperty(tokenKey, token.value)
28-
config.setProperty(expiresAtKey, token.ttl.toEpochMilli())
29-
logger.info("Helix token was saved to configuration at '$tokenKey'")
25+
config.setProperty(ConfigKeys.Twitch.token, token.value)
26+
config.setProperty(ConfigKeys.Twitch.expiresAt, token.ttl.toEpochMilli())
27+
logger.info("Helix token was saved to configuration")
3028
}
3129
}

src/test/kotlin/failchat/Shared.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,6 @@ val ktorClient = HttpClient(OkHttp) {
1818
}
1919

2020

21-
val userHomeConfig: Configuration by lazy { ConfigLoader(getFailchatHomePath()).load() }
21+
val userHomeConfig: Configuration by lazy { ConfigLoader(failchatHomePath).load() }
2222
val defaultConfig: Configuration by lazy { loadDefaultConfig() }
2323
val testObjectMapper: ObjectMapper = objectMapper()

0 commit comments

Comments
 (0)