- В UserPrincipal.kt заменён star import java.util.* на явный java.util.UUID.
- В YandexOAuth2UserInfo.kt и VkOAuth2UserInfo.kt убрана аннотация @Suppress("UNCHECKED_CAST")
- В build.gradle.kts хардкод версии заменён на version catalog
- Из CustomOAuth2UserService.kt удалены комментарии на русском языке
31 lines
971 B
Kotlin
31 lines
971 B
Kotlin
package com.project.movienight.adapters.security
|
|
|
|
import com.project.movienight.application.ports.input.security.OAuth2UserInfo
|
|
|
|
class VkOAuth2UserInfo(
|
|
private val attributes: Map<String, Any>
|
|
) : OAuth2UserInfo {
|
|
|
|
override fun getProviderId(): String {
|
|
return (attributes["response"] as? List<*>)
|
|
?.firstOrNull()
|
|
?.let { it as? Map<*, *> }
|
|
?.get("id")
|
|
?.toString() ?: ""
|
|
}
|
|
|
|
override fun getEmail(): String = attributes["email"]?.toString() ?: ""
|
|
|
|
override fun getName(): String {
|
|
val response = attributes["response"] as? List<*>
|
|
val first = response?.firstOrNull() as? Map<*, *>
|
|
val firstName = first?.get("first_name")?.toString() ?: ""
|
|
val lastName = first?.get("last_name")?.toString() ?: ""
|
|
return "$firstName $lastName".trim()
|
|
}
|
|
|
|
override fun getProvider(): String = "vk"
|
|
|
|
override fun getAttributes(): Map<String, Any> = attributes
|
|
}
|