gradle/src/main/kotlin/com/lagradost/cloudstream3/gradle/CloudstreamExtension.kt

35 lines
1.1 KiB
Kotlin
Raw Normal View History

2022-08-04 11:30:09 +00:00
package com.lagradost.cloudstream3.gradle
2022-08-04 07:19:27 +00:00
import org.gradle.api.Project
import org.gradle.api.plugins.ExtensionContainer
import org.gradle.api.provider.Property
import javax.inject.Inject
abstract class CloudstreamExtension @Inject constructor(project: Project) {
val userCache = project.gradle.gradleUserHomeDir.resolve("caches").resolve("cloudstream")
2022-08-04 11:30:09 +00:00
var apkinfo: ApkInfo? = null
2022-08-04 07:52:23 +00:00
internal set
2022-08-04 09:06:07 +00:00
fun overrideUrl(url: String) {
2022-08-04 11:30:09 +00:00
apkinfo!!.url = url
2022-08-04 09:06:07 +00:00
}
2022-08-04 07:52:23 +00:00
internal var pluginClassName: String? = null
2022-08-04 07:19:27 +00:00
}
2022-08-04 11:30:09 +00:00
class ApkInfo(extension: CloudstreamExtension, release: String) {
2022-08-04 07:19:27 +00:00
val cache = extension.userCache.resolve("cloudstream")
2022-08-04 11:30:09 +00:00
var url = "https://github.com/recloudstream/cloudstream/releases/download/${release}/app-debug.apk"
2022-08-04 09:06:07 +00:00
val apkFile = cache.resolve("cloudstream.apk")
val jarFile = cache.resolve("cloudstream.jar")
2022-08-04 07:19:27 +00:00
}
fun ExtensionContainer.getCloudstream(): CloudstreamExtension {
return getByName("cloudstream") as CloudstreamExtension
2022-08-04 07:52:23 +00:00
}
fun ExtensionContainer.findCloudstream(): CloudstreamExtension? {
return findByName("cloudstream") as CloudstreamExtension?
2022-08-04 07:19:27 +00:00
}