mirror of
https://github.com/HMCore/Orbot.git
synced 2025-12-12 13:56:18 +00:00
54 lines
1.5 KiB
Kotlin
54 lines
1.5 KiB
Kotlin
@file:JvmName("DataIO")
|
|
package de.wulkanat
|
|
|
|
import de.wulkanat.extensions.ensureExists
|
|
import kotlinx.serialization.Serializable
|
|
import kotlinx.serialization.json.Json
|
|
import kotlinx.serialization.json.JsonConfiguration
|
|
import kotlinx.serialization.list
|
|
import java.io.File
|
|
|
|
@Serializable
|
|
data class DiscordChannel(
|
|
val id: Long,
|
|
var mentionedRole: String? = null,
|
|
var autoPublish: Boolean = false,
|
|
var message: CustomMessage? = null
|
|
)
|
|
|
|
@Serializable
|
|
data class ServiceChannel(
|
|
val id: Long
|
|
)
|
|
|
|
@Serializable
|
|
data class CustomMessage(
|
|
var message: String,
|
|
var pushAnnouncement: Boolean = false
|
|
)
|
|
|
|
@Serializable
|
|
data class AdminFile(
|
|
val adminId: Long = 12345,
|
|
val token: String = "12345",
|
|
val updateMs: Long = 30000,
|
|
val watchingMessage: String = "for new Blogposts",
|
|
val offlineMessage: String = "CONNECTION FAILED",
|
|
var twitterApi: TwitterApi? = TwitterApi()
|
|
)
|
|
|
|
@Serializable
|
|
data class TwitterApi(
|
|
val accessToken: String = "accessTokenHere",
|
|
val accessTokenSecret: String = "accessTokenSecretHere",
|
|
val apiKey: String = "apiKeyHere",
|
|
val apiKeySecret: String = "Api Key secret here"
|
|
)
|
|
|
|
val json = Json(JsonConfiguration.Stable)
|
|
|
|
val SERVERS_FILE = File("servers.json").ensureExists(json.stringify(DiscordChannel.serializer().list, listOf()))
|
|
val SERVICE_CHANNELS_FILE =
|
|
File("service_channels.json").ensureExists(json.stringify(ServiceChannel.serializer().list, listOf()))
|
|
val ADMIN_FILE = File("admin.json").ensureExists(json.stringify(AdminFile.serializer(), AdminFile()))
|