9319a2f1f827eeb04753a6b5b67646d1a280b7a6
[rhynodge.git] / src / main / kotlin / net / pterodactylus / rhynodge / filters / comics / HeldentageFilter.kt
1 package net.pterodactylus.rhynodge.filters.comics
2
3 import com.google.common.base.Optional
4 import com.google.common.base.Optional.absent
5 import com.google.common.base.Optional.fromNullable
6 import com.google.common.base.Optional.of
7 import net.pterodactylus.rhynodge.filters.ComicSiteFilter
8 import net.pterodactylus.rhynodge.utils.asOptional
9 import org.jsoup.nodes.Document
10 import org.jsoup.nodes.Element
11 import java.util.stream.Collectors
12
13 /**
14  * [ComicSiteFilter] implementation that can parse “Heldentage” comics.
15  */
16 class HeldentageFilter : ComicSiteFilter() {
17
18         override fun extractTitle(document: Document): Optional<String> =
19                 if (extractImageUrls(document).isEmpty()) absent() else of("")
20
21         override fun extractImageUrls(document: Document): List<String> =
22                 document.select("#mod_jheldentage_display_latest img")
23                         .map { it.attr("src") }
24
25         override fun extractImageComments(document: Document): List<String> =
26                 emptyList()
27
28 }