mirror of
https://github.com/tcgdex/java-sdk.git
synced 2025-06-06 16:29:55 +00:00
58 lines
1.1 KiB
Kotlin
58 lines
1.1 KiB
Kotlin
package net.tcgdex.sdk.models
|
|
|
|
import net.tcgdex.sdk.Extension
|
|
import net.tcgdex.sdk.Utils
|
|
import net.tcgdex.sdk.internal.Model
|
|
import java.awt.image.BufferedImage
|
|
|
|
/**
|
|
* Pokémon TCG Serie
|
|
*/
|
|
class Serie (
|
|
|
|
/**
|
|
* the list of sets the Serie contains
|
|
*/
|
|
val sets: List<SetResume>,
|
|
|
|
/**
|
|
* the Serie unique ID
|
|
*/
|
|
val id: String,
|
|
|
|
/**
|
|
* the Serie name
|
|
*/
|
|
val name: String,
|
|
|
|
/**
|
|
* the Serie Logo (basically also the first set logo)
|
|
*/
|
|
val logo: String?
|
|
) : Model() {
|
|
|
|
/**
|
|
* Get the logo full url
|
|
*
|
|
* @param extension the file extension you want to use
|
|
* @return the full URL of the logo
|
|
*/
|
|
fun getLogoUrl(extension: Extension): String? {
|
|
if (this.logo == null) {
|
|
return null
|
|
}
|
|
return "${this.logo}.${extension.value}"
|
|
}
|
|
|
|
/**
|
|
* Get the logo buffer
|
|
*
|
|
* @param format the image format
|
|
* @return a buffer containing the image
|
|
*/
|
|
fun getLogo(format: Extension): BufferedImage? {
|
|
val logo = this.getLogoUrl(format) ?: return null
|
|
return Utils.downloadImage(logo)
|
|
}
|
|
}
|