X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Frhynodge%2Fwatchers%2FPirateBayWatcher.java;h=b99d6e56878dcefbfd46efe905f0b2ccaa2a44b4;hb=b1c7de25c9ce6b9ced6a659539bb2dab68c09866;hp=ef6f74389ee0510fafc26762e1c2b020a4bc0d22;hpb=e40007dc074c9e67258f1a4dcf4d526083ea7ec4;p=rhynodge.git
diff --git a/src/main/java/net/pterodactylus/rhynodge/watchers/PirateBayWatcher.java b/src/main/java/net/pterodactylus/rhynodge/watchers/PirateBayWatcher.java
index ef6f743..b99d6e5 100644
--- a/src/main/java/net/pterodactylus/rhynodge/watchers/PirateBayWatcher.java
+++ b/src/main/java/net/pterodactylus/rhynodge/watchers/PirateBayWatcher.java
@@ -17,6 +17,8 @@
package net.pterodactylus.rhynodge.watchers;
+import static net.pterodactylus.rhynodge.filters.BlacklistFilter.createDefaultBlacklistFilter;
+
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.List;
@@ -24,15 +26,16 @@ import java.util.List;
import net.pterodactylus.rhynodge.Filter;
import net.pterodactylus.rhynodge.Query;
import net.pterodactylus.rhynodge.Trigger;
+import net.pterodactylus.rhynodge.Watcher;
import net.pterodactylus.rhynodge.filters.HtmlFilter;
-import net.pterodactylus.rhynodge.filters.PirateBayFilter;
+import net.pterodactylus.rhynodge.filters.torrents.PirateBayFilter;
import net.pterodactylus.rhynodge.queries.HttpQuery;
import net.pterodactylus.rhynodge.triggers.NewTorrentTrigger;
import com.google.common.collect.ImmutableList;
/**
- * {@Watcher} implementation that watches The Pirate Bay for new files.
+ * {@link Watcher} implementation that watches The Pirate Bay for new files.
*
* @author David âBombeâ Roden
*/
@@ -44,8 +47,16 @@ public class PirateBayWatcher extends DefaultWatcher {
* @param searchTerms
* The terms to search for
*/
- public PirateBayWatcher(String searchTerms) {
- super(createHttpQuery(searchTerms), createFilters(), createTrigger());
+ public PirateBayWatcher(String searchTerms, String proxy) {
+ super(createHttpQuery(searchTerms, extractProxyHost(proxy), extractProxyPort(proxy)), createFilters(), createTrigger());
+ }
+
+ private static String extractProxyHost(String proxy) {
+ return proxy.split(":")[0];
+ }
+
+ private static int extractProxyPort(String proxy) {
+ return Integer.valueOf(proxy.split(":")[1]);
}
//
@@ -59,9 +70,9 @@ public class PirateBayWatcher extends DefaultWatcher {
* The search terms of the query
* @return The query of the watcher
*/
- private static Query createHttpQuery(String searchTerms) {
+ private static Query createHttpQuery(String searchTerms, String proxyHost, int proxyPort) {
try {
- return new HttpQuery("http://thepiratebay.se/search/" + URLEncoder.encode(searchTerms, "UTF-8") + "/0/3/0");
+ return new HttpQuery("http://thepiratebay.org/search/" + URLEncoder.encode(searchTerms, "UTF-8") + "/0/3/0", proxyHost, proxyPort);
} catch (UnsupportedEncodingException uee1) {
/* will not happen. */
return null;
@@ -74,7 +85,7 @@ public class PirateBayWatcher extends DefaultWatcher {
* @return The filters of the watcher
*/
private static List createFilters() {
- return ImmutableList. of(new HtmlFilter(), new PirateBayFilter());
+ return ImmutableList.of(new HtmlFilter(), new PirateBayFilter(), createDefaultBlacklistFilter());
}
/**