Add Yandex Disk API (Retrofit + OkHttp), per-vault repository with DB-backed OAuth token, YandexStorage/YandexStorageAccessor under app:/<uuid>, and a real YandexVault bootstrap (disk quota, list storages, create/remove). Expose vault and storage availability: vault is reachable after diskInfo; each storage combines vault reachability with local init readiness. Map 401 to YandexDiskAuthException and mark the vault unavailable. Add YandexAccountDao.getByVaultUuid for fresh tokens on each request. Co-authored-by: Cursor <cursoragent@cursor.com>
60 lines
1.4 KiB
Kotlin
60 lines
1.4 KiB
Kotlin
plugins {
|
|
alias(libs.plugins.android.library)
|
|
alias(libs.plugins.ksp)
|
|
}
|
|
|
|
android {
|
|
namespace = "com.github.nullptroma.wallenc.data"
|
|
compileSdk = 37
|
|
|
|
defaultConfig {
|
|
minSdk = 26
|
|
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
|
consumerProguardFiles("consumer-rules.pro")
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
isMinifyEnabled = false
|
|
proguardFiles(
|
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
|
"proguard-rules.pro"
|
|
)
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain(17)
|
|
}
|
|
|
|
dependencies {
|
|
// jackson
|
|
implementation(libs.jackson.module.kotlin)
|
|
implementation(libs.jackson.datatype.jsr310)
|
|
|
|
// Room
|
|
implementation(libs.room.ktx)
|
|
implementation(libs.room.runtime)
|
|
ksp(libs.room.compiler)
|
|
|
|
// Retrofit
|
|
implementation(libs.retrofit)
|
|
implementation(libs.retrofit.converter.scalars)
|
|
implementation(libs.retrofit.converter.jackson)
|
|
|
|
implementation("com.squareup.okhttp3:okhttp:4.12.0")
|
|
|
|
implementation(libs.androidx.core.ktx)
|
|
testImplementation(libs.junit)
|
|
androidTestImplementation(libs.androidx.junit)
|
|
androidTestImplementation(libs.androidx.espresso.core)
|
|
|
|
implementation(project(":domain"))
|
|
implementation(project(":vault-api"))
|
|
} |