├── .dockerignore ├── .git-blame-ignore-revs ├── .github ├── CODEOWNERS ├── FUNDING.yml ├── pull_request_template.md └── workflows │ ├── docker-alpha.yml │ ├── docker-beta.yml │ ├── merge-preview.yml │ ├── release-docker.yml │ └── release-java.yml ├── .gitignore ├── .scalafmt.conf ├── CONFIGURATION.md ├── LICENSE.md ├── README.md ├── docker ├── Dockerfile └── entrypoint.sh ├── project ├── build.properties └── plugins.sbt ├── src ├── main │ ├── resources │ │ ├── config-template.yaml │ │ └── logback.xml │ └── scala │ │ ├── PingTokenSync.scala │ │ ├── PlexTokenDeleteSync.scala │ │ ├── PlexTokenSync.scala │ │ ├── Server.scala │ │ ├── configuration │ │ ├── Configuration.scala │ │ ├── ConfigurationReader.scala │ │ ├── ConfigurationRedactor.scala │ │ ├── ConfigurationUtils.scala │ │ ├── FileAndSystemPropertyReader.scala │ │ ├── Keys.scala │ │ ├── LanguageProfile.scala │ │ ├── QualityProfile.scala │ │ ├── RootFolder.scala │ │ └── SystemPropertyReader.scala │ │ ├── http │ │ └── HttpClient.scala │ │ ├── model │ │ ├── GraphQLQuery.scala │ │ └── Item.scala │ │ ├── plex │ │ ├── MediaContainer.scala │ │ ├── PlexUtils.scala │ │ ├── RssFeedGenerated.scala │ │ ├── TokenWatchlist.scala │ │ ├── TokenWatchlistFriend.scala │ │ ├── TokenWatchlistItem.scala │ │ ├── User.scala │ │ └── Watchlist.scala │ │ ├── radarr │ │ ├── AddOptions.scala │ │ ├── RadarrConversions.scala │ │ ├── RadarrDelete.scala │ │ ├── RadarrMovie.scala │ │ ├── RadarrMovieExclusion.scala │ │ ├── RadarrPost.scala │ │ └── RadarrUtils.scala │ │ └── sonarr │ │ ├── SonarrAddOptions.scala │ │ ├── SonarrConversions.scala │ │ ├── SonarrPost.scala │ │ ├── SonarrSeries.scala │ │ └── SonarrUtils.scala └── test │ ├── resources │ ├── empty-watchlist-from-token.json │ ├── exclusions.json │ ├── importlistexclusion.json │ ├── plex-get-all-friends.json │ ├── plex-get-watchlist-from-friend-page-1.json │ ├── plex-get-watchlist-from-friend.json │ ├── quality-profile.json │ ├── radarr.json │ ├── rootFolder.json │ ├── rss-feed-generated.json │ ├── self-watchlist-from-token.json │ ├── single-item-plex-metadata.json │ ├── single-item-plex-metadata2.json │ ├── sonarr-language-profile.json │ ├── sonarr.json │ ├── tag-response.json │ └── watchlist.json │ └── scala │ ├── PlexTokenSyncSpec.scala │ ├── configuration │ └── ConfigurationUtilsSpec.scala │ ├── model │ └── ItemSpec.scala │ ├── plex │ └── PlexUtilsSpec.scala │ ├── radarr │ └── RadarrUtilsSpec.scala │ └── sonarr │ └── SonarrUtilsSpec.scala └── watchlistarr.png /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.dockerignore -------------------------------------------------------------------------------- /.git-blame-ignore-revs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.git-blame-ignore-revs -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | @nylonee 2 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [nylonee] 2 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/docker-alpha.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/workflows/docker-alpha.yml -------------------------------------------------------------------------------- /.github/workflows/docker-beta.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/workflows/docker-beta.yml -------------------------------------------------------------------------------- /.github/workflows/merge-preview.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/workflows/merge-preview.yml -------------------------------------------------------------------------------- /.github/workflows/release-docker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/workflows/release-docker.yml -------------------------------------------------------------------------------- /.github/workflows/release-java.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.github/workflows/release-java.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /CONFIGURATION.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/CONFIGURATION.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/README.md -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/docker/Dockerfile -------------------------------------------------------------------------------- /docker/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/docker/entrypoint.sh -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version = 1.9.3 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /src/main/resources/config-template.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/resources/config-template.yaml -------------------------------------------------------------------------------- /src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/resources/logback.xml -------------------------------------------------------------------------------- /src/main/scala/PingTokenSync.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/PingTokenSync.scala -------------------------------------------------------------------------------- /src/main/scala/PlexTokenDeleteSync.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/PlexTokenDeleteSync.scala -------------------------------------------------------------------------------- /src/main/scala/PlexTokenSync.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/PlexTokenSync.scala -------------------------------------------------------------------------------- /src/main/scala/Server.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/Server.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/Configuration.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/Configuration.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/ConfigurationReader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/ConfigurationReader.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/ConfigurationRedactor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/ConfigurationRedactor.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/ConfigurationUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/ConfigurationUtils.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/FileAndSystemPropertyReader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/FileAndSystemPropertyReader.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/Keys.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/Keys.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/LanguageProfile.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/LanguageProfile.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/QualityProfile.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/QualityProfile.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/RootFolder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/RootFolder.scala -------------------------------------------------------------------------------- /src/main/scala/configuration/SystemPropertyReader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/configuration/SystemPropertyReader.scala -------------------------------------------------------------------------------- /src/main/scala/http/HttpClient.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/http/HttpClient.scala -------------------------------------------------------------------------------- /src/main/scala/model/GraphQLQuery.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/model/GraphQLQuery.scala -------------------------------------------------------------------------------- /src/main/scala/model/Item.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/model/Item.scala -------------------------------------------------------------------------------- /src/main/scala/plex/MediaContainer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/MediaContainer.scala -------------------------------------------------------------------------------- /src/main/scala/plex/PlexUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/PlexUtils.scala -------------------------------------------------------------------------------- /src/main/scala/plex/RssFeedGenerated.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/RssFeedGenerated.scala -------------------------------------------------------------------------------- /src/main/scala/plex/TokenWatchlist.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/TokenWatchlist.scala -------------------------------------------------------------------------------- /src/main/scala/plex/TokenWatchlistFriend.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/TokenWatchlistFriend.scala -------------------------------------------------------------------------------- /src/main/scala/plex/TokenWatchlistItem.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/TokenWatchlistItem.scala -------------------------------------------------------------------------------- /src/main/scala/plex/User.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/User.scala -------------------------------------------------------------------------------- /src/main/scala/plex/Watchlist.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/plex/Watchlist.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/AddOptions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/AddOptions.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrConversions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrConversions.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrDelete.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrDelete.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrMovie.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrMovie.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrMovieExclusion.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrMovieExclusion.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrPost.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrPost.scala -------------------------------------------------------------------------------- /src/main/scala/radarr/RadarrUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/radarr/RadarrUtils.scala -------------------------------------------------------------------------------- /src/main/scala/sonarr/SonarrAddOptions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/sonarr/SonarrAddOptions.scala -------------------------------------------------------------------------------- /src/main/scala/sonarr/SonarrConversions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/sonarr/SonarrConversions.scala -------------------------------------------------------------------------------- /src/main/scala/sonarr/SonarrPost.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/sonarr/SonarrPost.scala -------------------------------------------------------------------------------- /src/main/scala/sonarr/SonarrSeries.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/sonarr/SonarrSeries.scala -------------------------------------------------------------------------------- /src/main/scala/sonarr/SonarrUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/main/scala/sonarr/SonarrUtils.scala -------------------------------------------------------------------------------- /src/test/resources/empty-watchlist-from-token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/empty-watchlist-from-token.json -------------------------------------------------------------------------------- /src/test/resources/exclusions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/exclusions.json -------------------------------------------------------------------------------- /src/test/resources/importlistexclusion.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/importlistexclusion.json -------------------------------------------------------------------------------- /src/test/resources/plex-get-all-friends.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/plex-get-all-friends.json -------------------------------------------------------------------------------- /src/test/resources/plex-get-watchlist-from-friend-page-1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/plex-get-watchlist-from-friend-page-1.json -------------------------------------------------------------------------------- /src/test/resources/plex-get-watchlist-from-friend.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/plex-get-watchlist-from-friend.json -------------------------------------------------------------------------------- /src/test/resources/quality-profile.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/quality-profile.json -------------------------------------------------------------------------------- /src/test/resources/radarr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/radarr.json -------------------------------------------------------------------------------- /src/test/resources/rootFolder.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/rootFolder.json -------------------------------------------------------------------------------- /src/test/resources/rss-feed-generated.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/rss-feed-generated.json -------------------------------------------------------------------------------- /src/test/resources/self-watchlist-from-token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/self-watchlist-from-token.json -------------------------------------------------------------------------------- /src/test/resources/single-item-plex-metadata.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/single-item-plex-metadata.json -------------------------------------------------------------------------------- /src/test/resources/single-item-plex-metadata2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/single-item-plex-metadata2.json -------------------------------------------------------------------------------- /src/test/resources/sonarr-language-profile.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/sonarr-language-profile.json -------------------------------------------------------------------------------- /src/test/resources/sonarr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/sonarr.json -------------------------------------------------------------------------------- /src/test/resources/tag-response.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/tag-response.json -------------------------------------------------------------------------------- /src/test/resources/watchlist.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/resources/watchlist.json -------------------------------------------------------------------------------- /src/test/scala/PlexTokenSyncSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/PlexTokenSyncSpec.scala -------------------------------------------------------------------------------- /src/test/scala/configuration/ConfigurationUtilsSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/configuration/ConfigurationUtilsSpec.scala -------------------------------------------------------------------------------- /src/test/scala/model/ItemSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/model/ItemSpec.scala -------------------------------------------------------------------------------- /src/test/scala/plex/PlexUtilsSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/plex/PlexUtilsSpec.scala -------------------------------------------------------------------------------- /src/test/scala/radarr/RadarrUtilsSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/radarr/RadarrUtilsSpec.scala -------------------------------------------------------------------------------- /src/test/scala/sonarr/SonarrUtilsSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/src/test/scala/sonarr/SonarrUtilsSpec.scala -------------------------------------------------------------------------------- /watchlistarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nylonee/watchlistarr/HEAD/watchlistarr.png --------------------------------------------------------------------------------