package net.pterodactylus.rhynodge.filters;
-import static com.google.common.base.Optional.absent;
import static com.google.common.base.Preconditions.checkState;
import static java.util.Arrays.asList;
+import static java.util.Optional.empty;
+import static java.util.Optional.of;
import static java.util.stream.Collectors.toSet;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Optional;
import java.util.function.Function;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import net.pterodactylus.rhynodge.states.TorrentState;
import net.pterodactylus.rhynodge.states.TorrentState.TorrentFile;
-import com.google.common.base.Optional;
import org.apache.log4j.Logger;
import org.jspecify.annotations.NonNull;
TorrentState torrentState = (TorrentState) state;
Map<Episode, List<TorrentFile>> episodes = new HashMap<>();
for (TorrentFile torrentFile : torrentState) {
- Optional<Episode> episode = extractEpisode(torrentFile);
+ var episode = extractEpisode(torrentFile);
if (!episode.isPresent()) {
continue;
}
*
* @param torrentFile
* The torrent file to extract the episode information from
- * @return The extracted episode information, or {@link Optional#absent()} if
+ * @return The extracted episode information, or {@link Optional#empty()} if
* no episode information could be found
*/
private static Optional<Episode> extractEpisode(TorrentFile torrentFile) {
logger.debug(String.format("Parsing %s and %s as season and episode...", seasonString, episodeString));
int season = Integer.valueOf(seasonString);
int episode = Integer.valueOf(episodeString);
- return Optional.of(new Episode(season, episode));
+ return of(new Episode(season, episode));
}
- return absent();
+ return empty();
}
}
import static com.google.common.base.Preconditions.*;
+import java.util.Optional;
import net.pterodactylus.rhynodge.Filter;
import net.pterodactylus.rhynodge.State;
import net.pterodactylus.rhynodge.states.FailedState;
import net.pterodactylus.rhynodge.states.HtmlState;
import net.pterodactylus.rhynodge.states.StringState;
-import com.google.common.base.Optional;
import org.jsoup.nodes.Document;
import org.jspecify.annotations.NonNull;
HtmlState htmlState = (HtmlState) state;
Optional<String> newUrl = extractUrl(htmlState.document());
- if (!newUrl.isPresent()) {
+ if (newUrl.isEmpty()) {
return new FailedState();
}
/**
* Extracts the URL from the given document. If the returned value is {@link
- * Optional#absent()}, {@link #filter(State)} will return a {@link
+ * Optional#empty()}, {@link #filter(State)} will return a {@link
* FailedState}.
*
* @param document
* The document to extract the URL from
- * @return The extracted URL, or {@link Optional#absent()}
+ * @return The extracted URL, or {@link Optional#empty()}
*/
protected abstract Optional<String> extractUrl(Document document);
import java.util.ArrayList;
import java.util.List;
+import java.util.Optional;
import net.pterodactylus.rhynodge.Filter;
import net.pterodactylus.rhynodge.Watcher;
import net.pterodactylus.rhynodge.filters.ExtractUrlFilter;
import net.pterodactylus.rhynodge.mergers.ComicMerger;
import net.pterodactylus.rhynodge.queries.HttpQuery;
-import com.google.common.base.Optional;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
+import static java.util.Optional.empty;
+import static java.util.Optional.of;
+
/**
* {@link Watcher} implementation that watched “Least I Could Do” for new
* comics.
@Override
protected Optional<String> extractUrl(Document document) {
Elements linkTag = document.select("a#latest-comic");
- return linkTag.hasAttr("href") ? Optional.of(linkTag.attr("href")) : Optional.<String>absent();
+ return linkTag.hasAttr("href") ? of(linkTag.attr("href")) : empty();
}
});
filters.add(new HttpQueryFilter());