+++ /dev/null
-package net.pterodactylus.rhynodge.filters.comics;
-
-import static com.google.common.base.Optional.absent;
-import static com.google.common.base.Optional.of;
-import static java.util.Collections.emptyList;
-import static java.util.stream.Collectors.toList;
-
-import java.util.List;
-
-import net.pterodactylus.rhynodge.filters.ComicSiteFilter;
-
-import com.google.common.base.Optional;
-import org.jsoup.nodes.Document;
-
-/**
- * {@link ComicSiteFilter} implementation that can parse āHeldentageā comics.
- *
- * @author <a href="mailto:bombe@pterodactylus.net">David āBombeā Roden</a>
- */
-public class HeldentageFilter extends ComicSiteFilter {
-
- @Override
- protected Optional<String> extractTitle(Document document) {
- return extractImageUrls(document).isEmpty() ? absent() : of("");
- }
-
- @Override
- protected List<String> extractImageUrls(Document document) {
- return document.select("#mod_jheldentage_display_latest img").stream().map(element -> element.attr("src")).collect(toList());
- }
-
- @Override
- protected List<String> extractImageComments(Document document) {
- return emptyList();
- }
-
-}
--- /dev/null
+package net.pterodactylus.rhynodge.filters.comics
+
+import com.google.common.base.Optional
+import com.google.common.base.Optional.absent
+import com.google.common.base.Optional.fromNullable
+import com.google.common.base.Optional.of
+import net.pterodactylus.rhynodge.filters.ComicSiteFilter
+import net.pterodactylus.rhynodge.utils.asOptional
+import org.jsoup.nodes.Document
+import org.jsoup.nodes.Element
+import java.util.stream.Collectors
+
+/**
+ * [ComicSiteFilter] implementation that can parse āHeldentageā comics.
+ */
+class HeldentageFilter : ComicSiteFilter() {
+
+ override fun extractTitle(document: Document): Optional<String> =
+ if (extractImageUrls(document).isEmpty()) absent() else of("")
+
+ override fun extractImageUrls(document: Document): List<String> =
+ document.select("#mod_jheldentage_display_latest img")
+ .map { it.attr("src") }
+
+ override fun extractImageComments(document: Document): List<String> =
+ emptyList()
+
+}