Cleanup download type (#553)

This commit is contained in:
Mitchell Syer
2023-05-24 06:30:29 -04:00
committed by GitHub
parent 2aec0adb08
commit 5475567b48

View File

@@ -7,7 +7,8 @@
package suwayomi.tachidesk.graphql.types package suwayomi.tachidesk.graphql.types
import com.expediagroup.graphql.generator.annotations.GraphQLIgnore import com.expediagroup.graphql.server.extensions.getValueFromDataLoader
import graphql.schema.DataFetchingEnvironment
import suwayomi.tachidesk.graphql.server.primitives.Cursor import suwayomi.tachidesk.graphql.server.primitives.Cursor
import suwayomi.tachidesk.graphql.server.primitives.Edge import suwayomi.tachidesk.graphql.server.primitives.Edge
import suwayomi.tachidesk.graphql.server.primitives.Node import suwayomi.tachidesk.graphql.server.primitives.Node
@@ -15,38 +16,29 @@ import suwayomi.tachidesk.graphql.server.primitives.NodeList
import suwayomi.tachidesk.graphql.server.primitives.PageInfo import suwayomi.tachidesk.graphql.server.primitives.PageInfo
import suwayomi.tachidesk.manga.impl.download.model.DownloadChapter import suwayomi.tachidesk.manga.impl.download.model.DownloadChapter
import suwayomi.tachidesk.manga.impl.download.model.DownloadState import suwayomi.tachidesk.manga.impl.download.model.DownloadState
import suwayomi.tachidesk.manga.model.dataclass.ChapterDataClass import java.util.concurrent.CompletableFuture
import suwayomi.tachidesk.manga.model.dataclass.MangaDataClass
class DownloadType( class DownloadType(
val chapterId: Int, val chapterId: Int,
val chapterIndex: Int,
val mangaId: Int, val mangaId: Int,
var state: DownloadState = DownloadState.Queued, var state: DownloadState = DownloadState.Queued,
var progress: Float = 0f, var progress: Float = 0f,
var tries: Int = 0, var tries: Int = 0
@GraphQLIgnore
var mangaDataClass: MangaDataClass,
@GraphQLIgnore
var chapterDataClass: ChapterDataClass
) : Node { ) : Node {
constructor(downloadChapter: DownloadChapter) : this( constructor(downloadChapter: DownloadChapter) : this(
downloadChapter.chapter.id, downloadChapter.chapter.id,
downloadChapter.chapterIndex,
downloadChapter.mangaId, downloadChapter.mangaId,
downloadChapter.state, downloadChapter.state,
downloadChapter.progress, downloadChapter.progress,
downloadChapter.tries, downloadChapter.tries
downloadChapter.manga,
downloadChapter.chapter
) )
fun manga(): MangaType { fun manga(dataFetchingEnvironment: DataFetchingEnvironment): CompletableFuture<MangaType> {
return MangaType(mangaDataClass) return dataFetchingEnvironment.getValueFromDataLoader<Int, MangaType>("MangaDataLoader", mangaId)
} }
fun chapter(): ChapterType { fun chapter(dataFetchingEnvironment: DataFetchingEnvironment): CompletableFuture<ChapterType> {
return ChapterType(chapterDataClass) return dataFetchingEnvironment.getValueFromDataLoader<Int, ChapterType>("ChapterDataLoader", chapterId)
} }
} }