mirror of https://github.com/Jackett/Jackett
In simple words, when you make a request in Jackett, the results are saved in memory (cache). The next request will return results form the cache improving response time and making fewer requests to the sites. * We assume all indexers/sites are stateless, the same request return the same response. If you change the search term, categories or something in the query Jackett has to make a live request to the indexer. * There are some situations when we don't want to use the cache: ** When we are testing the indexers => if query.IsTest results are not cached ** When the user updates the configuration of one indexer => We call CleanIndexerCache to remove cached results before testing the configuration ** When there is some error/exception in the indexer => The results are not cached so we can retry in the next request * We want to limit the memory usage, so we try to remove elements from cache ASAP: ** Each indexer can have a maximum number of results in memory. If the limit is exceeded we remove old results ** Cached results expire after some time * Users can configure the cache or even disable it
This commit is contained in:
parent
ec3787e803
commit
69125add3e
|
@ -676,7 +676,7 @@ Jackett is available as a beta package from [SynoCommunity](https://synocommunit
|
|||
|
||||
|
||||
## Running Jackett behind a reverse proxy
|
||||
When running jackett behind a reverse proxy make sure that the original hostname of the request is passed to Jackett. If HTTPS is used also set the X-Forwarded-Proto header to "https". Don't forget to adjust the "Base Path Override" Jackett option accordingly.
|
||||
When running jackett behind a reverse proxy make sure that the original hostname of the request is passed to Jackett. If HTTPS is used also set the X-Forwarded-Proto header to "https". Don't forget to adjust the "Base path override" Jackett option accordingly.
|
||||
|
||||
Example config for apache:
|
||||
```
|
||||
|
|
|
@ -134,8 +134,8 @@ hr {
|
|||
}
|
||||
|
||||
.input-header {
|
||||
font-size: 18px;
|
||||
width: 160px;
|
||||
font-size: 16px;
|
||||
width: 250px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
@ -165,7 +165,7 @@ hr {
|
|||
text-align: center;
|
||||
}
|
||||
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease {
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease, #jackett-cache-enabled {
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
|
|
|
@ -98,6 +98,14 @@ function loadJackettSettings() {
|
|||
$("#jackett-allowupdate").attr('checked', data.updatedisabled);
|
||||
$("#jackett-prerelease").attr('checked', data.prerelease);
|
||||
$("#jackett-logging").attr('checked', data.logging);
|
||||
|
||||
$("#jackett-cache-enabled").attr('checked', data.cache_enabled);
|
||||
$("#jackett-cache-ttl").val(data.cache_ttl);
|
||||
$("#jackett-cache-max-results-per-indexer").val(data.cache_max_results_per_indexer);
|
||||
if (!data.cache_enabled) {
|
||||
$("#jackett-show-releases").attr("disabled", true);
|
||||
}
|
||||
|
||||
$("#jackett-omdbkey").val(data.omdbkey);
|
||||
$("#jackett-omdburl").val(data.omdburl);
|
||||
var password = data.password;
|
||||
|
@ -1126,6 +1134,9 @@ function bindUIButtons() {
|
|||
var jackett_update = $("#jackett-allowupdate").is(':checked');
|
||||
var jackett_prerelease = $("#jackett-prerelease").is(':checked');
|
||||
var jackett_logging = $("#jackett-logging").is(':checked');
|
||||
var jackett_cache_enabled = $("#jackett-cache-enabled").is(':checked');
|
||||
var jackett_cache_ttl = $("#jackett-cache-ttl").val();
|
||||
var jackett_cache_max_results_per_indexer = $("#jackett-cache-max-results-per-indexer").val();
|
||||
var jackett_omdb_key = $("#jackett-omdbkey").val();
|
||||
var jackett_omdb_url = $("#jackett-omdburl").val();
|
||||
|
||||
|
@ -1143,6 +1154,10 @@ function bindUIButtons() {
|
|||
blackholedir: $("#jackett-savedir").val(),
|
||||
logging: jackett_logging,
|
||||
basepathoverride: jackett_basepathoverride,
|
||||
logging: jackett_logging,
|
||||
cache_enabled: jackett_cache_enabled,
|
||||
cache_ttl: jackett_cache_ttl,
|
||||
cache_max_results_per_indexer: jackett_cache_max_results_per_indexer,
|
||||
omdbkey: jackett_omdb_key,
|
||||
omdburl: jackett_omdb_url,
|
||||
proxy_type: jackett_proxy_type,
|
||||
|
|
|
@ -126,8 +126,8 @@ hr {
|
|||
}
|
||||
|
||||
.input-header {
|
||||
font-size: 18px;
|
||||
width: 160px;
|
||||
font-size: 16px;
|
||||
width: 250px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
@ -157,7 +157,7 @@ hr {
|
|||
text-align: center;
|
||||
}
|
||||
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease {
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease, #jackett-cache-enabled {
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
|
|
|
@ -33,8 +33,8 @@
|
|||
|
||||
<link rel="stylesheet" type="text/css" href="../bootstrap/bootstrap.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../animate.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20200223" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20200223" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20201208" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20201208" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/jquery.dataTables.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css?changed=2017083001">
|
||||
|
@ -127,7 +127,7 @@
|
|||
</a>
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Base Path Override: </span>
|
||||
<span class="input-header">Base path override: </span>
|
||||
<input id="jackett-basepathoverride" class="form-control input-right" type="text" value="" placeholder="/jackett">
|
||||
</div>
|
||||
<div class="input-area">
|
||||
|
@ -135,7 +135,7 @@
|
|||
<input id="jackett-port" class="form-control input-right" type="text" value="" placeholder="9117">
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Manual download blackhole directory: </span>
|
||||
<span class="input-header">Blackhole directory: </span>
|
||||
<input id="jackett-savedir" class="form-control input-right" type="text" value="" placeholder="c:\torrents\">
|
||||
</div>
|
||||
|
||||
|
@ -188,6 +188,18 @@
|
|||
<span class="input-header">Enhanced logging: </span>
|
||||
<input id="jackett-logging" class="form-control input-right" type="checkbox" />
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Cache enabled (recommended): </span>
|
||||
<input id="jackett-cache-enabled" class="form-control input-right" type="checkbox" />
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Cache TTL (seconds): </span>
|
||||
<input id="jackett-cache-ttl" class="form-control input-right" type="text" value="" placeholder="">
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Cache max results per indexer: </span>
|
||||
<input id="jackett-cache-max-results-per-indexer" class="form-control input-right" type="text" value="" placeholder="">
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">OMDB API key: </span>
|
||||
<input id="jackett-omdbkey" class="form-control input-right" type="text" value="" placeholder="">
|
||||
|
@ -680,6 +692,6 @@
|
|||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20201107"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20201208"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -49,7 +49,8 @@ namespace Jackett.Common.Indexers
|
|||
set => configData = value;
|
||||
}
|
||||
|
||||
public Abnormal(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public Abnormal(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "abnormal",
|
||||
name: "Abnormal",
|
||||
description: "General French Private Tracker",
|
||||
|
@ -68,6 +69,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
downloadBase: "https://abnormal.ws/torrents.php?action=download&id=",
|
||||
configData: new ConfigurationDataAbnormal())
|
||||
{
|
||||
|
|
|
@ -106,7 +106,7 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
|
||||
protected AvistazTracker(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService p, TorznabCapabilities caps)
|
||||
IProtectionService p, ICacheService cs, TorznabCapabilities caps)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -116,6 +116,7 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithPID(@"You have to check 'Enable RSS Feed' in 'My Account',
|
||||
without this configuration the torrent download does not work.<br/>You can find the PID in 'My profile'."))
|
||||
{
|
||||
|
|
|
@ -27,8 +27,8 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
|
||||
protected CouchPotatoTracker(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService p, TorznabCapabilities caps, ConfigurationData configData,
|
||||
string endpoint)
|
||||
IProtectionService p, ICacheService cs, TorznabCapabilities caps,
|
||||
ConfigurationData configData, string endpoint)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -38,6 +38,7 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
cacheService: cs,
|
||||
configData: configData)
|
||||
{
|
||||
this.endpoint = endpoint;
|
||||
|
|
|
@ -37,9 +37,9 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
|
||||
protected GazelleTracker(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService p, TorznabCapabilities caps, bool supportsFreeleechTokens,
|
||||
bool imdbInTags = false, bool has2Fa = false, bool useApiKey = false,
|
||||
string instructionMessageOptional = null)
|
||||
IProtectionService p, ICacheService cs, TorznabCapabilities caps,
|
||||
bool supportsFreeleechTokens, bool imdbInTags = false, bool has2Fa = false,
|
||||
bool useApiKey = false, string instructionMessageOptional = null)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -49,6 +49,7 @@ namespace Jackett.Common.Indexers.Abstract
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataGazelleTracker(
|
||||
has2Fa, supportsFreeleechTokens, useApiKey, instructionMessageOptional))
|
||||
{
|
||||
|
|
|
@ -12,7 +12,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class AlphaRatio : GazelleTracker
|
||||
{
|
||||
public AlphaRatio(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public AlphaRatio(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "alpharatio",
|
||||
name: "AlphaRatio",
|
||||
description: "AlphaRatio (AR) is a Private Torrent Tracker for 0DAY / GENERAL",
|
||||
|
@ -32,6 +33,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true,
|
||||
imdbInTags: true)
|
||||
{
|
||||
|
|
|
@ -27,7 +27,8 @@ namespace Jackett.Common.Indexers
|
|||
private static readonly Regex SeasonInfoRegex = new Regex(@"(?:(?:TV-)|(?:ТВ-))(\d+)", RegexOptions.Compiled | RegexOptions.IgnoreCase);
|
||||
private static readonly Lazy<Regex> StripRussianTitleRegex = new Lazy<Regex>(() => new Regex(@"^.*?\/\s*", RegexOptions.Compiled));
|
||||
|
||||
public AniDUB(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public AniDUB(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "anidub",
|
||||
name: "AniDUB",
|
||||
description: "AniDUB Tracker is a semi-private russian tracker and release group for anime",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAniDub())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -18,7 +18,7 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class AniLibria : BaseWebIndexer
|
||||
{
|
||||
public AniLibria(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public AniLibria(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps, ICacheService cs)
|
||||
: base(id: "AniLibria",
|
||||
name: "AniLibria",
|
||||
description: "AniLibria is a Public torrent tracker for anime, voiced on russian by AniLibria team",
|
||||
|
@ -34,6 +34,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAniLibria())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -23,7 +23,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class Anidex : BaseWebIndexer
|
||||
{
|
||||
public Anidex(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public Anidex(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "anidex",
|
||||
name: "Anidex",
|
||||
description: "Anidex is a Public torrent tracker and indexer, primarily for English fansub groups of anime",
|
||||
|
@ -39,6 +40,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -32,7 +32,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private ConfigurationDataAnimeBytes ConfigData => (ConfigurationDataAnimeBytes)configData;
|
||||
|
||||
public AnimeBytes(IIndexerConfigurationService configService, WebClient client, Logger l, IProtectionService ps)
|
||||
public AnimeBytes(IIndexerConfigurationService configService, WebClient client, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "animebytes",
|
||||
name: "AnimeBytes",
|
||||
description: "Powered by Tentacles",
|
||||
|
@ -59,6 +60,7 @@ namespace Jackett.Common.Indexers
|
|||
},
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAnimeBytes("Note: Go to AnimeBytes site and open your account settings. Go to 'Account' tab, move cursor over black part near 'Passkey' and copy its value. Your username is case sensitive."))
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -32,7 +32,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public AnimeTorrents(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps)
|
||||
public AnimeTorrents(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "animetorrents",
|
||||
name: "AnimeTorrents",
|
||||
description: "Definitive source for anime and manga",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -27,7 +27,8 @@ namespace Jackett.Common.Indexers
|
|||
private static readonly Regex SizeInfoQueryRegex = new Regex(@"Размер:(.*)\n", RegexOptions.Compiled | RegexOptions.IgnoreCase);
|
||||
private static readonly Regex ReleaseDateInfoQueryRegex = new Regex(@"Добавлен:(.*)\n", RegexOptions.Compiled | RegexOptions.IgnoreCase);
|
||||
|
||||
public Animedia(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Animedia(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "Animedia",
|
||||
name: "Animedia",
|
||||
description: "Animedia is a public russian tracker and release group for anime.",
|
||||
|
@ -43,6 +44,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://tehconnection.me/"
|
||||
};
|
||||
|
||||
public Anthelion(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Anthelion(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "anthelion",
|
||||
name: "Anthelion", // old name: TehConnection.me
|
||||
description: "A movies tracker",
|
||||
|
@ -49,6 +50,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -11,7 +11,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class AvistaZ : AvistazTracker
|
||||
{
|
||||
public AvistaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public AvistaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "avistaz",
|
||||
name: "AvistaZ",
|
||||
description: "Aka AsiaTorrents",
|
||||
|
@ -30,7 +31,9 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps)
|
||||
p: ps,
|
||||
cs: cs
|
||||
)
|
||||
{
|
||||
AddCategoryMapping(1, TorznabCatType.Movies);
|
||||
AddCategoryMapping(1, TorznabCatType.MoviesUHD);
|
||||
|
|
|
@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
|||
private readonly Regex _removeYearRegex = new Regex(@" [\(\[]?(19|20)\d{2}[\)\]]?$", RegexOptions.Compiled);
|
||||
private new ConfigurationDataPasskey configData => (ConfigurationDataPasskey)base.configData;
|
||||
|
||||
public AwesomeHD(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l, IProtectionService ps)
|
||||
public AwesomeHD(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "awesomehd",
|
||||
name: "Awesome-HD",
|
||||
description: "An HD tracker",
|
||||
|
@ -48,6 +49,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataPasskey("Note: You can find the Passkey in your profile, " +
|
||||
"next to Personal information."))
|
||||
{
|
||||
|
|
|
@ -33,7 +33,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public BB(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public BB(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "bb",
|
||||
name: "bB",
|
||||
description: "bB is a Private Torrent Tracker for 0DAY / GENERAL",
|
||||
|
@ -61,6 +62,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -60,7 +60,8 @@ namespace Jackett.Common.Indexers
|
|||
{"greys anatomy", "grey's anatomy"}
|
||||
};
|
||||
|
||||
public BJShare(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public BJShare(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "bjshare",
|
||||
name: "BJ-Share",
|
||||
description: "A brazilian tracker.",
|
||||
|
@ -88,6 +89,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -35,7 +35,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public BakaBT(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public BakaBT(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "bakabt",
|
||||
name: "BakaBT",
|
||||
description: "Anime Comunity",
|
||||
|
@ -59,6 +60,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBakaBT("To prevent 0-results-error, Enable the " +
|
||||
"Show-Adult-Content option in your BakaBT account Settings."))
|
||||
{
|
||||
|
|
|
@ -36,6 +36,7 @@ namespace Jackett.Common.Indexers
|
|||
protected Logger logger;
|
||||
protected IIndexerConfigurationService configurationService;
|
||||
protected IProtectionService protectionService;
|
||||
protected ICacheService cacheService;
|
||||
|
||||
protected ConfigurationData configData;
|
||||
|
||||
|
@ -62,11 +63,12 @@ namespace Jackett.Common.Indexers
|
|||
// standard constructor used by most indexers
|
||||
public BaseIndexer(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, Logger logger, ConfigurationData configData,
|
||||
IProtectionService p)
|
||||
IProtectionService p, ICacheService cs)
|
||||
{
|
||||
this.logger = logger;
|
||||
configurationService = configService;
|
||||
protectionService = p;
|
||||
cacheService = cs;
|
||||
|
||||
if (!link.EndsWith("/", StringComparison.Ordinal))
|
||||
throw new Exception("Site link must end with a slash.");
|
||||
|
@ -378,14 +380,19 @@ namespace Jackett.Common.Indexers
|
|||
public virtual async Task<IndexerResult> ResultsForQuery(TorznabQuery query, bool isMetaIndexer)
|
||||
{
|
||||
if (!CanHandleQuery(query) || !CanHandleCategories(query, isMetaIndexer))
|
||||
return new IndexerResult(this, new ReleaseInfo[0]);
|
||||
return new IndexerResult(this, new ReleaseInfo[0], false);
|
||||
|
||||
var cachedReleases = cacheService.Search(this, query);
|
||||
if (cachedReleases != null)
|
||||
return new IndexerResult(this, cachedReleases, true);
|
||||
|
||||
try
|
||||
{
|
||||
var results = await PerformQuery(query);
|
||||
results = FilterResults(query, results);
|
||||
results = FixResults(query, results);
|
||||
return new IndexerResult(this, results);
|
||||
cacheService.CacheResults(this, query, results.ToList());
|
||||
return new IndexerResult(this, results, false);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -400,9 +407,9 @@ namespace Jackett.Common.Indexers
|
|||
{
|
||||
protected BaseWebIndexer(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
ConfigurationData configData, IProtectionService p, TorznabCapabilities caps,
|
||||
string downloadBase = null)
|
||||
: base(link, id, name, description, configService, logger, configData, p)
|
||||
ConfigurationData configData, IProtectionService p, ICacheService cacheService,
|
||||
TorznabCapabilities caps, string downloadBase = null)
|
||||
: base(link, id, name, description, configService, logger, configData, p, cacheService)
|
||||
{
|
||||
webclient = client;
|
||||
downloadUrlBase = downloadBase;
|
||||
|
@ -410,8 +417,9 @@ namespace Jackett.Common.Indexers
|
|||
}
|
||||
|
||||
// minimal constructor used by e.g. cardigann generic indexer
|
||||
protected BaseWebIndexer(IIndexerConfigurationService configService, WebClient client, Logger logger, IProtectionService p)
|
||||
: base("/", "", "", "", configService, logger, null, p) => webclient = client;
|
||||
protected BaseWebIndexer(IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService p, ICacheService cacheService)
|
||||
: base("/", "", "", "", configService, logger, null, p, cacheService) => webclient = client;
|
||||
|
||||
public virtual async Task<byte[]> Download(Uri link)
|
||||
{
|
||||
|
@ -658,7 +666,6 @@ namespace Jackett.Common.Indexers
|
|||
{
|
||||
var result = await base.ResultsForQuery(query, isMetaIndexer);
|
||||
result.Releases = CleanLinks(result.Releases);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -696,9 +703,9 @@ namespace Jackett.Common.Indexers
|
|||
{
|
||||
protected BaseCachingWebIndexer(string link,string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
ConfigurationData configData, IProtectionService p, TorznabCapabilities caps = null,
|
||||
string downloadBase = null)
|
||||
: base(link, id, name, description, configService, client, logger, configData, p, caps, downloadBase)
|
||||
ConfigurationData configData, IProtectionService p, ICacheService cacheService,
|
||||
TorznabCapabilities caps = null, string downloadBase = null)
|
||||
: base(link, id, name, description, configService, client, logger, configData, p, cacheService, caps, downloadBase)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -710,6 +717,7 @@ namespace Jackett.Common.Indexers
|
|||
}
|
||||
}
|
||||
|
||||
// TODO: remove this implementation and use gloal cache
|
||||
protected static List<CachedQueryResult> cache = new List<CachedQueryResult>();
|
||||
protected static readonly TimeSpan cacheTime = new TimeSpan(0, 9, 0);
|
||||
}
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public BitCityReloaded(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public BitCityReloaded(IIndexerConfigurationService configService, WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "bitcityreloaded",
|
||||
name: "Bit-City Reloaded",
|
||||
description: "A German general tracker.",
|
||||
|
@ -58,6 +59,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay("Only the results from the first search result page are shown, adjust your profile settings to show a reasonable amount (it looks like there's no maximum)."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataCookie configData => (ConfigurationDataCookie)base.configData;
|
||||
|
||||
public BitHDTV(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public BitHDTV(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "bithdtv",
|
||||
name: "BIT-HDTV",
|
||||
description: "BIT-HDTV - Home of High Definition",
|
||||
|
@ -45,6 +46,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie("For best results, change the 'Torrents per page' setting to 100 in your profile."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -28,7 +28,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public BroadcasTheNet(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public BroadcasTheNet(IIndexerConfigurationService configService, WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "broadcasthenet",
|
||||
name: "BroadcasTheNet",
|
||||
description: "BroadcasTheNet (BTN) is an invite-only torrent tracker focused on TV shows",
|
||||
|
@ -46,6 +47,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAPIKey())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -10,7 +10,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class BrokenStones : GazelleTracker
|
||||
{
|
||||
public BrokenStones(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public BrokenStones(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "brokenstones",
|
||||
name: "BrokenStones",
|
||||
description: "Broken Stones is a Private site for MacOS and iOS APPS / GAMES",
|
||||
|
@ -20,6 +21,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true)
|
||||
{
|
||||
Language = "en-us";
|
||||
|
|
|
@ -14,7 +14,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://www.cgpeers.com/"
|
||||
};
|
||||
|
||||
public CGPeers(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public CGPeers(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "cgpeers",
|
||||
name: "CGPeers",
|
||||
description: "CGPeers is a Private Torrent Tracker for GRAPHICS SOFTWARE / TUTORIALS / ETC",
|
||||
|
@ -24,6 +25,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true)
|
||||
{
|
||||
Language = "en-us";
|
||||
|
|
|
@ -58,11 +58,13 @@ namespace Jackett.Common.Indexers
|
|||
@$"\b({string.Join("|", _SupportedLogicFunctions.Select(Regex.Escape))})(?:\s+(\(?\.[^\)\s]+\)?|""[^""]+"")){{2,}}");
|
||||
|
||||
public CardigannIndexer(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, IndexerDefinition Definition)
|
||||
IProtectionService ps, ICacheService cs, IndexerDefinition Definition)
|
||||
: base(configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps)
|
||||
p: ps,
|
||||
cacheService: cs
|
||||
)
|
||||
{
|
||||
this.Definition = Definition;
|
||||
Id = Definition.Id;
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://www.cinecalidad.eu/"
|
||||
};
|
||||
|
||||
public Cinecalidad(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Cinecalidad(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "cinecalidad",
|
||||
name: "Cinecalidad",
|
||||
description: "Películas Full HD en Castellano y Latino Dual.",
|
||||
|
@ -43,6 +44,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -11,7 +11,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class CinemaZ : AvistazTracker
|
||||
{
|
||||
public CinemaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public CinemaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "cinemaz",
|
||||
name: "CinemaZ",
|
||||
description: "Part of the Avistaz network.",
|
||||
|
@ -30,7 +31,9 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps)
|
||||
p: ps,
|
||||
cs: cs
|
||||
)
|
||||
{
|
||||
AddCategoryMapping(1, TorznabCatType.Movies);
|
||||
AddCategoryMapping(1, TorznabCatType.MoviesUHD);
|
||||
|
|
|
@ -13,7 +13,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class DICMusic : GazelleTracker
|
||||
{
|
||||
public DICMusic(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public DICMusic(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "dicmusic",
|
||||
name: "DICMusic",
|
||||
description: "DICMusic is a CHINESE Private Torrent Tracker for MUSIC",
|
||||
|
@ -29,6 +30,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true,
|
||||
has2Fa: true)
|
||||
{
|
||||
|
|
|
@ -35,7 +35,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public DarmoweTorenty(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public DarmoweTorenty(IIndexerConfigurationService configService, WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "darmowetorenty",
|
||||
name: "Darmowe torenty",
|
||||
description: "Darmowe torenty is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL",
|
||||
|
@ -63,6 +64,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-2");
|
||||
|
|
|
@ -29,7 +29,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public DigitalCore(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public DigitalCore(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "digitalcore",
|
||||
name: "DigitalCore",
|
||||
description: "DigitalCore is a Private Torrent Tracker for MOVIES / TV / GENERAL",
|
||||
|
@ -57,6 +58,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -49,7 +49,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://www.divxtotal.la/"
|
||||
};
|
||||
|
||||
public DivxTotal(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public DivxTotal(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "divxtotal",
|
||||
name: "DivxTotal",
|
||||
description: "DivxTotal is a SPANISH site for Movies, TV series and Software",
|
||||
|
@ -68,6 +69,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
|||
private string BrowseUrl => SiteLink + "browse.php";
|
||||
private new ConfigurationDataEliteTracker configData => (ConfigurationDataEliteTracker)base.configData;
|
||||
|
||||
public EliteTracker(IIndexerConfigurationService configService, WebClient webClient, Logger logger, IProtectionService protectionService)
|
||||
public EliteTracker(IIndexerConfigurationService configService, WebClient webClient, Logger logger,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "elitetracker",
|
||||
name: "Elite-Tracker",
|
||||
description: "French Torrent Tracker",
|
||||
|
@ -50,7 +51,8 @@ namespace Jackett.Common.Indexers
|
|||
},
|
||||
configService: configService,
|
||||
logger: logger,
|
||||
p: protectionService,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
client: webClient,
|
||||
configData: new ConfigurationDataEliteTracker()
|
||||
)
|
||||
|
|
|
@ -53,7 +53,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://epublibre.unblockit.app/"
|
||||
};
|
||||
|
||||
public EpubLibre(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public EpubLibre(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "epublibre",
|
||||
name: "EpubLibre",
|
||||
description: "Más libros, Más libres",
|
||||
|
@ -69,6 +70,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -19,7 +19,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://torrents.yourexotic.com/"
|
||||
};
|
||||
|
||||
public ExoticaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public ExoticaZ(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "exoticaz",
|
||||
name: "ExoticaZ",
|
||||
description: "ExoticaZ (YourExotic) is a Private Torrent Tracker for 3X",
|
||||
|
@ -34,7 +35,9 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps)
|
||||
p: ps,
|
||||
cs: cs
|
||||
)
|
||||
{
|
||||
AddCategoryMapping(1, TorznabCatType.XXXx264);
|
||||
AddCategoryMapping(2, TorznabCatType.XXXPack);
|
||||
|
|
|
@ -16,7 +16,8 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class AnimeTosho : BaseNewznabIndexer
|
||||
{
|
||||
public AnimeTosho(IIndexerConfigurationService configService, WebClient client, Logger logger, IProtectionService ps)
|
||||
public AnimeTosho(IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "animetosho",
|
||||
name: "Anime Tosho",
|
||||
description: "AnimeTosho (AT) is an automated service that provides torrent files, magnet links and DDL for all anime releases",
|
||||
|
@ -32,6 +33,7 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -18,8 +18,8 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
|
||||
protected BaseFeedIndexer(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
ConfigurationData configData, IProtectionService p, TorznabCapabilities caps = null,
|
||||
string downloadBase = null)
|
||||
ConfigurationData configData, IProtectionService p, ICacheService cs,
|
||||
TorznabCapabilities caps = null, string downloadBase = null)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -29,6 +29,7 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
cacheService: cs,
|
||||
configData: configData,
|
||||
downloadBase: downloadBase)
|
||||
{
|
||||
|
|
|
@ -17,8 +17,8 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
{
|
||||
protected BaseNewznabIndexer(string link, string id, string name, string description,
|
||||
IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
ConfigurationData configData, IProtectionService p, TorznabCapabilities caps = null,
|
||||
string downloadBase = null)
|
||||
ConfigurationData configData, IProtectionService p, ICacheService cs,
|
||||
TorznabCapabilities caps = null, string downloadBase = null)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -28,6 +28,7 @@ namespace Jackett.Common.Indexers.Feeds
|
|||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
cs: cs,
|
||||
configData: configData,
|
||||
downloadBase: downloadBase)
|
||||
{
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataFileList configData => (ConfigurationDataFileList)base.configData;
|
||||
|
||||
public FileList(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public FileList(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "filelist",
|
||||
name: "FileList",
|
||||
description: "The best Romanian site.",
|
||||
|
@ -58,6 +59,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataFileList())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -23,7 +23,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public FunFile(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public FunFile(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "funfile",
|
||||
name: "FunFile",
|
||||
description: "A general tracker",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin("For best results, change the 'Torrents per page' setting to 100 in your profile."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataCookie configData => (ConfigurationDataCookie)base.configData;
|
||||
|
||||
public Fuzer(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public Fuzer(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "fuzer",
|
||||
name: "Fuzer",
|
||||
description: "Fuzer is a private torrent website with israeli torrents.",
|
||||
|
@ -58,6 +59,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("windows-1255");
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public GazelleGames(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public GazelleGames(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "gazellegames",
|
||||
name: "GazelleGames",
|
||||
description: "A gaming tracker.",
|
||||
|
@ -40,6 +41,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -29,7 +29,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public GimmePeers(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public GimmePeers(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "gimmepeers",
|
||||
name: "GimmePeers",
|
||||
description: "Formerly ILT",
|
||||
|
@ -57,6 +58,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public HDBitsApi(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public HDBitsApi(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "hdbitsapi",
|
||||
name: "HDBits (API)",
|
||||
description: "The HighDefinition Bittorrent Community",
|
||||
|
@ -45,6 +46,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataHDBitsApi())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public HDSpace(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public HDSpace(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "hdspace",
|
||||
name: "HD-Space",
|
||||
description: "Sharing The Universe",
|
||||
|
@ -49,6 +50,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -44,7 +44,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public HDTorrents(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public HDTorrents(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "hdtorrents",
|
||||
name: "HD-Torrents",
|
||||
description: "HD-Torrents is a private torrent website with HD torrents and strict rules on their content.",
|
||||
|
@ -68,6 +69,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin(
|
||||
"For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile."))
|
||||
{
|
||||
|
|
|
@ -29,7 +29,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public Hebits(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public Hebits(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "hebits",
|
||||
name: "Hebits",
|
||||
description: "The Israeli Tracker",
|
||||
|
@ -57,6 +58,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
downloadBase: "https://hebits.net/",
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
|
|
|
@ -12,11 +12,13 @@ namespace Jackett.Common.Indexers
|
|||
{
|
||||
public IIndexer Indexer { get; set; }
|
||||
public IEnumerable<ReleaseInfo> Releases { get; set; }
|
||||
public bool IsFromCache;
|
||||
|
||||
public IndexerResult(IIndexer Indexer, IEnumerable<ReleaseInfo> Releases)
|
||||
public IndexerResult(IIndexer indexer, IEnumerable<ReleaseInfo> releases, bool isFromCache)
|
||||
{
|
||||
this.Indexer = Indexer;
|
||||
this.Releases = Releases;
|
||||
Indexer = indexer;
|
||||
Releases = releases;
|
||||
IsFromCache = isFromCache;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -49,7 +49,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataCookie configData => (ConfigurationDataCookie)base.configData;
|
||||
|
||||
public IPTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public IPTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "iptorrents",
|
||||
name: "IPTorrents",
|
||||
description: "Always a step ahead.",
|
||||
|
@ -77,6 +78,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie("For best results, change the 'Torrents per page' option to 100 and check the 'Torrents - Show files count' option in the website Settings."))
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -33,7 +33,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public ImmortalSeed(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public ImmortalSeed(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "immortalseed",
|
||||
name: "ImmortalSeed",
|
||||
description: "ImmortalSeed (iS) is a Private Torrent Tracker for MOVIES / TV / GENERAL",
|
||||
|
@ -61,6 +62,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -32,7 +32,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private ConfigurationData ConfigData => configData;
|
||||
|
||||
public InternetArchive(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public InternetArchive(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "internetarchive",
|
||||
name: "Internet Archive",
|
||||
description: "Internet Archive is a non-profit digital library offering free universal access to books, movies & music, as well as 406 billion archived web pages",
|
||||
|
@ -60,6 +61,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -55,7 +55,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public Libble(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Libble(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "libble",
|
||||
name: "Libble",
|
||||
description: "Libble is a Private Torrent Tracker for MUSIC",
|
||||
|
@ -71,6 +72,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -93,7 +93,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public LostFilm(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public LostFilm(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "lostfilm",
|
||||
name: "LostFilm.tv",
|
||||
description: "Unique portal about foreign series",
|
||||
|
@ -112,6 +113,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCaptchaLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -23,7 +23,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public Magnetico(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Magnetico(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "magnetico",
|
||||
name: "Magnetico (Local DHT)",
|
||||
description: "Magnetico is a self-hosted BitTorrent DHT search engine",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin("Configure the URL, username and password from your local magneticow.<br>" +
|
||||
"Default credentials are: username=username, password=password.<br>" +
|
||||
"If you have many torrents, it is recommended to use PostgreSQL database to make queries faster. With SQLite, timeouts may occur."))
|
||||
|
|
|
@ -43,7 +43,8 @@ namespace Jackett.Common.Indexers
|
|||
"http://www.mejortorrentt.org/"
|
||||
};
|
||||
|
||||
public MejorTorrent(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public MejorTorrent(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "mejortorrent",
|
||||
name: "MejorTorrent",
|
||||
description: "MejorTorrent - Hay veces que un torrent viene mejor! :)",
|
||||
|
@ -67,6 +68,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -17,8 +17,8 @@ namespace Jackett.Common.Indexers.Meta
|
|||
protected BaseMetaIndexer(string name, string id, string description,
|
||||
IFallbackStrategyProvider fallbackStrategyProvider,
|
||||
IResultFilterProvider resultFilterProvider,IIndexerConfigurationService configService,
|
||||
WebClient client, Logger logger, ConfigurationData configData, IProtectionService p,
|
||||
Func<IIndexer, bool> filter)
|
||||
WebClient client, Logger logger, ConfigurationData configData, IProtectionService ps,
|
||||
ICacheService cs, Func<IIndexer, bool> filter)
|
||||
: base(id: id,
|
||||
name: name,
|
||||
description: description,
|
||||
|
@ -27,7 +27,8 @@ namespace Jackett.Common.Indexers.Meta
|
|||
configService: configService,
|
||||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: configData)
|
||||
{
|
||||
filterFunc = filter;
|
||||
|
@ -49,13 +50,14 @@ namespace Jackett.Common.Indexers.Meta
|
|||
public override async Task<IndexerResult> ResultsForQuery(TorznabQuery query, bool isMetaIndexer)
|
||||
{
|
||||
if (!CanHandleQuery(query) || !CanHandleCategories(query, true))
|
||||
return new IndexerResult(this, new ReleaseInfo[0]);
|
||||
return new IndexerResult(this, new ReleaseInfo[0], false);
|
||||
|
||||
try
|
||||
{
|
||||
var results = await PerformQuery(query);
|
||||
// the results are already filtered and fixed by each indexer
|
||||
return new IndexerResult(this, results);
|
||||
// some results may come from cache, but we can't inform without refactor the code
|
||||
return new IndexerResult(this, results, false);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
|
@ -10,14 +10,15 @@ namespace Jackett.Common.Indexers.Meta
|
|||
{
|
||||
public AggregateIndexer(IFallbackStrategyProvider fallbackStrategyProvider,
|
||||
IResultFilterProvider resultFilterProvider, IIndexerConfigurationService configService,
|
||||
WebClient client, Logger logger, IProtectionService ps)
|
||||
WebClient client, Logger logger, IProtectionService ps, ICacheService cs)
|
||||
: base(id: "all",
|
||||
name: "AggregateSearch",
|
||||
description: "This feed includes all configured trackers",
|
||||
configService: configService,
|
||||
client: client,
|
||||
logger: logger,
|
||||
p: ps,
|
||||
ps: ps,
|
||||
cs: cs,
|
||||
configData: new ConfigurationData(),
|
||||
fallbackStrategyProvider: fallbackStrategyProvider,
|
||||
resultFilterProvider: resultFilterProvider,
|
||||
|
|
|
@ -23,7 +23,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataAPIKey configData => (ConfigurationDataAPIKey)base.configData;
|
||||
|
||||
public Milkie(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Milkie(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "milkie",
|
||||
name: "Milkie",
|
||||
description: "Milkie.cc (ME) is private torrent tracker for 0day / general",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAPIKey())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -33,7 +33,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private ConfigurationDataBasicLogin ConfigData => (ConfigurationDataBasicLogin)configData;
|
||||
|
||||
public MoreThanTV(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps)
|
||||
public MoreThanTV(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "morethantv",
|
||||
name: "MoreThanTV",
|
||||
description: "Private torrent tracker for TV / MOVIES, and the internal tracker for the release group DRACULA.",
|
||||
|
@ -53,6 +54,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataMyAnonamouse configData => (ConfigurationDataMyAnonamouse)base.configData;
|
||||
|
||||
public MyAnonamouse(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps)
|
||||
public MyAnonamouse(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "myanonamouse",
|
||||
name: "MyAnonamouse",
|
||||
description: "Friendliness, Warmth and Sharing",
|
||||
|
@ -40,6 +41,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataMyAnonamouse())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -41,35 +41,37 @@ namespace Jackett.Common.Indexers
|
|||
"ebook"
|
||||
};
|
||||
|
||||
public NCore(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps) :
|
||||
base(id: "ncore",
|
||||
name: "nCore",
|
||||
description: "A Hungarian private torrent site.",
|
||||
link: "https://ncore.cc/",
|
||||
caps: new TorznabCapabilities
|
||||
{
|
||||
TvSearchParams = new List<TvSearchParam>
|
||||
{
|
||||
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId
|
||||
},
|
||||
MovieSearchParams = new List<MovieSearchParam>
|
||||
{
|
||||
MovieSearchParam.Q, MovieSearchParam.ImdbId
|
||||
},
|
||||
MusicSearchParams = new List<MusicSearchParam>
|
||||
{
|
||||
MusicSearchParam.Q
|
||||
},
|
||||
BookSearchParams = new List<BookSearchParam>
|
||||
{
|
||||
BookSearchParam.Q
|
||||
}
|
||||
},
|
||||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
configData: new ConfigurationDataNCore())
|
||||
public NCore(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "ncore",
|
||||
name: "nCore",
|
||||
description: "A Hungarian private torrent site.",
|
||||
link: "https://ncore.cc/",
|
||||
caps: new TorznabCapabilities
|
||||
{
|
||||
TvSearchParams = new List<TvSearchParam>
|
||||
{
|
||||
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId
|
||||
},
|
||||
MovieSearchParams = new List<MovieSearchParam>
|
||||
{
|
||||
MovieSearchParam.Q, MovieSearchParam.ImdbId
|
||||
},
|
||||
MusicSearchParams = new List<MusicSearchParam>
|
||||
{
|
||||
MusicSearchParam.Q
|
||||
},
|
||||
BookSearchParams = new List<BookSearchParam>
|
||||
{
|
||||
BookSearchParam.Q
|
||||
}
|
||||
},
|
||||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataNCore())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
Language = "hu-hu";
|
||||
|
|
|
@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLoginWith2FA configData => (ConfigurationDataBasicLoginWith2FA)base.configData;
|
||||
|
||||
public Nebulance(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l, IProtectionService ps)
|
||||
public Nebulance(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "nebulance",
|
||||
name: "Nebulance",
|
||||
description: "At Nebulance we will change the way you think about TV",
|
||||
|
@ -40,6 +41,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWith2FA(@"If 2FA is disabled, let the field empty.
|
||||
We recommend to disable 2FA because re-login will require manual actions.
|
||||
<br/>For best results, change the 'Torrents per page' setting to 100 in your profile on the NBL webpage."))
|
||||
|
|
|
@ -116,7 +116,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://pctnew.org/"
|
||||
};
|
||||
|
||||
public NewPCT(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public NewPCT(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "newpct",
|
||||
name: "NewPCT",
|
||||
description: "NewPCT - Descargar peliculas, series y estrenos torrent gratis",
|
||||
|
@ -135,6 +136,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("windows-1252");
|
||||
|
|
|
@ -29,7 +29,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public NewRealWorld(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public NewRealWorld(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "newrealworld",
|
||||
name: "New Real World",
|
||||
description: "A German general tracker.",
|
||||
|
@ -57,6 +58,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -41,7 +41,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private ConfigurationDataNorbits ConfigData => (ConfigurationDataNorbits)configData;
|
||||
|
||||
public NorBits(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public NorBits(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "norbits",
|
||||
name: "NorBits",
|
||||
description: "NorBits is a Norwegian Private site for MOVIES / TV / GENERAL",
|
||||
|
@ -69,6 +70,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataNorbits())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -11,7 +11,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class NotWhatCD : GazelleTracker
|
||||
{
|
||||
public NotWhatCD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public NotWhatCD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "notwhatcd",
|
||||
name: "notwhat.cd",
|
||||
description: "A music tracker",
|
||||
|
@ -39,6 +40,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true)
|
||||
{
|
||||
Language = "en-us";
|
||||
|
|
|
@ -11,7 +11,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class Orpheus : GazelleTracker
|
||||
{
|
||||
public Orpheus(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Orpheus(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "orpheus",
|
||||
name: "Orpheus",
|
||||
description: "A music tracker",
|
||||
|
@ -39,6 +40,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true,
|
||||
has2Fa: true)
|
||||
{
|
||||
|
|
|
@ -28,7 +28,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public Partis(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Partis(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "partis",
|
||||
name: "Partis",
|
||||
description: "Partis is a SLOVENIAN Private Torrent Tracker",
|
||||
|
@ -56,6 +57,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public PassThePopcorn(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l, IProtectionService ps)
|
||||
public PassThePopcorn(IIndexerConfigurationService configService, Utils.Clients.WebClient c, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "passthepopcorn",
|
||||
name: "PassThePopcorn",
|
||||
description: "PassThePopcorn is a Private site for MOVIES / TV",
|
||||
|
@ -50,6 +51,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataAPILoginWithUserAndPasskeyAndFilter(@"Enter filter options below to restrict search results.
|
||||
Separate options with a space if using more than one option.<br>Filter options available:
|
||||
<br><code>GoldenPopcorn</code><br><code>Scene</code><br><code>Checked</code><br><code>Free</code>"))
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public PirateTheNet(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public PirateTheNet(IIndexerConfigurationService configService, WebClient w, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "piratethenet",
|
||||
name: "PirateTheNet",
|
||||
description: "A movie tracker",
|
||||
|
@ -47,6 +48,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay("Only the results from the first search result page are shown, adjust your profile settings to show the maximum."))
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -32,7 +32,8 @@ namespace Jackett.Common.Indexers
|
|||
private string input_username = null;
|
||||
private string input_password = null;
|
||||
|
||||
public PixelHD(IIndexerConfigurationService configService, WebClient webClient, Logger logger, IProtectionService protectionService)
|
||||
public PixelHD(IIndexerConfigurationService configService, WebClient webClient, Logger logger,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "pixelhd",
|
||||
name: "PiXELHD",
|
||||
description: "PixelHD (PxHD) is a Private Torrent Tracker for HD .MP4 MOVIES / TV",
|
||||
|
@ -46,7 +47,8 @@ namespace Jackett.Common.Indexers
|
|||
},
|
||||
configService: configService,
|
||||
logger: logger,
|
||||
p: protectionService,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
client: webClient,
|
||||
configData: new ConfigurationDataCaptchaLogin()
|
||||
)
|
||||
|
|
|
@ -27,7 +27,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataCookie configData => (ConfigurationDataCookie)base.configData;
|
||||
|
||||
public PolishTracker(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public PolishTracker(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "polishtracker",
|
||||
name: "PolishTracker",
|
||||
description: "Polish Tracker is a POLISH Private site for 0DAY / MOVIES / GENERAL",
|
||||
|
@ -55,6 +56,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -33,7 +33,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public PornoLab(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public PornoLab(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "pornolab",
|
||||
name: "PornoLab",
|
||||
description: "PornoLab is a Semi-Private Russian site for Adult content",
|
||||
|
@ -43,6 +44,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataPornolab())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("windows-1251");
|
||||
|
|
|
@ -23,7 +23,8 @@ namespace Jackett.Common.Indexers
|
|||
private string SearchUrl => SiteLink + "browse.php";
|
||||
private new ConfigurationDataPinNumber configData => (ConfigurationDataPinNumber)base.configData;
|
||||
|
||||
public PreToMe(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public PreToMe(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "pretome",
|
||||
name: "PreToMe",
|
||||
description: "BitTorrent site for High Quality, High Definition (HD) movies and TV Shows",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataPinNumber("For best results, change the 'Torrents per page' setting to 100 in 'Profile => Torrent browse settings'."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -11,7 +11,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class PrivateHD : AvistazTracker
|
||||
{
|
||||
public PrivateHD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public PrivateHD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "privatehd",
|
||||
name: "PrivateHD",
|
||||
description: "BitTorrent site for High Quality, High Definition (HD) movies and TV Shows",
|
||||
|
@ -34,7 +35,9 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps)
|
||||
p: ps,
|
||||
cs: cs
|
||||
)
|
||||
{
|
||||
AddCategoryMapping(1, TorznabCatType.Movies);
|
||||
AddCategoryMapping(1, TorznabCatType.MoviesUHD);
|
||||
|
|
|
@ -12,7 +12,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class PsyTorrents : GazelleTracker
|
||||
{
|
||||
public PsyTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public PsyTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "psytorrents",
|
||||
name: "Psytorrents",
|
||||
description: "Psytorrents (PSY) is a Private Torrent Tracker for ELECTRONIC MUSIC",
|
||||
|
@ -32,6 +33,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true)
|
||||
{
|
||||
Language = "en-us";
|
||||
|
|
|
@ -30,7 +30,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationData configData => base.configData;
|
||||
|
||||
public RarBG(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public RarBG(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "rarbg",
|
||||
name: "RARBG",
|
||||
description: "RARBG is a Public torrent site for MOVIES / TV / GENERAL",
|
||||
|
@ -58,6 +59,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("windows-1252");
|
||||
|
|
|
@ -15,7 +15,8 @@ namespace Jackett.Common.Indexers
|
|||
{
|
||||
protected override string DownloadUrl => SiteLink + "torrents.php?action=download&usetoken=" + (useTokens ? "1" : "0") + "&id=";
|
||||
|
||||
public Redacted(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Redacted(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "redacted",
|
||||
name: "Redacted",
|
||||
description: "A music tracker",
|
||||
|
@ -43,6 +44,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true,
|
||||
has2Fa: true,
|
||||
useApiKey: false
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public RevolutionTT(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public RevolutionTT(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "revolutiontt",
|
||||
name: "RevolutionTT",
|
||||
description: "The Revolution has begun",
|
||||
|
@ -53,6 +54,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin("For best results, change the 'Torrents per page' setting to 100 in your Profile."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -34,7 +34,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://rutracker.net/"
|
||||
};
|
||||
|
||||
public RuTracker(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public RuTracker(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "rutracker",
|
||||
name: "RuTracker",
|
||||
description: "RuTracker is a Semi-Private Russian torrent site with a thriving file-sharing community",
|
||||
|
@ -62,6 +63,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataRutracker())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("windows-1251");
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataPasskey configData => (ConfigurationDataPasskey)base.configData;
|
||||
|
||||
public SceneHD(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps)
|
||||
public SceneHD(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "scenehd",
|
||||
name: "SceneHD",
|
||||
description: "SceneHD is Private site for HD TV / MOVIES",
|
||||
|
@ -49,6 +50,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataPasskey("You can find the Passkey if you generate a RSS " +
|
||||
"feed link. It's the last parameter in the URL."))
|
||||
{
|
||||
|
|
|
@ -25,7 +25,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataSceneTime configData => (ConfigurationDataSceneTime)base.configData;
|
||||
|
||||
public SceneTime(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public SceneTime(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "scenetime",
|
||||
name: "SceneTime",
|
||||
description: "Always on time",
|
||||
|
@ -53,6 +54,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataSceneTime())
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -14,7 +14,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
public class SecretCinema : GazelleTracker
|
||||
{
|
||||
public SecretCinema(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public SecretCinema(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "secretcinema",
|
||||
name: "Secret Cinema",
|
||||
description: "A tracker for rare movies.",
|
||||
|
@ -34,6 +35,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: false) // ratioless tracker
|
||||
{
|
||||
Language = "en-us";
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public Shazbat(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps)
|
||||
public Shazbat(IIndexerConfigurationService configService, WebClient c, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "shazbat",
|
||||
name: "Shazbat",
|
||||
description: "Modern indexer",
|
||||
|
@ -47,6 +48,7 @@ namespace Jackett.Common.Indexers
|
|||
client: c,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSS())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -19,7 +19,8 @@ namespace Jackett.Common.Indexers
|
|||
[ExcludeFromCodeCoverage]
|
||||
internal class ShizaProject : BaseWebIndexer
|
||||
{
|
||||
public ShizaProject(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public ShizaProject(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "ShizaProject",
|
||||
name: "ShizaProject",
|
||||
description: "ShizaProject Tracker is a semi-private russian tracker and release group for anime",
|
||||
|
@ -35,6 +36,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithEmail())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -26,7 +26,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationData configData => base.configData;
|
||||
|
||||
public ShowRSS(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public ShowRSS(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "showrss",
|
||||
name: "ShowRSS",
|
||||
description: "showRSS is a service that allows you to keep track of your favorite TV shows",
|
||||
|
@ -42,6 +43,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -35,7 +35,8 @@ namespace Jackett.Common.Indexers
|
|||
set => configData = value;
|
||||
}
|
||||
|
||||
public SolidTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public SolidTorrents(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "solidtorrents",
|
||||
name: "Solid Torrents",
|
||||
description: "Solid Torrents is a Public torrent meta-search engine",
|
||||
|
@ -63,6 +64,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -44,7 +44,8 @@ namespace Jackett.Common.Indexers
|
|||
"https://www.myxz.org/"
|
||||
};
|
||||
|
||||
public SpeedApp(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public SpeedApp(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(
|
||||
id: "speedapp",
|
||||
name: "SpeedApp",
|
||||
|
@ -73,6 +74,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithEmail())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -32,7 +32,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public SpeedCD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public SpeedCD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "speedcd",
|
||||
name: "Speed.cd",
|
||||
description: "Your home now!",
|
||||
|
@ -60,6 +61,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin(
|
||||
@"Speed.Cd have increased their security. If you are having problems please check the security tab
|
||||
in your Speed.Cd profile. Eg. Geo Locking, your seedbox may be in a different country to the one where you login via your
|
||||
|
|
|
@ -29,7 +29,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public SuperBits(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps)
|
||||
public SuperBits(IIndexerConfigurationService configService, WebClient w, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "superbits",
|
||||
name: "Superbits",
|
||||
description: "Superbits is a SWEDISH Private Torrent Tracker for MOVIES / TV / GENERAL",
|
||||
|
@ -57,6 +58,7 @@ namespace Jackett.Common.Indexers
|
|||
client: w,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
private readonly Regex _seriesInfoSearchRegex = new Regex(
|
||||
@"S(?<season>\d{1,3})(?:E(?<episode>\d{1,3}))?$", RegexOptions.IgnoreCase);
|
||||
|
||||
public TVStore(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps) :
|
||||
public TVStore(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs) :
|
||||
base(id: "tvstore",
|
||||
name: "TV Store",
|
||||
description: "TV Store is a HUNGARIAN Private Torrent Tracker for TV",
|
||||
|
@ -51,6 +52,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataTVstore())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -27,7 +27,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public TVVault(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public TVVault(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "tvvault",
|
||||
name: "TV-Vault",
|
||||
description: "A TV tracker for old shows",
|
||||
|
@ -47,6 +48,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -55,12 +55,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private static readonly Uri _ApiBaseUri = new Uri("https://apibay.org/");
|
||||
|
||||
public ThePirateBay(
|
||||
IIndexerConfigurationService configService,
|
||||
WebClient client,
|
||||
Logger logger,
|
||||
IProtectionService p
|
||||
) : base(
|
||||
public ThePirateBay(IIndexerConfigurationService configService, WebClient client, Logger logger,
|
||||
IProtectionService ps, ICacheService cs) : base(
|
||||
id: "thepiratebay",
|
||||
name: "The Pirate Bay",
|
||||
description: "Pirate Bay (TPB) is the galaxy’s most resilient Public BitTorrent site",
|
||||
|
@ -87,7 +83,8 @@ namespace Jackett.Common.Indexers
|
|||
configService: configService,
|
||||
client: client,
|
||||
logger: logger,
|
||||
p: p,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationData()
|
||||
)
|
||||
{
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public Toloka(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public Toloka(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "toloka",
|
||||
name: "Toloka.to",
|
||||
description: "Toloka is a Semi-Private Ukrainian torrent site with a thriving file-sharing community",
|
||||
|
@ -59,6 +60,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataToloka())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -31,7 +31,8 @@ namespace Jackett.Common.Indexers
|
|||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public TorrenTech(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l, IProtectionService ps)
|
||||
public TorrenTech(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
|
||||
IProtectionService ps, ICacheService cs)
|
||||
: base(id: "torrentech",
|
||||
name: "Torrentech",
|
||||
description: "Torrentech (TTH) is a Private Torrent Tracker for ELECTRONIC MUSIC",
|
||||
|
@ -47,6 +48,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLoginWithRSSAndDisplay())
|
||||
{
|
||||
Encoding = Encoding.UTF8;
|
||||
|
|
|
@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
|
||||
public TorrentBytes(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public TorrentBytes(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "torrentbytes",
|
||||
name: "TorrentBytes",
|
||||
description: "A decade of TorrentBytes",
|
||||
|
@ -48,6 +49,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin("For best results, change the 'Torrents per page' setting to 100 in your profile on the TorrentBytes webpage."))
|
||||
{
|
||||
Encoding = Encoding.GetEncoding("iso-8859-1");
|
||||
|
|
|
@ -46,7 +46,8 @@ namespace Jackett.Common.Indexers
|
|||
|
||||
private new ConfigurationDataCookie configData => (ConfigurationDataCookie)base.configData;
|
||||
|
||||
public TorrentDay(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
public TorrentDay(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "torrentday",
|
||||
name: "TorrentDay",
|
||||
description: "TorrentDay (TD) is a Private site for TV / MOVIES / GENERAL",
|
||||
|
@ -74,6 +75,7 @@ namespace Jackett.Common.Indexers
|
|||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataCookie(
|
||||
"Make sure you get the cookies from the same torrent day domain as configured above."))
|
||||
{
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue