Annotate more sources as NSFW

This commit is contained in:
arkon 2020-08-10 11:44:39 -04:00
parent 66e347989c
commit 656f74cbc5
25 changed files with 57 additions and 4 deletions

View File

@ -1,5 +1,10 @@
package eu.kanade.tachiyomi.annotations package eu.kanade.tachiyomi.annotations
/**
* Annotation used to mark a Source (i.e. individual sources) or a SourceFactory (i.e. all sources
* within it) as NSFW. Used within the Tachiyomi app to prevent loading sources when parental
* controls are enabled.
*/
@Retention(AnnotationRetention.RUNTIME) @Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS) @Target(AnnotationTarget.CLASS)
annotation class Nsfw annotation class Nsfw

View File

@ -1,8 +1,10 @@
package eu.kanade.tachiyomi.extension.all.ehentai package eu.kanade.tachiyomi.extension.all.ehentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceFactory import eu.kanade.tachiyomi.source.SourceFactory
@Nsfw
class EHFactory : SourceFactory { class EHFactory : SourceFactory {
override fun createSources(): List<Source> = listOf( override fun createSources(): List<Source> = listOf(
EHentai("ja", "japanese"), EHentai("ja", "japanese"),

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.all.eromuse package eu.kanade.tachiyomi.extension.all.eromuse
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.asObservableSuccess import eu.kanade.tachiyomi.network.asObservableSuccess
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceFactory import eu.kanade.tachiyomi.source.SourceFactory
@ -12,6 +13,7 @@ import okhttp3.Response
import rx.Observable import rx.Observable
@ExperimentalStdlibApi @ExperimentalStdlibApi
@Nsfw
class EroMuseFactory : SourceFactory { class EroMuseFactory : SourceFactory {
override fun createSources(): List<Source> = listOf( override fun createSources(): List<Source> = listOf(
EroMuse("8Muses", "https://comics.8muses.com"), EroMuse("8Muses", "https://comics.8muses.com"),

View File

@ -1,8 +1,10 @@
package eu.kanade.tachiyomi.extension.all.mangadex package eu.kanade.tachiyomi.extension.all.mangadex
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceFactory import eu.kanade.tachiyomi.source.SourceFactory
@Nsfw
class MangaDexFactory : SourceFactory { class MangaDexFactory : SourceFactory {
override fun createSources(): List<Source> = listOf( override fun createSources(): List<Source> = listOf(
MangaDexEnglish(), MangaDexEnglish(),

View File

@ -1,8 +1,10 @@
package eu.kanade.tachiyomi.extension.all.nhentai package eu.kanade.tachiyomi.extension.all.nhentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceFactory import eu.kanade.tachiyomi.source.SourceFactory
@Nsfw
class NHFactory : SourceFactory { class NHFactory : SourceFactory {
override fun createSources(): List<Source> = listOf( override fun createSources(): List<Source> = listOf(
NHentai("en", "english"), NHentai("en", "english"),

View File

@ -7,6 +7,7 @@ import com.github.salomonbrys.kotson.string
import com.google.gson.Gson import com.google.gson.Gson
import com.google.gson.JsonElement import com.google.gson.JsonElement
import com.google.gson.JsonParser import com.google.gson.JsonParser
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.network.asObservableSuccess import eu.kanade.tachiyomi.network.asObservableSuccess
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -25,9 +26,10 @@ import okhttp3.RequestBody
import okhttp3.Response import okhttp3.Response
import rx.Observable import rx.Observable
open class NineHentai : HttpSource() { @Nsfw
class NineHentai : HttpSource() {
final override val baseUrl = "https://9hentai.com" override val baseUrl = "https://9hentai.com"
override val name = "NineHentai" override val name = "NineHentai"

View File

@ -1,8 +1,10 @@
package eu.kanade.tachiyomi.extension.all.simplyhentai package eu.kanade.tachiyomi.extension.all.simplyhentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceFactory import eu.kanade.tachiyomi.source.SourceFactory
@Nsfw
class SimplyHentaiFactory : SourceFactory { class SimplyHentaiFactory : SourceFactory {
override fun createSources(): List<Source> = listOf( override fun createSources(): List<Source> = listOf(
SimplyHentaiEN(), SimplyHentaiEN(),

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.eggporncomics package eu.kanade.tachiyomi.extension.en.eggporncomics
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.asObservable import eu.kanade.tachiyomi.network.asObservable
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -19,6 +20,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class Eggporncomics : ParsedHttpSource() { class Eggporncomics : ParsedHttpSource() {
override val name = "Eggporncomics" override val name = "Eggporncomics"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.hbrowse package eu.kanade.tachiyomi.extension.en.hbrowse
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -16,6 +17,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class HBrowse : ParsedHttpSource() { class HBrowse : ParsedHttpSource() {
override val name = "HBrowse" override val name = "HBrowse"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.hentai2read package eu.kanade.tachiyomi.extension.en.hentai2read
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.network.asObservableSuccess import eu.kanade.tachiyomi.network.asObservableSuccess
@ -22,6 +23,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class Hentai2Read : ParsedHttpSource() { class Hentai2Read : ParsedHttpSource() {
override val name = "Hentai2Read" override val name = "Hentai2Read"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.hentaifox package eu.kanade.tachiyomi.extension.en.hentaifox
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -16,6 +17,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class HentaiFox : ParsedHttpSource() { class HentaiFox : ParsedHttpSource() {
override val name = "HentaiFox" override val name = "HentaiFox"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.hentainexus package eu.kanade.tachiyomi.extension.en.hentainexus
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -13,6 +14,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class HentaiNexus : ParsedHttpSource() { class HentaiNexus : ParsedHttpSource() {
override val name = "HentaiNexus" override val name = "HentaiNexus"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.myhentaicomics package eu.kanade.tachiyomi.extension.en.myhentaicomics
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -14,6 +15,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class MyHentaiComics : ParsedHttpSource() { class MyHentaiComics : ParsedHttpSource() {
override val name = "MyHentaiComics" override val name = "MyHentaiComics"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.myhentaigallery package eu.kanade.tachiyomi.extension.en.myhentaigallery
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.asObservableSuccess import eu.kanade.tachiyomi.network.asObservableSuccess
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -17,6 +18,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class MyHentaiGallery : ParsedHttpSource() { class MyHentaiGallery : ParsedHttpSource() {
override val name = "MyHentaiGallery" override val name = "MyHentaiGallery"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.en.perveden package eu.kanade.tachiyomi.extension.en.perveden
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -16,6 +17,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class Perveden : ParsedHttpSource() { class Perveden : ParsedHttpSource() {
override val name = "PervEden" override val name = "PervEden"

View File

@ -4,6 +4,7 @@ import com.github.salomonbrys.kotson.fromJson
import com.github.salomonbrys.kotson.get import com.github.salomonbrys.kotson.get
import com.google.gson.Gson import com.google.gson.Gson
import com.google.gson.JsonObject import com.google.gson.JsonObject
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getArtists import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getArtists
import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getChapter import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getChapter
import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getCollection import eu.kanade.tachiyomi.extension.en.tsumino.TsuminoUtils.Companion.getCollection
@ -27,6 +28,7 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import rx.Observable import rx.Observable
@Nsfw
class Tsumino : ParsedHttpSource() { class Tsumino : ParsedHttpSource() {
override val name = "Tsumino" override val name = "Tsumino"

View File

@ -1,6 +1,7 @@
package eu.kanade.tachiyomi.extension.es.doujinyang package eu.kanade.tachiyomi.extension.es.doujinyang
import android.net.Uri import android.net.Uri
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -19,7 +20,8 @@ import okhttp3.Response
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
open class DoujinYang : ParsedHttpSource() { @Nsfw
class DoujinYang : ParsedHttpSource() {
override val name = "Doujin-Yang" override val name = "Doujin-Yang"
override val baseUrl = "https://doujin-yang.es" override val baseUrl = "https://doujin-yang.es"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.es.ikuhentai package eu.kanade.tachiyomi.extension.es.ikuhentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -14,6 +15,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class Ikuhentai : ParsedHttpSource() { class Ikuhentai : ParsedHttpSource() {
override val name = "Ikuhentai" override val name = "Ikuhentai"
override val baseUrl = "https://ikuhentai.net/" override val baseUrl = "https://ikuhentai.net/"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.es.tmohentai package eu.kanade.tachiyomi.extension.es.tmohentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -12,6 +13,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class TMOHentai : ParsedHttpSource() { class TMOHentai : ParsedHttpSource() {
override val name = "TMOHentai" override val name = "TMOHentai"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.it.hentaifantasy package eu.kanade.tachiyomi.extension.it.hentaifantasy
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
@ -19,6 +20,7 @@ import okhttp3.Response
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class HentaiFantasy : ParsedHttpSource() { class HentaiFantasy : ParsedHttpSource() {
override val name = "HentaiFantasy" override val name = "HentaiFantasy"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.it.perveden package eu.kanade.tachiyomi.extension.it.perveden
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -16,6 +17,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class Perveden : ParsedHttpSource() { class Perveden : ParsedHttpSource() {
override val name = "PervEden" override val name = "PervEden"

View File

@ -9,6 +9,7 @@ import com.github.salomonbrys.kotson.string
import com.google.gson.JsonArray import com.google.gson.JsonArray
import com.google.gson.JsonObject import com.google.gson.JsonObject
import com.google.gson.JsonParser import com.google.gson.JsonParser
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.network.asObservableSuccess import eu.kanade.tachiyomi.network.asObservableSuccess
@ -30,6 +31,7 @@ import okhttp3.RequestBody
import okhttp3.Response import okhttp3.Response
import rx.Observable import rx.Observable
@Nsfw
class Hipercool : HttpSource() { class Hipercool : HttpSource() {
// Hardcode the id because the language wasn't specific. // Hardcode the id because the language wasn't specific.

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.pt.mundohentai package eu.kanade.tachiyomi.extension.pt.mundohentai
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -14,6 +15,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class MundoHentai : ParsedHttpSource() { class MundoHentai : ParsedHttpSource() {
override val name = "Mundo Hentai" override val name = "Mundo Hentai"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.ru.nudemoon package eu.kanade.tachiyomi.extension.ru.nudemoon
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -16,6 +17,7 @@ import okhttp3.Response
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class Nudemoon : ParsedHttpSource() { class Nudemoon : ParsedHttpSource() {
override val name = "Nude-Moon" override val name = "Nude-Moon"

View File

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.extension.vi.hentaivn package eu.kanade.tachiyomi.extension.vi.hentaivn
import eu.kanade.tachiyomi.annotations.Nsfw
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
@ -17,6 +18,7 @@ import okhttp3.Request
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
@Nsfw
class HentaiVN : ParsedHttpSource() { class HentaiVN : ParsedHttpSource() {
override val baseUrl = "https://hentaivn.net" override val baseUrl = "https://hentaivn.net"