From 9fb3b53a613a54e716429844f61cba0e9c2abcb6 Mon Sep 17 00:00:00 2001 From: Xavier Fontanet Date: Tue, 11 Oct 2022 22:12:43 +0200 Subject: [PATCH] Initial commit --- src/main/.DS_Store | Bin 0 -> 6148 bytes src/main/java/.DS_Store | Bin 0 -> 6148 bytes .../googledrive/example/GoogleDriveUtils.java | 82 ++ src/main/java/tv/.DS_Store | Bin 0 -> 6148 bytes src/main/java/tv/mangrana/.DS_Store | Bin 0 -> 6148 bytes .../tv/mangrana/config/ConfigFileLoader.java | 65 ++ .../config/LocalEnvironmentManager.java | 19 + .../IncorrectWorkingReferencesException.java | 7 + .../exception/NoElementFoundException.java | 7 + .../exception/TooMuchTriesException.java | 7 + src/main/java/tv/mangrana/google/.DS_Store | Bin 0 -> 6148 bytes .../java/tv/mangrana/google/api/.DS_Store | Bin 0 -> 6148 bytes .../google/api/client/QuickTester.java | 36 + .../client/gateway/GoogleDriveApiGateway.java | 140 +++ .../plex/url/PlexCommandLauncher.java | 117 +++ .../plex/url/PlexLibrarySectionsResolver.java | 54 ++ .../client/gateway/RadarrAPIInterface.java | 38 + .../api/client/gateway/RadarrApiGateway.java | 43 + .../schema/command/RefreshMoviesCommand.java | 26 + .../api/schema/movie/AlternateTitle.java | 257 +++++ .../radarr/api/schema/movie/Image.java | 142 +++ .../radarr/api/schema/movie/Imdb.java | 142 +++ .../radarr/api/schema/movie/Language.java | 119 +++ .../api/schema/movie/MovieResource.java | 834 ++++++++++++++++ .../api/schema/movie/OriginalLanguage.java | 119 +++ .../radarr/api/schema/movie/Ratings.java | 142 +++ .../api/schema/movie/RottenTomatoes.java | 142 +++ .../radarr/api/schema/movie/Tmdb.java | 142 +++ .../api/schema/queue/AlternateTitle.java | 257 +++++ .../radarr/api/schema/queue/Collection.java | 144 +++ .../radarr/api/schema/queue/Image.java | 119 +++ .../radarr/api/schema/queue/Imdb.java | 142 +++ .../radarr/api/schema/queue/Language.java | 119 +++ .../radarr/api/schema/queue/Language__1.java | 119 +++ .../radarr/api/schema/queue/Metacritic.java | 142 +++ .../radarr/api/schema/queue/Movie.java | 903 ++++++++++++++++++ .../api/schema/queue/OriginalLanguage.java | 119 +++ .../radarr/api/schema/queue/Quality.java | 119 +++ .../radarr/api/schema/queue/Quality__1.java | 188 ++++ .../queue/QueueResourcePagingResource.java | 213 +++++ .../radarr/api/schema/queue/Ratings.java | 165 ++++ .../radarr/api/schema/queue/Record.java | 489 ++++++++++ .../radarr/api/schema/queue/Revision.java | 142 +++ .../api/schema/queue/RottenTomatoes.java | 142 +++ .../api/schema/queue/StatusMessage.java | 121 +++ .../radarr/api/schema/queue/Tmdb.java | 142 +++ .../client/gateway/SonarrAPIInterface.java | 53 + .../api/client/gateway/SonarrApiGateway.java | 60 ++ .../schema/command/RefreshSerieCommand.java | 24 + .../sonarr/api/schema/history/Data.java | 533 +++++++++++ .../sonarr/api/schema/history/Language.java | 119 +++ .../sonarr/api/schema/history/Quality.java | 119 +++ .../sonarr/api/schema/history/Quality__1.java | 165 ++++ .../sonarr/api/schema/history/Record.java | 349 +++++++ .../sonarr/api/schema/history/Revision.java | 142 +++ .../api/schema/history/SonarrHistory.java | 213 +++++ .../sonarr/api/schema/queue/Language.java | 119 +++ .../sonarr/api/schema/queue/Quality.java | 119 +++ .../sonarr/api/schema/queue/Quality__1.java | 165 ++++ .../sonarr/api/schema/queue/Record.java | 466 +++++++++ .../sonarr/api/schema/queue/Revision.java | 142 +++ .../sonarr/api/schema/queue/SonarrQueue.java | 213 +++++ .../api/schema/queue/StatusMessage.java | 121 +++ .../sonarr/api/schema/series/Image.java | 142 +++ .../sonarr/api/schema/series/Ratings.java | 119 +++ .../sonarr/api/schema/series/Season.java | 142 +++ .../sonarr/api/schema/series/SonarrSerie.java | 857 +++++++++++++++++ .../sonarr/api/schema/series/Statistics.java | 236 +++++ .../api/schema/series/Statistics__1.java | 236 +++++ .../java/tv/mangrana/utils/EasyLogger.java | 31 + src/main/java/tv/mangrana/utils/Output.java | 33 + .../java/tv/mangrana/utils/StringCaptor.java | 33 + src/main/java/tv/mangrana/utils/Waiter.java | 21 + .../tv/mangrana/utils/rest/APIInterface.java | 14 + .../utils/rest/APIProxyBuilderSingleton.java | 45 + .../utils/schema/ClassGeneratorFromJson.java | 44 + .../utils/schema/ClientSchemaGenerator.java | 83 ++ .../tv/mangrana/utils/yml/FakeYmlLoader.java | 56 ++ .../tv/mangrana/utils/yml/YmlFileLoader.java | 48 + 79 files changed, 11727 insertions(+) create mode 100644 src/main/.DS_Store create mode 100644 src/main/java/.DS_Store create mode 100644 src/main/java/org/o7planning/googledrive/example/GoogleDriveUtils.java create mode 100644 src/main/java/tv/.DS_Store create mode 100644 src/main/java/tv/mangrana/.DS_Store create mode 100644 src/main/java/tv/mangrana/config/ConfigFileLoader.java create mode 100644 src/main/java/tv/mangrana/config/LocalEnvironmentManager.java create mode 100644 src/main/java/tv/mangrana/exception/IncorrectWorkingReferencesException.java create mode 100644 src/main/java/tv/mangrana/exception/NoElementFoundException.java create mode 100644 src/main/java/tv/mangrana/exception/TooMuchTriesException.java create mode 100644 src/main/java/tv/mangrana/google/.DS_Store create mode 100644 src/main/java/tv/mangrana/google/api/.DS_Store create mode 100644 src/main/java/tv/mangrana/google/api/client/QuickTester.java create mode 100644 src/main/java/tv/mangrana/google/api/client/gateway/GoogleDriveApiGateway.java create mode 100644 src/main/java/tv/mangrana/plex/url/PlexCommandLauncher.java create mode 100644 src/main/java/tv/mangrana/plex/url/PlexLibrarySectionsResolver.java create mode 100644 src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrAPIInterface.java create mode 100644 src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrApiGateway.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/command/RefreshMoviesCommand.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/AlternateTitle.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/Image.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/Imdb.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/Language.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/MovieResource.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/OriginalLanguage.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/Ratings.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/RottenTomatoes.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/movie/Tmdb.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/AlternateTitle.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Collection.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Image.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Imdb.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Language.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Language__1.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Metacritic.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Movie.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/OriginalLanguage.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Quality.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Quality__1.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/QueueResourcePagingResource.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Ratings.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Record.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Revision.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/RottenTomatoes.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/StatusMessage.java create mode 100644 src/main/java/tv/mangrana/radarr/api/schema/queue/Tmdb.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrAPIInterface.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrApiGateway.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/command/RefreshSerieCommand.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Data.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Language.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Quality.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Quality__1.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Record.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/Revision.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/history/SonarrHistory.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/Language.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality__1.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/Record.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/Revision.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/SonarrQueue.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/queue/StatusMessage.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/Image.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/Ratings.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/Season.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/SonarrSerie.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics.java create mode 100644 src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics__1.java create mode 100644 src/main/java/tv/mangrana/utils/EasyLogger.java create mode 100644 src/main/java/tv/mangrana/utils/Output.java create mode 100644 src/main/java/tv/mangrana/utils/StringCaptor.java create mode 100644 src/main/java/tv/mangrana/utils/Waiter.java create mode 100644 src/main/java/tv/mangrana/utils/rest/APIInterface.java create mode 100644 src/main/java/tv/mangrana/utils/rest/APIProxyBuilderSingleton.java create mode 100644 src/main/java/tv/mangrana/utils/schema/ClassGeneratorFromJson.java create mode 100644 src/main/java/tv/mangrana/utils/schema/ClientSchemaGenerator.java create mode 100644 src/main/java/tv/mangrana/utils/yml/FakeYmlLoader.java create mode 100644 src/main/java/tv/mangrana/utils/yml/YmlFileLoader.java diff --git a/src/main/.DS_Store b/src/main/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..eb49542c4c32a5a00e07453dba72bb7f593cb30e GIT binary patch literal 6148 zcmeHK%SyvQ6rHivBov_w1>Fs}E!fsaDQ-fnKVU=`Dm5WRqcKyOwpo-y_WDEqh~MMA zGZV2`w<7jlm^t@3lR1!iFvhqyiCT=+8DlmyM2^Z5LHE+onn_0FI7XOf!!VH{*l#BG z*8#u1${tz3rY!jS{oyc)vvITe&etl{^$p8%teSP}Kgir42jfZR1*2=UE~HGtQV+t* zc#!w&TcI_;x|IOrVD8)DXN zHyh%x+n&!IdwXyH(+-c=(~O)zlfj5 zyCemtdlqqbko@j)cS-Yu<`Tvj_os1(F_$rBLqp`KtPmVt>8hDvM2>Srsf<8>k49-? ze19GA+iNUmv#6MizJC8CZ?`{qt=`z!v@FMJTKB<|EP_1DrxQOM-=cLTWg1m_7+ojB zV&HC{%PbF*Y&cd4Nj!v*yPG77W#P+d7Ee@epdF55I|FxbKJWCp$1QQ#J6W{E{IuI{ ziKEl*V&T|3`v+&2gXi=mldqah4rD9YGFZVIC~7maV4S5gdjz|Rtzrm?0b+m{AO_Z+ z0aF_6=Grqs1P}wnz;_1ld=StOJ%go2b#y?7*Jt!M5K%zKw*;av=ou_Ef(L}_R6w1| z%@c#`bQl*V&NEnQ)ai_?m0=#Ua`kxOYIPVFDx7goBlW}pF|f=)U7Ie}{|oqKRzC8V zQ^+C)h=G5`0B`hzz7Lx+we`pLu+|D_571CBu0#a{^rcGx7 SCOPES = Collections.singletonList(DriveScopes.DRIVE); + + private static final String CREDENTIALS_FILE_PATH = "/credentials.json"; + + private static final String TOKENS_DIRECTORY_PATH = "tokens"; + + // Global instance of the HTTP transport. + private static HttpTransport HTTP_TRANSPORT; + + private static Drive _driveService; + + static { + try { + HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport(); + } catch (Throwable t) { + t.printStackTrace(); + System.exit(1); + } + } + + public static Credential getCredentials() throws IOException { + + // Load client secrets. + InputStream in = GoogleDriveUtils.class.getResourceAsStream(CREDENTIALS_FILE_PATH); + if (in == null) { + throw new FileNotFoundException("Resource not found: " + CREDENTIALS_FILE_PATH); + } + GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in)); + + // Build flow and trigger user authorization request. + GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( + HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES) + .setDataStoreFactory(new FileDataStoreFactory(new java.io.File(TOKENS_DIRECTORY_PATH))) + .setAccessType("offline") + .build(); + LocalServerReceiver receiver = new LocalServerReceiver.Builder().setPort(8888).build(); + Credential credential = new AuthorizationCodeInstalledApp(flow, receiver).authorize("user"); + //returns an authorized Credential object. + return credential; + } + + public static Drive getDriveService() throws IOException { + if (_driveService != null) { + return _driveService; + } + Credential credential = getCredentials(); + // + _driveService = new Drive.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential) // + .setApplicationName(APPLICATION_NAME).build(); + return _driveService; + } + +} \ No newline at end of file diff --git a/src/main/java/tv/.DS_Store b/src/main/java/tv/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..edadf359b22405da9acb8b816d148619ad074c78 GIT binary patch literal 6148 zcmeHKISv9b477n_B^pY~e1RWC2wuPkxFi}52}HjY@8W5Uj{>yNL4(GUGl}C#lquG0 z5z*;&I}sU)NCP*Nn+;vFee;g>GNM2@&N$0TjZv@83Q&Q6P{6(q1#Vaq+d%(xVDJ_II6&A9bMGa9#R9;Z z*ajj3)1U%_s@Y;_&=D`0R}?9+IgJS+5%s~E$0q5!`vwtyc`3)9AjbSca;(5S$#6?g!as}*(t literal 0 HcmV?d00001 diff --git a/src/main/java/tv/mangrana/.DS_Store b/src/main/java/tv/mangrana/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5baa6665713bc9d21202a11a4917c8f8eae39cbb GIT binary patch literal 6148 zcmeHKOG-mQ5Ue&q0@-Bga<1SFh7eDX3#f^Uz{3dY{;fQhN3;5aBs?@LH&P8fHPh2I z!_?ySYXG)>-`@f&01LV!K75#(@4HXzsv?f&XY7W@<8kolb!}Y)=g#ne7aaDlr~DlT z9Por^yq#`bJWvTzKnh3!DIf);z^@9hX1gtxi5jJV6p#Yn3i$V-(H(o?m>8c94$%S- z=M0B&9=!yyd4Sjp$3#YGmQ-R=ty&CAI^(VKdf}LubXeTXbLwWR4#nbj##^MrdZI=t zAO+49nB{Wi_5Y6kL;rtH(n< configurationsMap; + + public ConfigFileLoader() throws IncorrectWorkingReferencesException { + loadFromFile(false); + } + private ConfigFileLoader(boolean silently) throws IncorrectWorkingReferencesException { + loadFromFile(silently); + } + public ConfigFileLoader refresh() throws IncorrectWorkingReferencesException { + return loadFromFile(true); + } + public static ConfigFileLoader getFreshConfig() throws IncorrectWorkingReferencesException { + return new ConfigFileLoader(true); + } + + private ConfigFileLoader loadFromFile(boolean silently) throws IncorrectWorkingReferencesException { + File configFile = new File(System.getProperty("user.dir") + + CONFIG_FOLDER.concat("/").concat(CONFIG_FILE)); + + configurationsMap = FakeYmlLoader.getEnumMapFromFile(configFile, ProjectConfiguration.class, silently); + + return this; + } + + public String getConfig(ProjectConfiguration key) { + return configurationsMap.get(key); + } + +} diff --git a/src/main/java/tv/mangrana/config/LocalEnvironmentManager.java b/src/main/java/tv/mangrana/config/LocalEnvironmentManager.java new file mode 100644 index 0000000..39c724d --- /dev/null +++ b/src/main/java/tv/mangrana/config/LocalEnvironmentManager.java @@ -0,0 +1,19 @@ +package tv.mangrana.config; + + +import org.apache.commons.lang.StringUtils; + +public class LocalEnvironmentManager { + + private LocalEnvironmentManager(){} + + public static final String NAS_ACCESS_FOLDER_FROM_MAC = "Volumes"; + + public static boolean isLocal () { + String envVar = System.getenv("ENV"); + return + StringUtils.isNotEmpty(envVar) + && envVar.equals("local"); + } + +} diff --git a/src/main/java/tv/mangrana/exception/IncorrectWorkingReferencesException.java b/src/main/java/tv/mangrana/exception/IncorrectWorkingReferencesException.java new file mode 100644 index 0000000..0956575 --- /dev/null +++ b/src/main/java/tv/mangrana/exception/IncorrectWorkingReferencesException.java @@ -0,0 +1,7 @@ +package tv.mangrana.exception; + +public class IncorrectWorkingReferencesException extends Exception { + public IncorrectWorkingReferencesException(String s) { + super(s); + } +} diff --git a/src/main/java/tv/mangrana/exception/NoElementFoundException.java b/src/main/java/tv/mangrana/exception/NoElementFoundException.java new file mode 100644 index 0000000..26f5c42 --- /dev/null +++ b/src/main/java/tv/mangrana/exception/NoElementFoundException.java @@ -0,0 +1,7 @@ +package tv.mangrana.exception; + +public class NoElementFoundException extends Exception { + public NoElementFoundException(String msg) { + super(msg); + } +} diff --git a/src/main/java/tv/mangrana/exception/TooMuchTriesException.java b/src/main/java/tv/mangrana/exception/TooMuchTriesException.java new file mode 100644 index 0000000..ad45a88 --- /dev/null +++ b/src/main/java/tv/mangrana/exception/TooMuchTriesException.java @@ -0,0 +1,7 @@ +package tv.mangrana.exception; + +public class TooMuchTriesException extends Exception { + public TooMuchTriesException(String msg) { + super(msg); + } +} diff --git a/src/main/java/tv/mangrana/google/.DS_Store b/src/main/java/tv/mangrana/google/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..47b661d597ceecd6fc4e101f1c9a6c3f0ecb1b4f GIT binary patch literal 6148 zcmeHK%}T>S5Z-O8Nhm@N3Oz1(E!b8o6fYsx7cim+m70*E!I&*gY7eE5v%Zi|;`2DO zy8(+ii`W_1{pNQ!`$6`HF~l-IVv@R?%GhpBqMShBcDa7jKKPcW+wL6 z0l&S;LN;SbwEX`4X_6Pc-Y0J~TRXd!5>>two| zxclcaE5an3&Q(DYPa);*Cdp#C^yMOpb5$GYfaBQC#O|c@5@SDziuMRM}M)Au&J<5Cg=(b~9kk z1-rf7G|=ja0b-zr0o)%1G(^u}sZnhm(BbtN<1IuK(D5ySC=7ZAON|f#;kp!1mvZyO z;JO_A!sK}dOO3jmaWylHV`i=%FI>$IexcGC_cT&Z3=jjG3^cXr;`x68zfA2Tf3t)v zVt^Rk8QSp}-Am;vDFo4h-G`09OdRVeY*I zuvh?C6X!rgU>a0lP&Hc&4Laf_^J?N87`>Hi$N9z6MQb2ODnJEp6?lwg zXZ8OD{!9OVOX7+OP=SA?fUbtup~sW5wl list = Optional.ofNullable( + service.teamdrives().list().execute().getTeamDrives()) + .orElseThrow(() -> new NoElementFoundException("No TDs found :(")); + + list.forEach(td -> log(td.getName())); + log("Ok, if you have been seeing some TDs in the output, that means GoogleDriveUtils works \uD83D\uDC4D"); + } + +} diff --git a/src/main/java/tv/mangrana/google/api/client/gateway/GoogleDriveApiGateway.java b/src/main/java/tv/mangrana/google/api/client/gateway/GoogleDriveApiGateway.java new file mode 100644 index 0000000..d821671 --- /dev/null +++ b/src/main/java/tv/mangrana/google/api/client/gateway/GoogleDriveApiGateway.java @@ -0,0 +1,140 @@ +package tv.mangrana.google.api.client.gateway; + +import tv.mangrana.exception.NoElementFoundException; +import com.google.api.services.drive.Drive; +import com.google.api.services.drive.model.File; +import com.google.api.services.drive.model.FileList; +import org.apache.commons.collections4.CollectionUtils; +import org.o7planning.googledrive.example.GoogleDriveUtils; + +import java.io.IOException; +import java.util.*; + +import static tv.mangrana.utils.Output.log; + +public class GoogleDriveApiGateway { + + Drive service; + + public enum GoogleElementType {FOLDER, VIDEO} + + public GoogleDriveApiGateway() throws IOException { + service = GoogleDriveUtils.getDriveService(); + } + + public File lookupElementById(String elementId) throws IOException { + return service.files() + .get(elementId) + .setSupportsTeamDrives(true) + .execute(); + } + + public File lookupElementByName(String elementName, GoogleElementType type, String relatedTeamDriveId) throws IOException, NoElementFoundException { + String query = "name = '" + elementName.replace("'","\\'") + "'" + + " and trashed=false" + + getTypeFilterQuery(type); + + FileList fileList = + service.files() + .list() + .setCorpora("drive") + .setTeamDriveId(relatedTeamDriveId) + .setIncludeItemsFromAllDrives(true) + .setSupportsTeamDrives(true) + .setQ(query) + .execute(); + + List files = Optional.ofNullable( + fileList.getFiles()) + .orElseThrow(() -> new NoElementFoundException("element not found by name: " + elementName)); + + if (CollectionUtils.isNotEmpty(files)) { + if (files.size() > 1) { + log("WARN: There are more than one matching element!!!"); + files.forEach(fl -> log("> element with name {0} an id {1}", fl.getName(), fl.getId())); + } + return files.get(0); + } else { + throw new NoElementFoundException("no elements in the list xO"); + } + } + + public List getChildrenFromParent(File parent, boolean onlyFolders) { + String query = + "trashed=false and "+ + (onlyFolders ? "mimeType = 'application/vnd.google-apps.folder' and " : "")+ + "'"+parent.getId()+"' in parents"; + + return getChildrenCommonCall(query); + } + + public File getChildFromParentByName(String name, File parent, boolean onlyFolder) throws NoElementFoundException { + String query = "name = '" + name.replace("'","\\'") + "'" + + " and trashed=false and "+ + (onlyFolder ? "mimeType = 'application/vnd.google-apps.folder' and " : "")+ + "'"+parent.getId()+"' in parents"; + List children = getChildrenCommonCall(query); + if (children.isEmpty()) throw new NoElementFoundException("no elements in the list xO"); + if (children.size() > 1) log("WARNING: more than one element here not expected"); + return children.get(0); + } + + private List getChildrenCommonCall(String query) { + List fullFileList = new ArrayList<>(); + String pageToken = null; + do { + try { + FileList fileList = service.files() + .list() + .setQ(query) + .setIncludeItemsFromAllDrives(true) + .setSupportsTeamDrives(true) + .setFields("nextPageToken, files(id, name)") + .setPageToken(pageToken) + .setOrderBy("name") + .execute(); + + fullFileList.addAll(fileList.getFiles()); + pageToken = fileList.getNextPageToken(); + } catch (IOException e) { + log("ERROR during api call"); + e.printStackTrace(); + } + } while (pageToken != null); + + return fullFileList; + } + + public void copyFile(String fileId, String destinationFolderId) throws IOException { + File newFileReference = new File(); + newFileReference.setParents(Collections.singletonList(destinationFolderId)); + service.files() + .copy(fileId, newFileReference) + .setSupportsTeamDrives(true) + .execute(); + } + + public File createFolder(String name, String parentFolderId) throws IOException { + File fileMetadata = new File(); + fileMetadata.setName(name); + fileMetadata.setMimeType("application/vnd.google-apps.folder"); + fileMetadata.setParents(Collections.singletonList(parentFolderId)); + return service + .files() + .create(fileMetadata) + .setSupportsTeamDrives(true) + .execute(); + } + + private String getTypeFilterQuery(GoogleElementType type) { + switch (type) { + case VIDEO: + return " and mimeType contains 'video'"; + case FOLDER: + return " and mimeType = 'application/vnd.google-apps.folder'"; + default: + return ""; + } + } + +} diff --git a/src/main/java/tv/mangrana/plex/url/PlexCommandLauncher.java b/src/main/java/tv/mangrana/plex/url/PlexCommandLauncher.java new file mode 100644 index 0000000..af74ce3 --- /dev/null +++ b/src/main/java/tv/mangrana/plex/url/PlexCommandLauncher.java @@ -0,0 +1,117 @@ +package tv.mangrana.plex.url; + +import tv.mangrana.config.ConfigFileLoader; +import tv.mangrana.exception.IncorrectWorkingReferencesException; +import tv.mangrana.utils.EasyLogger; +import org.apache.http.HttpEntity; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpUriRequest; +import org.apache.http.client.methods.RequestBuilder; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.w3c.dom.Document; +import org.xml.sax.SAXException; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import java.io.IOException; +import java.io.InputStream; +import java.net.URI; +import java.net.URISyntaxException; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.*; +import static tv.mangrana.utils.Output.log; +import static tv.mangrana.utils.rest.APIInterface.ProtocolURLMark.HTTPS; + +public class PlexCommandLauncher { + + private final EasyLogger logger; + private final ConfigFileLoader config; + private final PlexLibrarySectionsResolver sectionResolver; + + public PlexCommandLauncher(ConfigFileLoader config) { + this.config = config; + this.logger = new EasyLogger(); + this.sectionResolver = new PlexLibrarySectionsResolver(this, config); + } + + public static void main(String[] args) throws IncorrectWorkingReferencesException { + String toRefresh="/tv/Series/C/City on a Hill (2019)"; + new PlexCommandLauncher(new ConfigFileLoader()).scanByPath(toRefresh); + } + + public void scanByPath(String fullDestinationPath) { + String plexPathToRefresh = getPlexUrlPath2Refresh(fullDestinationPath); + String plexRefreshURL = getPlexRefreshURL(plexPathToRefresh); + if (plexRefreshURL==null) return; + try (CloseableHttpClient httpclient = HttpClients.createDefault()) { + HttpUriRequest httpGET = RequestBuilder.get() + .setUri(new URI(plexRefreshURL)) + .addParameter("path", plexPathToRefresh) + .addParameter("X-Plex-Token", config.getConfig(PLEX_TOKEN)) + .build(); + httpclient.execute(httpGET); + @SuppressWarnings("unused") + String urlWithTokenHidden = httpGET.getURI().toString().replaceFirst(config.getConfig(PLEX_TOKEN), "__plex_token__"); + logger.nLog("Launched URL command: {0}", httpGET.getURI().toString()); + } catch (Exception e) { + logger.nHLog("Some error has happened using the URL <{0}>", plexRefreshURL); + e.printStackTrace(); + } + } + + public String getPlexUrlPath2Refresh(String fullDestinationPath) { + Pattern p = Pattern.compile(config.getConfig(SONARR_PATHS_STARTER).concat("(.+/.+ \\(\\d{4}\\))")); + Matcher m = p.matcher(fullDestinationPath); + if (m.find()) { + String pathInPlexDockerStart = config.getConfig(PLEX_PATHS_STARTER); + return pathInPlexDockerStart.concat(m.group(1)); + } + return null; + } + + public Document retrieveSectionsInfo() { + try (CloseableHttpClient httpclient = HttpClients.createDefault()) { + HttpUriRequest httpGET = RequestBuilder.get() + .setUri(new URI(getPlexSectionsURL())) + .addParameter("X-Plex-Token", config.getConfig(PLEX_TOKEN)) + .build(); + try (CloseableHttpResponse httpResponse = httpclient.execute(httpGET)) { + final HttpEntity entity = httpResponse.getEntity(); + if (entity != null) { + try (InputStream inputStream = entity.getContent()) { + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + DocumentBuilder builder = factory.newDocumentBuilder(); + return builder.parse(inputStream); + } catch (ParserConfigurationException | SAXException e) { + log("could not get the section information from plex url"); + } + } + } + log("launched url command: "+httpGET.getURI().toString().replaceFirst(config.getConfig(PLEX_TOKEN), "__plex_token__")); + } catch (URISyntaxException | IOException e) { + log("could not refresh plex artist because of "+e.getMessage()); + e.printStackTrace(); + } + return null; + } + + private String getPlexRefreshURL(String fullDestinationPath) { + String sectionId = sectionResolver.resolveSectionByPath(fullDestinationPath); + if (sectionId==null) return null; + String host = config.getConfig(PLEX_HOST); + String uriFormat = config.getConfig(PLEX_SECTION_REFRESH_URI); + String uri = uriFormat.replaceFirst("\\{section_id}", sectionId); + return HTTPS.getMark() + host + uri; + } + + private String getPlexSectionsURL() { + String host = HTTPS.getMark() + config.getConfig(PLEX_HOST); + String uri = config.getConfig(PLEX_SECTIONS_LIST_URI); + return host + uri; + } + +} diff --git a/src/main/java/tv/mangrana/plex/url/PlexLibrarySectionsResolver.java b/src/main/java/tv/mangrana/plex/url/PlexLibrarySectionsResolver.java new file mode 100644 index 0000000..c0dcc85 --- /dev/null +++ b/src/main/java/tv/mangrana/plex/url/PlexLibrarySectionsResolver.java @@ -0,0 +1,54 @@ +package tv.mangrana.plex.url; + + +import tv.mangrana.config.ConfigFileLoader; +import tv.mangrana.utils.Output; +import com.sun.org.apache.xerces.internal.dom.DeferredElementImpl; +import org.w3c.dom.Document; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; + +import javax.xml.xpath.XPath; +import javax.xml.xpath.XPathConstants; +import javax.xml.xpath.XPathExpressionException; +import javax.xml.xpath.XPathFactory; + +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.PLEX_PATHS_STARTER; + +public class PlexLibrarySectionsResolver { + + private final PlexCommandLauncher commandLauncher; + private final ConfigFileLoader config; + + public PlexLibrarySectionsResolver(PlexCommandLauncher commandLauncher, ConfigFileLoader config) { + this.commandLauncher = commandLauncher; + this.config = config; + } + + public String resolveSectionByPath(String fullDestinationPath) { + final String plexPathStarter = config.getConfig(PLEX_PATHS_STARTER); + String keyFolder = fullDestinationPath.replaceFirst(plexPathStarter,"").split("/")[1]; + Document xmlDocument = commandLauncher.retrieveSectionsInfo(); + XPath xPath = XPathFactory.newInstance().newXPath(); + String startingLocationText = plexPathStarter.concat("/").concat(keyFolder).concat("/"); + String directoryNodeOfLocation = getDirectoryKeyValue(xmlDocument, xPath, startingLocationText); + if (directoryNodeOfLocation == null) { + startingLocationText = plexPathStarter.concat("/").concat(keyFolder); + return getDirectoryKeyValue(xmlDocument, xPath, startingLocationText); + } else + return directoryNodeOfLocation; + } + + private String getDirectoryKeyValue(Document xmlDocument, XPath xPath, String startingLocationText) { + String expression = "/MediaContainer/Directory/Location[starts-with(@path, '"+ startingLocationText +"')]"; + try { + NodeList candidatesNodes = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET); + Node directoryNodeOfLocation = candidatesNodes.item(0).getParentNode(); + return ((DeferredElementImpl) directoryNodeOfLocation).getAttribute("key"); + } catch (XPathExpressionException | NullPointerException e) { + Output.log("could not resolve the section of the element in plex "+startingLocationText); + } + return null; + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrAPIInterface.java b/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrAPIInterface.java new file mode 100644 index 0000000..d584e55 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrAPIInterface.java @@ -0,0 +1,38 @@ +package tv.mangrana.radarr.api.client.gateway; + +import tv.mangrana.radarr.api.schema.command.RefreshMoviesCommand; +import tv.mangrana.radarr.api.schema.movie.MovieResource; +import tv.mangrana.radarr.api.schema.queue.Movie; +import tv.mangrana.radarr.api.schema.queue.QueueResourcePagingResource; +import tv.mangrana.utils.rest.APIInterface; + +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; + +/** + * For more information, visit: ... + */ +@Path("/api/v3") +public interface RadarrAPIInterface extends APIInterface { + + @GET + @Path("/queue") + @Produces({ MediaType.APPLICATION_JSON }) + QueueResourcePagingResource getQueue(@QueryParam("includeMovie") boolean includeMovie, @QueryParam("apikey") String apikey); + + @DELETE + @Path("/queue/{id}") + @Consumes({ MediaType.APPLICATION_JSON }) + void removeQueueItem(@PathParam("id") int itemId, @QueryParam("removeFromClient") boolean removeFromClient, @QueryParam("apikey") String apikey); + + @GET + @Path("/movie/{id}") + @Consumes({ MediaType.APPLICATION_JSON }) + MovieResource getMovieById(@PathParam("id") int movieId, @QueryParam("apikey") String apikey); + + @POST + @Path("/command") + @Consumes({ MediaType.APPLICATION_JSON }) + void refreshMoviesCommand(RefreshMoviesCommand command, @QueryParam("apikey") String apikey); + +} \ No newline at end of file diff --git a/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrApiGateway.java b/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrApiGateway.java new file mode 100644 index 0000000..ba26b52 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/client/gateway/RadarrApiGateway.java @@ -0,0 +1,43 @@ +package tv.mangrana.radarr.api.client.gateway; + +import tv.mangrana.config.ConfigFileLoader; +import tv.mangrana.radarr.api.schema.command.RefreshMoviesCommand; +import tv.mangrana.radarr.api.schema.movie.MovieResource; +import tv.mangrana.radarr.api.schema.queue.QueueResourcePagingResource; +import tv.mangrana.utils.rest.APIProxyBuilderSingleton; + +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.RADARR_API_HOST; +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.RADARR_API_KEY; +import static tv.mangrana.utils.Output.log; + +public class RadarrApiGateway { + + private final String apiKey; + private final RadarrAPIInterface proxy; + + public RadarrApiGateway(ConfigFileLoader config) { + apiKey = config.getConfig(RADARR_API_KEY); + proxy = APIProxyBuilderSingleton.getRadarrInterface(config.getConfig(RADARR_API_HOST)); + } + + public QueueResourcePagingResource getQueue() { + return proxy.getQueue(true, apiKey); + } + + public MovieResource getMovieById(Integer movieId) { + MovieResource movie = proxy.getMovieById(movieId, apiKey); + log("retrieved movie from radarr with id "+movieId); + return movie; + } + + public void removeQueueItem(int itemId) { + proxy.removeQueueItem(itemId, false, apiKey); + log("removed item from queue successfully: "+itemId); + } + + public void refreshMovie(int movieId) { + proxy.refreshMoviesCommand(new RefreshMoviesCommand(movieId), apiKey); + log("refreshed movie with id "+movieId); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/command/RefreshMoviesCommand.java b/src/main/java/tv/mangrana/radarr/api/schema/command/RefreshMoviesCommand.java new file mode 100644 index 0000000..6135a57 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/command/RefreshMoviesCommand.java @@ -0,0 +1,26 @@ +package tv.mangrana.radarr.api.schema.command; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.util.Collections; +import java.util.List; + +public class RefreshMoviesCommand { + @JsonProperty("name") + private final String name = "MoviesSearch"; + + @JsonProperty("movieIds") + private final List moviesIds; + + public RefreshMoviesCommand(Integer movieId) { + this.moviesIds = Collections.singletonList(movieId); + } + + public List getMoviesIds() { + return moviesIds; + } + + public String getName() { + return name; + } +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/AlternateTitle.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/AlternateTitle.java new file mode 100644 index 0000000..d5073dc --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/AlternateTitle.java @@ -0,0 +1,257 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "sourceType", + "movieId", + "title", + "sourceId", + "votes", + "voteCount", + "language", + "id" +}) +@Generated("jsonschema2pojo") +public class AlternateTitle { + + @JsonProperty("sourceType") + private String sourceType; + @JsonProperty("movieId") + private Integer movieId; + @JsonProperty("title") + private String title; + @JsonProperty("sourceId") + private Integer sourceId; + @JsonProperty("votes") + private Integer votes; + @JsonProperty("voteCount") + private Integer voteCount; + @JsonProperty("language") + private Language language; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("sourceType") + public String getSourceType() { + return sourceType; + } + + @JsonProperty("sourceType") + public void setSourceType(String sourceType) { + this.sourceType = sourceType; + } + + public AlternateTitle withSourceType(String sourceType) { + this.sourceType = sourceType; + return this; + } + + @JsonProperty("movieId") + public Integer getMovieId() { + return movieId; + } + + @JsonProperty("movieId") + public void setMovieId(Integer movieId) { + this.movieId = movieId; + } + + public AlternateTitle withMovieId(Integer movieId) { + this.movieId = movieId; + return this; + } + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public AlternateTitle withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("sourceId") + public Integer getSourceId() { + return sourceId; + } + + @JsonProperty("sourceId") + public void setSourceId(Integer sourceId) { + this.sourceId = sourceId; + } + + public AlternateTitle withSourceId(Integer sourceId) { + this.sourceId = sourceId; + return this; + } + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public AlternateTitle withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("voteCount") + public Integer getVoteCount() { + return voteCount; + } + + @JsonProperty("voteCount") + public void setVoteCount(Integer voteCount) { + this.voteCount = voteCount; + } + + public AlternateTitle withVoteCount(Integer voteCount) { + this.voteCount = voteCount; + return this; + } + + @JsonProperty("language") + public Language getLanguage() { + return language; + } + + @JsonProperty("language") + public void setLanguage(Language language) { + this.language = language; + } + + public AlternateTitle withLanguage(Language language) { + this.language = language; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public AlternateTitle withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public AlternateTitle withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(AlternateTitle.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("sourceType"); + sb.append('='); + sb.append(((this.sourceType == null)?"":this.sourceType)); + sb.append(','); + sb.append("movieId"); + sb.append('='); + sb.append(((this.movieId == null)?"":this.movieId)); + sb.append(','); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("sourceId"); + sb.append('='); + sb.append(((this.sourceId == null)?"":this.sourceId)); + sb.append(','); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("voteCount"); + sb.append('='); + sb.append(((this.voteCount == null)?"":this.voteCount)); + sb.append(','); + sb.append("language"); + sb.append('='); + sb.append(((this.language == null)?"":this.language)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.sourceId == null)? 0 :this.sourceId.hashCode())); + result = ((result* 31)+((this.sourceType == null)? 0 :this.sourceType.hashCode())); + result = ((result* 31)+((this.movieId == null)? 0 :this.movieId.hashCode())); + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.language == null)? 0 :this.language.hashCode())); + result = ((result* 31)+((this.voteCount == null)? 0 :this.voteCount.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof AlternateTitle) == false) { + return false; + } + AlternateTitle rhs = ((AlternateTitle) other); + return ((((((((((this.sourceId == rhs.sourceId)||((this.sourceId!= null)&&this.sourceId.equals(rhs.sourceId)))&&((this.sourceType == rhs.sourceType)||((this.sourceType!= null)&&this.sourceType.equals(rhs.sourceType))))&&((this.movieId == rhs.movieId)||((this.movieId!= null)&&this.movieId.equals(rhs.movieId))))&&((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes))))&&((this.language == rhs.language)||((this.language!= null)&&this.language.equals(rhs.language))))&&((this.voteCount == rhs.voteCount)||((this.voteCount!= null)&&this.voteCount.equals(rhs.voteCount))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/Image.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/Image.java new file mode 100644 index 0000000..caa02ee --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/Image.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "coverType", + "url", + "remoteUrl" +}) +@Generated("jsonschema2pojo") +public class Image { + + @JsonProperty("coverType") + private String coverType; + @JsonProperty("url") + private String url; + @JsonProperty("remoteUrl") + private String remoteUrl; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("coverType") + public String getCoverType() { + return coverType; + } + + @JsonProperty("coverType") + public void setCoverType(String coverType) { + this.coverType = coverType; + } + + public Image withCoverType(String coverType) { + this.coverType = coverType; + return this; + } + + @JsonProperty("url") + public String getUrl() { + return url; + } + + @JsonProperty("url") + public void setUrl(String url) { + this.url = url; + } + + public Image withUrl(String url) { + this.url = url; + return this; + } + + @JsonProperty("remoteUrl") + public String getRemoteUrl() { + return remoteUrl; + } + + @JsonProperty("remoteUrl") + public void setRemoteUrl(String remoteUrl) { + this.remoteUrl = remoteUrl; + } + + public Image withRemoteUrl(String remoteUrl) { + this.remoteUrl = remoteUrl; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Image withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Image.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("coverType"); + sb.append('='); + sb.append(((this.coverType == null)?"":this.coverType)); + sb.append(','); + sb.append("url"); + sb.append('='); + sb.append(((this.url == null)?"":this.url)); + sb.append(','); + sb.append("remoteUrl"); + sb.append('='); + sb.append(((this.remoteUrl == null)?"":this.remoteUrl)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.coverType == null)? 0 :this.coverType.hashCode())); + result = ((result* 31)+((this.remoteUrl == null)? 0 :this.remoteUrl.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.url == null)? 0 :this.url.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Image) == false) { + return false; + } + Image rhs = ((Image) other); + return (((((this.coverType == rhs.coverType)||((this.coverType!= null)&&this.coverType.equals(rhs.coverType)))&&((this.remoteUrl == rhs.remoteUrl)||((this.remoteUrl!= null)&&this.remoteUrl.equals(rhs.remoteUrl))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.url == rhs.url)||((this.url!= null)&&this.url.equals(rhs.url)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/Imdb.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/Imdb.java new file mode 100644 index 0000000..ed0c4d6 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/Imdb.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class Imdb { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Double value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Imdb withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Double getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Double value) { + this.value = value; + } + + public Imdb withValue(Double value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public Imdb withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Imdb withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Imdb.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Imdb) == false) { + return false; + } + Imdb rhs = ((Imdb) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/Language.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/Language.java new file mode 100644 index 0000000..f6fe9f8 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/Language.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class Language { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Language withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Language withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Language withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Language.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Language) == false) { + return false; + } + Language rhs = ((Language) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/MovieResource.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/MovieResource.java new file mode 100644 index 0000000..1c971f4 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/MovieResource.java @@ -0,0 +1,834 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "title", + "originalTitle", + "originalLanguage", + "alternateTitles", + "secondaryYearSourceId", + "sortTitle", + "sizeOnDisk", + "status", + "overview", + "digitalRelease", + "images", + "website", + "year", + "hasFile", + "youTubeTrailerId", + "studio", + "path", + "qualityProfileId", + "monitored", + "minimumAvailability", + "isAvailable", + "folderName", + "runtime", + "cleanTitle", + "imdbId", + "tmdbId", + "titleSlug", + "certification", + "genres", + "tags", + "added", + "ratings", + "id" +}) +@Generated("jsonschema2pojo") +public class MovieResource { + + @JsonProperty("title") + private String title; + @JsonProperty("originalTitle") + private String originalTitle; + @JsonProperty("originalLanguage") + private OriginalLanguage originalLanguage; + @JsonProperty("alternateTitles") + private List alternateTitles = new ArrayList(); + @JsonProperty("secondaryYearSourceId") + private Integer secondaryYearSourceId; + @JsonProperty("sortTitle") + private String sortTitle; + @JsonProperty("sizeOnDisk") + private Integer sizeOnDisk; + @JsonProperty("status") + private String status; + @JsonProperty("overview") + private String overview; + @JsonProperty("digitalRelease") + private String digitalRelease; + @JsonProperty("images") + private List images = new ArrayList(); + @JsonProperty("website") + private String website; + @JsonProperty("year") + private Integer year; + @JsonProperty("hasFile") + private Boolean hasFile; + @JsonProperty("youTubeTrailerId") + private String youTubeTrailerId; + @JsonProperty("studio") + private String studio; + @JsonProperty("path") + private String path; + @JsonProperty("qualityProfileId") + private Integer qualityProfileId; + @JsonProperty("monitored") + private Boolean monitored; + @JsonProperty("minimumAvailability") + private String minimumAvailability; + @JsonProperty("isAvailable") + private Boolean isAvailable; + @JsonProperty("folderName") + private String folderName; + @JsonProperty("runtime") + private Integer runtime; + @JsonProperty("cleanTitle") + private String cleanTitle; + @JsonProperty("imdbId") + private String imdbId; + @JsonProperty("tmdbId") + private Integer tmdbId; + @JsonProperty("titleSlug") + private String titleSlug; + @JsonProperty("certification") + private String certification; + @JsonProperty("genres") + private List genres = new ArrayList(); + @JsonProperty("tags") + private List tags = new ArrayList(); + @JsonProperty("added") + private String added; + @JsonProperty("ratings") + private Ratings ratings; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public MovieResource withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("originalTitle") + public String getOriginalTitle() { + return originalTitle; + } + + @JsonProperty("originalTitle") + public void setOriginalTitle(String originalTitle) { + this.originalTitle = originalTitle; + } + + public MovieResource withOriginalTitle(String originalTitle) { + this.originalTitle = originalTitle; + return this; + } + + @JsonProperty("originalLanguage") + public OriginalLanguage getOriginalLanguage() { + return originalLanguage; + } + + @JsonProperty("originalLanguage") + public void setOriginalLanguage(OriginalLanguage originalLanguage) { + this.originalLanguage = originalLanguage; + } + + public MovieResource withOriginalLanguage(OriginalLanguage originalLanguage) { + this.originalLanguage = originalLanguage; + return this; + } + + @JsonProperty("alternateTitles") + public List getAlternateTitles() { + return alternateTitles; + } + + @JsonProperty("alternateTitles") + public void setAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + } + + public MovieResource withAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + return this; + } + + @JsonProperty("secondaryYearSourceId") + public Integer getSecondaryYearSourceId() { + return secondaryYearSourceId; + } + + @JsonProperty("secondaryYearSourceId") + public void setSecondaryYearSourceId(Integer secondaryYearSourceId) { + this.secondaryYearSourceId = secondaryYearSourceId; + } + + public MovieResource withSecondaryYearSourceId(Integer secondaryYearSourceId) { + this.secondaryYearSourceId = secondaryYearSourceId; + return this; + } + + @JsonProperty("sortTitle") + public String getSortTitle() { + return sortTitle; + } + + @JsonProperty("sortTitle") + public void setSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + } + + public MovieResource withSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + return this; + } + + @JsonProperty("sizeOnDisk") + public Integer getSizeOnDisk() { + return sizeOnDisk; + } + + @JsonProperty("sizeOnDisk") + public void setSizeOnDisk(Integer sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + } + + public MovieResource withSizeOnDisk(Integer sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + return this; + } + + @JsonProperty("status") + public String getStatus() { + return status; + } + + @JsonProperty("status") + public void setStatus(String status) { + this.status = status; + } + + public MovieResource withStatus(String status) { + this.status = status; + return this; + } + + @JsonProperty("overview") + public String getOverview() { + return overview; + } + + @JsonProperty("overview") + public void setOverview(String overview) { + this.overview = overview; + } + + public MovieResource withOverview(String overview) { + this.overview = overview; + return this; + } + + @JsonProperty("digitalRelease") + public String getDigitalRelease() { + return digitalRelease; + } + + @JsonProperty("digitalRelease") + public void setDigitalRelease(String digitalRelease) { + this.digitalRelease = digitalRelease; + } + + public MovieResource withDigitalRelease(String digitalRelease) { + this.digitalRelease = digitalRelease; + return this; + } + + @JsonProperty("images") + public List getImages() { + return images; + } + + @JsonProperty("images") + public void setImages(List images) { + this.images = images; + } + + public MovieResource withImages(List images) { + this.images = images; + return this; + } + + @JsonProperty("website") + public String getWebsite() { + return website; + } + + @JsonProperty("website") + public void setWebsite(String website) { + this.website = website; + } + + public MovieResource withWebsite(String website) { + this.website = website; + return this; + } + + @JsonProperty("year") + public Integer getYear() { + return year; + } + + @JsonProperty("year") + public void setYear(Integer year) { + this.year = year; + } + + public MovieResource withYear(Integer year) { + this.year = year; + return this; + } + + @JsonProperty("hasFile") + public Boolean getHasFile() { + return hasFile; + } + + @JsonProperty("hasFile") + public void setHasFile(Boolean hasFile) { + this.hasFile = hasFile; + } + + public MovieResource withHasFile(Boolean hasFile) { + this.hasFile = hasFile; + return this; + } + + @JsonProperty("youTubeTrailerId") + public String getYouTubeTrailerId() { + return youTubeTrailerId; + } + + @JsonProperty("youTubeTrailerId") + public void setYouTubeTrailerId(String youTubeTrailerId) { + this.youTubeTrailerId = youTubeTrailerId; + } + + public MovieResource withYouTubeTrailerId(String youTubeTrailerId) { + this.youTubeTrailerId = youTubeTrailerId; + return this; + } + + @JsonProperty("studio") + public String getStudio() { + return studio; + } + + @JsonProperty("studio") + public void setStudio(String studio) { + this.studio = studio; + } + + public MovieResource withStudio(String studio) { + this.studio = studio; + return this; + } + + @JsonProperty("path") + public String getPath() { + return path; + } + + @JsonProperty("path") + public void setPath(String path) { + this.path = path; + } + + public MovieResource withPath(String path) { + this.path = path; + return this; + } + + @JsonProperty("qualityProfileId") + public Integer getQualityProfileId() { + return qualityProfileId; + } + + @JsonProperty("qualityProfileId") + public void setQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + } + + public MovieResource withQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + return this; + } + + @JsonProperty("monitored") + public Boolean getMonitored() { + return monitored; + } + + @JsonProperty("monitored") + public void setMonitored(Boolean monitored) { + this.monitored = monitored; + } + + public MovieResource withMonitored(Boolean monitored) { + this.monitored = monitored; + return this; + } + + @JsonProperty("minimumAvailability") + public String getMinimumAvailability() { + return minimumAvailability; + } + + @JsonProperty("minimumAvailability") + public void setMinimumAvailability(String minimumAvailability) { + this.minimumAvailability = minimumAvailability; + } + + public MovieResource withMinimumAvailability(String minimumAvailability) { + this.minimumAvailability = minimumAvailability; + return this; + } + + @JsonProperty("isAvailable") + public Boolean getIsAvailable() { + return isAvailable; + } + + @JsonProperty("isAvailable") + public void setIsAvailable(Boolean isAvailable) { + this.isAvailable = isAvailable; + } + + public MovieResource withIsAvailable(Boolean isAvailable) { + this.isAvailable = isAvailable; + return this; + } + + @JsonProperty("folderName") + public String getFolderName() { + return folderName; + } + + @JsonProperty("folderName") + public void setFolderName(String folderName) { + this.folderName = folderName; + } + + public MovieResource withFolderName(String folderName) { + this.folderName = folderName; + return this; + } + + @JsonProperty("runtime") + public Integer getRuntime() { + return runtime; + } + + @JsonProperty("runtime") + public void setRuntime(Integer runtime) { + this.runtime = runtime; + } + + public MovieResource withRuntime(Integer runtime) { + this.runtime = runtime; + return this; + } + + @JsonProperty("cleanTitle") + public String getCleanTitle() { + return cleanTitle; + } + + @JsonProperty("cleanTitle") + public void setCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + } + + public MovieResource withCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + return this; + } + + @JsonProperty("imdbId") + public String getImdbId() { + return imdbId; + } + + @JsonProperty("imdbId") + public void setImdbId(String imdbId) { + this.imdbId = imdbId; + } + + public MovieResource withImdbId(String imdbId) { + this.imdbId = imdbId; + return this; + } + + @JsonProperty("tmdbId") + public Integer getTmdbId() { + return tmdbId; + } + + @JsonProperty("tmdbId") + public void setTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + } + + public MovieResource withTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + return this; + } + + @JsonProperty("titleSlug") + public String getTitleSlug() { + return titleSlug; + } + + @JsonProperty("titleSlug") + public void setTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + } + + public MovieResource withTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + return this; + } + + @JsonProperty("certification") + public String getCertification() { + return certification; + } + + @JsonProperty("certification") + public void setCertification(String certification) { + this.certification = certification; + } + + public MovieResource withCertification(String certification) { + this.certification = certification; + return this; + } + + @JsonProperty("genres") + public List getGenres() { + return genres; + } + + @JsonProperty("genres") + public void setGenres(List genres) { + this.genres = genres; + } + + public MovieResource withGenres(List genres) { + this.genres = genres; + return this; + } + + @JsonProperty("tags") + public List getTags() { + return tags; + } + + @JsonProperty("tags") + public void setTags(List tags) { + this.tags = tags; + } + + public MovieResource withTags(List tags) { + this.tags = tags; + return this; + } + + @JsonProperty("added") + public String getAdded() { + return added; + } + + @JsonProperty("added") + public void setAdded(String added) { + this.added = added; + } + + public MovieResource withAdded(String added) { + this.added = added; + return this; + } + + @JsonProperty("ratings") + public Ratings getRatings() { + return ratings; + } + + @JsonProperty("ratings") + public void setRatings(Ratings ratings) { + this.ratings = ratings; + } + + public MovieResource withRatings(Ratings ratings) { + this.ratings = ratings; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public MovieResource withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public MovieResource withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(MovieResource.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("originalTitle"); + sb.append('='); + sb.append(((this.originalTitle == null)?"":this.originalTitle)); + sb.append(','); + sb.append("originalLanguage"); + sb.append('='); + sb.append(((this.originalLanguage == null)?"":this.originalLanguage)); + sb.append(','); + sb.append("alternateTitles"); + sb.append('='); + sb.append(((this.alternateTitles == null)?"":this.alternateTitles)); + sb.append(','); + sb.append("secondaryYearSourceId"); + sb.append('='); + sb.append(((this.secondaryYearSourceId == null)?"":this.secondaryYearSourceId)); + sb.append(','); + sb.append("sortTitle"); + sb.append('='); + sb.append(((this.sortTitle == null)?"":this.sortTitle)); + sb.append(','); + sb.append("sizeOnDisk"); + sb.append('='); + sb.append(((this.sizeOnDisk == null)?"":this.sizeOnDisk)); + sb.append(','); + sb.append("status"); + sb.append('='); + sb.append(((this.status == null)?"":this.status)); + sb.append(','); + sb.append("overview"); + sb.append('='); + sb.append(((this.overview == null)?"":this.overview)); + sb.append(','); + sb.append("digitalRelease"); + sb.append('='); + sb.append(((this.digitalRelease == null)?"":this.digitalRelease)); + sb.append(','); + sb.append("images"); + sb.append('='); + sb.append(((this.images == null)?"":this.images)); + sb.append(','); + sb.append("website"); + sb.append('='); + sb.append(((this.website == null)?"":this.website)); + sb.append(','); + sb.append("year"); + sb.append('='); + sb.append(((this.year == null)?"":this.year)); + sb.append(','); + sb.append("hasFile"); + sb.append('='); + sb.append(((this.hasFile == null)?"":this.hasFile)); + sb.append(','); + sb.append("youTubeTrailerId"); + sb.append('='); + sb.append(((this.youTubeTrailerId == null)?"":this.youTubeTrailerId)); + sb.append(','); + sb.append("studio"); + sb.append('='); + sb.append(((this.studio == null)?"":this.studio)); + sb.append(','); + sb.append("path"); + sb.append('='); + sb.append(((this.path == null)?"":this.path)); + sb.append(','); + sb.append("qualityProfileId"); + sb.append('='); + sb.append(((this.qualityProfileId == null)?"":this.qualityProfileId)); + sb.append(','); + sb.append("monitored"); + sb.append('='); + sb.append(((this.monitored == null)?"":this.monitored)); + sb.append(','); + sb.append("minimumAvailability"); + sb.append('='); + sb.append(((this.minimumAvailability == null)?"":this.minimumAvailability)); + sb.append(','); + sb.append("isAvailable"); + sb.append('='); + sb.append(((this.isAvailable == null)?"":this.isAvailable)); + sb.append(','); + sb.append("folderName"); + sb.append('='); + sb.append(((this.folderName == null)?"":this.folderName)); + sb.append(','); + sb.append("runtime"); + sb.append('='); + sb.append(((this.runtime == null)?"":this.runtime)); + sb.append(','); + sb.append("cleanTitle"); + sb.append('='); + sb.append(((this.cleanTitle == null)?"":this.cleanTitle)); + sb.append(','); + sb.append("imdbId"); + sb.append('='); + sb.append(((this.imdbId == null)?"":this.imdbId)); + sb.append(','); + sb.append("tmdbId"); + sb.append('='); + sb.append(((this.tmdbId == null)?"":this.tmdbId)); + sb.append(','); + sb.append("titleSlug"); + sb.append('='); + sb.append(((this.titleSlug == null)?"":this.titleSlug)); + sb.append(','); + sb.append("certification"); + sb.append('='); + sb.append(((this.certification == null)?"":this.certification)); + sb.append(','); + sb.append("genres"); + sb.append('='); + sb.append(((this.genres == null)?"":this.genres)); + sb.append(','); + sb.append("tags"); + sb.append('='); + sb.append(((this.tags == null)?"":this.tags)); + sb.append(','); + sb.append("added"); + sb.append('='); + sb.append(((this.added == null)?"":this.added)); + sb.append(','); + sb.append("ratings"); + sb.append('='); + sb.append(((this.ratings == null)?"":this.ratings)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.studio == null)? 0 :this.studio.hashCode())); + result = ((result* 31)+((this.isAvailable == null)? 0 :this.isAvailable.hashCode())); + result = ((result* 31)+((this.alternateTitles == null)? 0 :this.alternateTitles.hashCode())); + result = ((result* 31)+((this.year == null)? 0 :this.year.hashCode())); + result = ((result* 31)+((this.added == null)? 0 :this.added.hashCode())); + result = ((result* 31)+((this.imdbId == null)? 0 :this.imdbId.hashCode())); + result = ((result* 31)+((this.youTubeTrailerId == null)? 0 :this.youTubeTrailerId.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + result = ((result* 31)+((this.sizeOnDisk == null)? 0 :this.sizeOnDisk.hashCode())); + result = ((result* 31)+((this.monitored == null)? 0 :this.monitored.hashCode())); + result = ((result* 31)+((this.cleanTitle == null)? 0 :this.cleanTitle.hashCode())); + result = ((result* 31)+((this.path == null)? 0 :this.path.hashCode())); + result = ((result* 31)+((this.titleSlug == null)? 0 :this.titleSlug.hashCode())); + result = ((result* 31)+((this.tmdbId == null)? 0 :this.tmdbId.hashCode())); + result = ((result* 31)+((this.qualityProfileId == null)? 0 :this.qualityProfileId.hashCode())); + result = ((result* 31)+((this.genres == null)? 0 :this.genres.hashCode())); + result = ((result* 31)+((this.ratings == null)? 0 :this.ratings.hashCode())); + result = ((result* 31)+((this.digitalRelease == null)? 0 :this.digitalRelease.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.overview == null)? 0 :this.overview.hashCode())); + result = ((result* 31)+((this.images == null)? 0 :this.images.hashCode())); + result = ((result* 31)+((this.website == null)? 0 :this.website.hashCode())); + result = ((result* 31)+((this.minimumAvailability == null)? 0 :this.minimumAvailability.hashCode())); + result = ((result* 31)+((this.runtime == null)? 0 :this.runtime.hashCode())); + result = ((result* 31)+((this.originalLanguage == null)? 0 :this.originalLanguage.hashCode())); + result = ((result* 31)+((this.certification == null)? 0 :this.certification.hashCode())); + result = ((result* 31)+((this.tags == null)? 0 :this.tags.hashCode())); + result = ((result* 31)+((this.sortTitle == null)? 0 :this.sortTitle.hashCode())); + result = ((result* 31)+((this.hasFile == null)? 0 :this.hasFile.hashCode())); + result = ((result* 31)+((this.originalTitle == null)? 0 :this.originalTitle.hashCode())); + result = ((result* 31)+((this.secondaryYearSourceId == null)? 0 :this.secondaryYearSourceId.hashCode())); + result = ((result* 31)+((this.folderName == null)? 0 :this.folderName.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.status == null)? 0 :this.status.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof MovieResource) == false) { + return false; + } + MovieResource rhs = ((MovieResource) other); + return (((((((((((((((((((((((((((((((((((this.studio == rhs.studio)||((this.studio!= null)&&this.studio.equals(rhs.studio)))&&((this.isAvailable == rhs.isAvailable)||((this.isAvailable!= null)&&this.isAvailable.equals(rhs.isAvailable))))&&((this.alternateTitles == rhs.alternateTitles)||((this.alternateTitles!= null)&&this.alternateTitles.equals(rhs.alternateTitles))))&&((this.year == rhs.year)||((this.year!= null)&&this.year.equals(rhs.year))))&&((this.added == rhs.added)||((this.added!= null)&&this.added.equals(rhs.added))))&&((this.imdbId == rhs.imdbId)||((this.imdbId!= null)&&this.imdbId.equals(rhs.imdbId))))&&((this.youTubeTrailerId == rhs.youTubeTrailerId)||((this.youTubeTrailerId!= null)&&this.youTubeTrailerId.equals(rhs.youTubeTrailerId))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title))))&&((this.sizeOnDisk == rhs.sizeOnDisk)||((this.sizeOnDisk!= null)&&this.sizeOnDisk.equals(rhs.sizeOnDisk))))&&((this.monitored == rhs.monitored)||((this.monitored!= null)&&this.monitored.equals(rhs.monitored))))&&((this.cleanTitle == rhs.cleanTitle)||((this.cleanTitle!= null)&&this.cleanTitle.equals(rhs.cleanTitle))))&&((this.path == rhs.path)||((this.path!= null)&&this.path.equals(rhs.path))))&&((this.titleSlug == rhs.titleSlug)||((this.titleSlug!= null)&&this.titleSlug.equals(rhs.titleSlug))))&&((this.tmdbId == rhs.tmdbId)||((this.tmdbId!= null)&&this.tmdbId.equals(rhs.tmdbId))))&&((this.qualityProfileId == rhs.qualityProfileId)||((this.qualityProfileId!= null)&&this.qualityProfileId.equals(rhs.qualityProfileId))))&&((this.genres == rhs.genres)||((this.genres!= null)&&this.genres.equals(rhs.genres))))&&((this.ratings == rhs.ratings)||((this.ratings!= null)&&this.ratings.equals(rhs.ratings))))&&((this.digitalRelease == rhs.digitalRelease)||((this.digitalRelease!= null)&&this.digitalRelease.equals(rhs.digitalRelease))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.overview == rhs.overview)||((this.overview!= null)&&this.overview.equals(rhs.overview))))&&((this.images == rhs.images)||((this.images!= null)&&this.images.equals(rhs.images))))&&((this.website == rhs.website)||((this.website!= null)&&this.website.equals(rhs.website))))&&((this.minimumAvailability == rhs.minimumAvailability)||((this.minimumAvailability!= null)&&this.minimumAvailability.equals(rhs.minimumAvailability))))&&((this.runtime == rhs.runtime)||((this.runtime!= null)&&this.runtime.equals(rhs.runtime))))&&((this.originalLanguage == rhs.originalLanguage)||((this.originalLanguage!= null)&&this.originalLanguage.equals(rhs.originalLanguage))))&&((this.certification == rhs.certification)||((this.certification!= null)&&this.certification.equals(rhs.certification))))&&((this.tags == rhs.tags)||((this.tags!= null)&&this.tags.equals(rhs.tags))))&&((this.sortTitle == rhs.sortTitle)||((this.sortTitle!= null)&&this.sortTitle.equals(rhs.sortTitle))))&&((this.hasFile == rhs.hasFile)||((this.hasFile!= null)&&this.hasFile.equals(rhs.hasFile))))&&((this.originalTitle == rhs.originalTitle)||((this.originalTitle!= null)&&this.originalTitle.equals(rhs.originalTitle))))&&((this.secondaryYearSourceId == rhs.secondaryYearSourceId)||((this.secondaryYearSourceId!= null)&&this.secondaryYearSourceId.equals(rhs.secondaryYearSourceId))))&&((this.folderName == rhs.folderName)||((this.folderName!= null)&&this.folderName.equals(rhs.folderName))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.status == rhs.status)||((this.status!= null)&&this.status.equals(rhs.status)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/OriginalLanguage.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/OriginalLanguage.java new file mode 100644 index 0000000..9671c07 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/OriginalLanguage.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class OriginalLanguage { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public OriginalLanguage withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public OriginalLanguage withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public OriginalLanguage withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(OriginalLanguage.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof OriginalLanguage) == false) { + return false; + } + OriginalLanguage rhs = ((OriginalLanguage) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/Ratings.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/Ratings.java new file mode 100644 index 0000000..58ab970 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/Ratings.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "imdb", + "tmdb", + "rottenTomatoes" +}) +@Generated("jsonschema2pojo") +public class Ratings { + + @JsonProperty("imdb") + private Imdb imdb; + @JsonProperty("tmdb") + private Tmdb tmdb; + @JsonProperty("rottenTomatoes") + private RottenTomatoes rottenTomatoes; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("imdb") + public Imdb getImdb() { + return imdb; + } + + @JsonProperty("imdb") + public void setImdb(Imdb imdb) { + this.imdb = imdb; + } + + public Ratings withImdb(Imdb imdb) { + this.imdb = imdb; + return this; + } + + @JsonProperty("tmdb") + public Tmdb getTmdb() { + return tmdb; + } + + @JsonProperty("tmdb") + public void setTmdb(Tmdb tmdb) { + this.tmdb = tmdb; + } + + public Ratings withTmdb(Tmdb tmdb) { + this.tmdb = tmdb; + return this; + } + + @JsonProperty("rottenTomatoes") + public RottenTomatoes getRottenTomatoes() { + return rottenTomatoes; + } + + @JsonProperty("rottenTomatoes") + public void setRottenTomatoes(RottenTomatoes rottenTomatoes) { + this.rottenTomatoes = rottenTomatoes; + } + + public Ratings withRottenTomatoes(RottenTomatoes rottenTomatoes) { + this.rottenTomatoes = rottenTomatoes; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Ratings withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Ratings.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("imdb"); + sb.append('='); + sb.append(((this.imdb == null)?"":this.imdb)); + sb.append(','); + sb.append("tmdb"); + sb.append('='); + sb.append(((this.tmdb == null)?"":this.tmdb)); + sb.append(','); + sb.append("rottenTomatoes"); + sb.append('='); + sb.append(((this.rottenTomatoes == null)?"":this.rottenTomatoes)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.tmdb == null)? 0 :this.tmdb.hashCode())); + result = ((result* 31)+((this.imdb == null)? 0 :this.imdb.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.rottenTomatoes == null)? 0 :this.rottenTomatoes.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Ratings) == false) { + return false; + } + Ratings rhs = ((Ratings) other); + return (((((this.tmdb == rhs.tmdb)||((this.tmdb!= null)&&this.tmdb.equals(rhs.tmdb)))&&((this.imdb == rhs.imdb)||((this.imdb!= null)&&this.imdb.equals(rhs.imdb))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.rottenTomatoes == rhs.rottenTomatoes)||((this.rottenTomatoes!= null)&&this.rottenTomatoes.equals(rhs.rottenTomatoes)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/RottenTomatoes.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/RottenTomatoes.java new file mode 100644 index 0000000..7c01947 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/RottenTomatoes.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class RottenTomatoes { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Integer value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public RottenTomatoes withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Integer getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Integer value) { + this.value = value; + } + + public RottenTomatoes withValue(Integer value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public RottenTomatoes withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public RottenTomatoes withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(RottenTomatoes.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof RottenTomatoes) == false) { + return false; + } + RottenTomatoes rhs = ((RottenTomatoes) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/movie/Tmdb.java b/src/main/java/tv/mangrana/radarr/api/schema/movie/Tmdb.java new file mode 100644 index 0000000..68711fc --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/movie/Tmdb.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.movie; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class Tmdb { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Integer value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Tmdb withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Integer getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Integer value) { + this.value = value; + } + + public Tmdb withValue(Integer value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public Tmdb withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Tmdb withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Tmdb.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Tmdb) == false) { + return false; + } + Tmdb rhs = ((Tmdb) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/AlternateTitle.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/AlternateTitle.java new file mode 100644 index 0000000..eaba8bb --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/AlternateTitle.java @@ -0,0 +1,257 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "sourceType", + "movieId", + "title", + "sourceId", + "votes", + "voteCount", + "language", + "id" +}) +@Generated("jsonschema2pojo") +public class AlternateTitle { + + @JsonProperty("sourceType") + private String sourceType; + @JsonProperty("movieId") + private Integer movieId; + @JsonProperty("title") + private String title; + @JsonProperty("sourceId") + private Integer sourceId; + @JsonProperty("votes") + private Integer votes; + @JsonProperty("voteCount") + private Integer voteCount; + @JsonProperty("language") + private Language language; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("sourceType") + public String getSourceType() { + return sourceType; + } + + @JsonProperty("sourceType") + public void setSourceType(String sourceType) { + this.sourceType = sourceType; + } + + public AlternateTitle withSourceType(String sourceType) { + this.sourceType = sourceType; + return this; + } + + @JsonProperty("movieId") + public Integer getMovieId() { + return movieId; + } + + @JsonProperty("movieId") + public void setMovieId(Integer movieId) { + this.movieId = movieId; + } + + public AlternateTitle withMovieId(Integer movieId) { + this.movieId = movieId; + return this; + } + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public AlternateTitle withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("sourceId") + public Integer getSourceId() { + return sourceId; + } + + @JsonProperty("sourceId") + public void setSourceId(Integer sourceId) { + this.sourceId = sourceId; + } + + public AlternateTitle withSourceId(Integer sourceId) { + this.sourceId = sourceId; + return this; + } + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public AlternateTitle withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("voteCount") + public Integer getVoteCount() { + return voteCount; + } + + @JsonProperty("voteCount") + public void setVoteCount(Integer voteCount) { + this.voteCount = voteCount; + } + + public AlternateTitle withVoteCount(Integer voteCount) { + this.voteCount = voteCount; + return this; + } + + @JsonProperty("language") + public Language getLanguage() { + return language; + } + + @JsonProperty("language") + public void setLanguage(Language language) { + this.language = language; + } + + public AlternateTitle withLanguage(Language language) { + this.language = language; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public AlternateTitle withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public AlternateTitle withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(AlternateTitle.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("sourceType"); + sb.append('='); + sb.append(((this.sourceType == null)?"":this.sourceType)); + sb.append(','); + sb.append("movieId"); + sb.append('='); + sb.append(((this.movieId == null)?"":this.movieId)); + sb.append(','); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("sourceId"); + sb.append('='); + sb.append(((this.sourceId == null)?"":this.sourceId)); + sb.append(','); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("voteCount"); + sb.append('='); + sb.append(((this.voteCount == null)?"":this.voteCount)); + sb.append(','); + sb.append("language"); + sb.append('='); + sb.append(((this.language == null)?"":this.language)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.sourceId == null)? 0 :this.sourceId.hashCode())); + result = ((result* 31)+((this.sourceType == null)? 0 :this.sourceType.hashCode())); + result = ((result* 31)+((this.movieId == null)? 0 :this.movieId.hashCode())); + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.language == null)? 0 :this.language.hashCode())); + result = ((result* 31)+((this.voteCount == null)? 0 :this.voteCount.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof AlternateTitle) == false) { + return false; + } + AlternateTitle rhs = ((AlternateTitle) other); + return ((((((((((this.sourceId == rhs.sourceId)||((this.sourceId!= null)&&this.sourceId.equals(rhs.sourceId)))&&((this.sourceType == rhs.sourceType)||((this.sourceType!= null)&&this.sourceType.equals(rhs.sourceType))))&&((this.movieId == rhs.movieId)||((this.movieId!= null)&&this.movieId.equals(rhs.movieId))))&&((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes))))&&((this.language == rhs.language)||((this.language!= null)&&this.language.equals(rhs.language))))&&((this.voteCount == rhs.voteCount)||((this.voteCount!= null)&&this.voteCount.equals(rhs.voteCount))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Collection.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Collection.java new file mode 100644 index 0000000..6af7e18 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Collection.java @@ -0,0 +1,144 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "name", + "tmdbId", + "images" +}) +@Generated("jsonschema2pojo") +public class Collection { + + @JsonProperty("name") + private String name; + @JsonProperty("tmdbId") + private Integer tmdbId; + @JsonProperty("images") + private List images = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Collection withName(String name) { + this.name = name; + return this; + } + + @JsonProperty("tmdbId") + public Integer getTmdbId() { + return tmdbId; + } + + @JsonProperty("tmdbId") + public void setTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + } + + public Collection withTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + return this; + } + + @JsonProperty("images") + public List getImages() { + return images; + } + + @JsonProperty("images") + public void setImages(List images) { + this.images = images; + } + + public Collection withImages(List images) { + this.images = images; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Collection withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Collection.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("tmdbId"); + sb.append('='); + sb.append(((this.tmdbId == null)?"":this.tmdbId)); + sb.append(','); + sb.append("images"); + sb.append('='); + sb.append(((this.images == null)?"":this.images)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.images == null)? 0 :this.images.hashCode())); + result = ((result* 31)+((this.tmdbId == null)? 0 :this.tmdbId.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Collection) == false) { + return false; + } + Collection rhs = ((Collection) other); + return (((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.images == rhs.images)||((this.images!= null)&&this.images.equals(rhs.images))))&&((this.tmdbId == rhs.tmdbId)||((this.tmdbId!= null)&&this.tmdbId.equals(rhs.tmdbId))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Image.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Image.java new file mode 100644 index 0000000..9af2529 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Image.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "coverType", + "url" +}) +@Generated("jsonschema2pojo") +public class Image { + + @JsonProperty("coverType") + private String coverType; + @JsonProperty("url") + private String url; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("coverType") + public String getCoverType() { + return coverType; + } + + @JsonProperty("coverType") + public void setCoverType(String coverType) { + this.coverType = coverType; + } + + public Image withCoverType(String coverType) { + this.coverType = coverType; + return this; + } + + @JsonProperty("url") + public String getUrl() { + return url; + } + + @JsonProperty("url") + public void setUrl(String url) { + this.url = url; + } + + public Image withUrl(String url) { + this.url = url; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Image withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Image.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("coverType"); + sb.append('='); + sb.append(((this.coverType == null)?"":this.coverType)); + sb.append(','); + sb.append("url"); + sb.append('='); + sb.append(((this.url == null)?"":this.url)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.coverType == null)? 0 :this.coverType.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.url == null)? 0 :this.url.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Image) == false) { + return false; + } + Image rhs = ((Image) other); + return ((((this.coverType == rhs.coverType)||((this.coverType!= null)&&this.coverType.equals(rhs.coverType)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.url == rhs.url)||((this.url!= null)&&this.url.equals(rhs.url)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Imdb.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Imdb.java new file mode 100644 index 0000000..d90b965 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Imdb.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class Imdb { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Double value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Imdb withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Double getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Double value) { + this.value = value; + } + + public Imdb withValue(Double value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public Imdb withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Imdb withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Imdb.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Imdb) == false) { + return false; + } + Imdb rhs = ((Imdb) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Language.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Language.java new file mode 100644 index 0000000..137b251 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Language.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class Language { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Language withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Language withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Language withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Language.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Language) == false) { + return false; + } + Language rhs = ((Language) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Language__1.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Language__1.java new file mode 100644 index 0000000..72d1a00 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Language__1.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class Language__1 { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Language__1 withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Language__1 withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Language__1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Language__1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Language__1) == false) { + return false; + } + Language__1 rhs = ((Language__1) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Metacritic.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Metacritic.java new file mode 100644 index 0000000..69870d4 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Metacritic.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class Metacritic { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Integer value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Metacritic withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Integer getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Integer value) { + this.value = value; + } + + public Metacritic withValue(Integer value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public Metacritic withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Metacritic withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Metacritic.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Metacritic) == false) { + return false; + } + Metacritic rhs = ((Metacritic) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Movie.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Movie.java new file mode 100644 index 0000000..069fad4 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Movie.java @@ -0,0 +1,903 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "title", + "originalTitle", + "originalLanguage", + "alternateTitles", + "secondaryYearSourceId", + "sortTitle", + "sizeOnDisk", + "status", + "overview", + "inCinemas", + "physicalRelease", + "digitalRelease", + "images", + "website", + "year", + "hasFile", + "youTubeTrailerId", + "studio", + "path", + "qualityProfileId", + "monitored", + "minimumAvailability", + "isAvailable", + "folderName", + "runtime", + "cleanTitle", + "imdbId", + "tmdbId", + "titleSlug", + "certification", + "genres", + "tags", + "added", + "ratings", + "id", + "collection" +}) +@Generated("jsonschema2pojo") +public class Movie { + + @JsonProperty("title") + private String title; + @JsonProperty("originalTitle") + private String originalTitle; + @JsonProperty("originalLanguage") + private OriginalLanguage originalLanguage; + @JsonProperty("alternateTitles") + private List alternateTitles = new ArrayList(); + @JsonProperty("secondaryYearSourceId") + private Integer secondaryYearSourceId; + @JsonProperty("sortTitle") + private String sortTitle; + @JsonProperty("sizeOnDisk") + private Long sizeOnDisk; + @JsonProperty("status") + private String status; + @JsonProperty("overview") + private String overview; + @JsonProperty("inCinemas") + private String inCinemas; + @JsonProperty("physicalRelease") + private String physicalRelease; + @JsonProperty("digitalRelease") + private String digitalRelease; + @JsonProperty("images") + private List images = new ArrayList(); + @JsonProperty("website") + private String website; + @JsonProperty("year") + private Integer year; + @JsonProperty("hasFile") + private Boolean hasFile; + @JsonProperty("youTubeTrailerId") + private String youTubeTrailerId; + @JsonProperty("studio") + private String studio; + @JsonProperty("path") + private String path; + @JsonProperty("qualityProfileId") + private Integer qualityProfileId; + @JsonProperty("monitored") + private Boolean monitored; + @JsonProperty("minimumAvailability") + private String minimumAvailability; + @JsonProperty("isAvailable") + private Boolean isAvailable; + @JsonProperty("folderName") + private String folderName; + @JsonProperty("runtime") + private Integer runtime; + @JsonProperty("cleanTitle") + private String cleanTitle; + @JsonProperty("imdbId") + private String imdbId; + @JsonProperty("tmdbId") + private Integer tmdbId; + @JsonProperty("titleSlug") + private String titleSlug; + @JsonProperty("certification") + private String certification; + @JsonProperty("genres") + private List genres = new ArrayList(); + @JsonProperty("tags") + private List tags = new ArrayList(); + @JsonProperty("added") + private String added; + @JsonProperty("ratings") + private Ratings ratings; + @JsonProperty("id") + private Integer id; + @JsonProperty("collection") + private Collection collection; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public Movie withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("originalTitle") + public String getOriginalTitle() { + return originalTitle; + } + + @JsonProperty("originalTitle") + public void setOriginalTitle(String originalTitle) { + this.originalTitle = originalTitle; + } + + public Movie withOriginalTitle(String originalTitle) { + this.originalTitle = originalTitle; + return this; + } + + @JsonProperty("originalLanguage") + public OriginalLanguage getOriginalLanguage() { + return originalLanguage; + } + + @JsonProperty("originalLanguage") + public void setOriginalLanguage(OriginalLanguage originalLanguage) { + this.originalLanguage = originalLanguage; + } + + public Movie withOriginalLanguage(OriginalLanguage originalLanguage) { + this.originalLanguage = originalLanguage; + return this; + } + + @JsonProperty("alternateTitles") + public List getAlternateTitles() { + return alternateTitles; + } + + @JsonProperty("alternateTitles") + public void setAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + } + + public Movie withAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + return this; + } + + @JsonProperty("secondaryYearSourceId") + public Integer getSecondaryYearSourceId() { + return secondaryYearSourceId; + } + + @JsonProperty("secondaryYearSourceId") + public void setSecondaryYearSourceId(Integer secondaryYearSourceId) { + this.secondaryYearSourceId = secondaryYearSourceId; + } + + public Movie withSecondaryYearSourceId(Integer secondaryYearSourceId) { + this.secondaryYearSourceId = secondaryYearSourceId; + return this; + } + + @JsonProperty("sortTitle") + public String getSortTitle() { + return sortTitle; + } + + @JsonProperty("sortTitle") + public void setSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + } + + public Movie withSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + return this; + } + + @JsonProperty("sizeOnDisk") + public Long getSizeOnDisk() { + return sizeOnDisk; + } + + @JsonProperty("sizeOnDisk") + public void setSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + } + + public Movie withSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + return this; + } + + @JsonProperty("status") + public String getStatus() { + return status; + } + + @JsonProperty("status") + public void setStatus(String status) { + this.status = status; + } + + public Movie withStatus(String status) { + this.status = status; + return this; + } + + @JsonProperty("overview") + public String getOverview() { + return overview; + } + + @JsonProperty("overview") + public void setOverview(String overview) { + this.overview = overview; + } + + public Movie withOverview(String overview) { + this.overview = overview; + return this; + } + + @JsonProperty("inCinemas") + public String getInCinemas() { + return inCinemas; + } + + @JsonProperty("inCinemas") + public void setInCinemas(String inCinemas) { + this.inCinemas = inCinemas; + } + + public Movie withInCinemas(String inCinemas) { + this.inCinemas = inCinemas; + return this; + } + + @JsonProperty("physicalRelease") + public String getPhysicalRelease() { + return physicalRelease; + } + + @JsonProperty("physicalRelease") + public void setPhysicalRelease(String physicalRelease) { + this.physicalRelease = physicalRelease; + } + + public Movie withPhysicalRelease(String physicalRelease) { + this.physicalRelease = physicalRelease; + return this; + } + + @JsonProperty("digitalRelease") + public String getDigitalRelease() { + return digitalRelease; + } + + @JsonProperty("digitalRelease") + public void setDigitalRelease(String digitalRelease) { + this.digitalRelease = digitalRelease; + } + + public Movie withDigitalRelease(String digitalRelease) { + this.digitalRelease = digitalRelease; + return this; + } + + @JsonProperty("images") + public List getImages() { + return images; + } + + @JsonProperty("images") + public void setImages(List images) { + this.images = images; + } + + public Movie withImages(List images) { + this.images = images; + return this; + } + + @JsonProperty("website") + public String getWebsite() { + return website; + } + + @JsonProperty("website") + public void setWebsite(String website) { + this.website = website; + } + + public Movie withWebsite(String website) { + this.website = website; + return this; + } + + @JsonProperty("year") + public Integer getYear() { + return year; + } + + @JsonProperty("year") + public void setYear(Integer year) { + this.year = year; + } + + public Movie withYear(Integer year) { + this.year = year; + return this; + } + + @JsonProperty("hasFile") + public Boolean getHasFile() { + return hasFile; + } + + @JsonProperty("hasFile") + public void setHasFile(Boolean hasFile) { + this.hasFile = hasFile; + } + + public Movie withHasFile(Boolean hasFile) { + this.hasFile = hasFile; + return this; + } + + @JsonProperty("youTubeTrailerId") + public String getYouTubeTrailerId() { + return youTubeTrailerId; + } + + @JsonProperty("youTubeTrailerId") + public void setYouTubeTrailerId(String youTubeTrailerId) { + this.youTubeTrailerId = youTubeTrailerId; + } + + public Movie withYouTubeTrailerId(String youTubeTrailerId) { + this.youTubeTrailerId = youTubeTrailerId; + return this; + } + + @JsonProperty("studio") + public String getStudio() { + return studio; + } + + @JsonProperty("studio") + public void setStudio(String studio) { + this.studio = studio; + } + + public Movie withStudio(String studio) { + this.studio = studio; + return this; + } + + @JsonProperty("path") + public String getPath() { + return path; + } + + @JsonProperty("path") + public void setPath(String path) { + this.path = path; + } + + public Movie withPath(String path) { + this.path = path; + return this; + } + + @JsonProperty("qualityProfileId") + public Integer getQualityProfileId() { + return qualityProfileId; + } + + @JsonProperty("qualityProfileId") + public void setQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + } + + public Movie withQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + return this; + } + + @JsonProperty("monitored") + public Boolean getMonitored() { + return monitored; + } + + @JsonProperty("monitored") + public void setMonitored(Boolean monitored) { + this.monitored = monitored; + } + + public Movie withMonitored(Boolean monitored) { + this.monitored = monitored; + return this; + } + + @JsonProperty("minimumAvailability") + public String getMinimumAvailability() { + return minimumAvailability; + } + + @JsonProperty("minimumAvailability") + public void setMinimumAvailability(String minimumAvailability) { + this.minimumAvailability = minimumAvailability; + } + + public Movie withMinimumAvailability(String minimumAvailability) { + this.minimumAvailability = minimumAvailability; + return this; + } + + @JsonProperty("isAvailable") + public Boolean getIsAvailable() { + return isAvailable; + } + + @JsonProperty("isAvailable") + public void setIsAvailable(Boolean isAvailable) { + this.isAvailable = isAvailable; + } + + public Movie withIsAvailable(Boolean isAvailable) { + this.isAvailable = isAvailable; + return this; + } + + @JsonProperty("folderName") + public String getFolderName() { + return folderName; + } + + @JsonProperty("folderName") + public void setFolderName(String folderName) { + this.folderName = folderName; + } + + public Movie withFolderName(String folderName) { + this.folderName = folderName; + return this; + } + + @JsonProperty("runtime") + public Integer getRuntime() { + return runtime; + } + + @JsonProperty("runtime") + public void setRuntime(Integer runtime) { + this.runtime = runtime; + } + + public Movie withRuntime(Integer runtime) { + this.runtime = runtime; + return this; + } + + @JsonProperty("cleanTitle") + public String getCleanTitle() { + return cleanTitle; + } + + @JsonProperty("cleanTitle") + public void setCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + } + + public Movie withCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + return this; + } + + @JsonProperty("imdbId") + public String getImdbId() { + return imdbId; + } + + @JsonProperty("imdbId") + public void setImdbId(String imdbId) { + this.imdbId = imdbId; + } + + public Movie withImdbId(String imdbId) { + this.imdbId = imdbId; + return this; + } + + @JsonProperty("tmdbId") + public Integer getTmdbId() { + return tmdbId; + } + + @JsonProperty("tmdbId") + public void setTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + } + + public Movie withTmdbId(Integer tmdbId) { + this.tmdbId = tmdbId; + return this; + } + + @JsonProperty("titleSlug") + public String getTitleSlug() { + return titleSlug; + } + + @JsonProperty("titleSlug") + public void setTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + } + + public Movie withTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + return this; + } + + @JsonProperty("certification") + public String getCertification() { + return certification; + } + + @JsonProperty("certification") + public void setCertification(String certification) { + this.certification = certification; + } + + public Movie withCertification(String certification) { + this.certification = certification; + return this; + } + + @JsonProperty("genres") + public List getGenres() { + return genres; + } + + @JsonProperty("genres") + public void setGenres(List genres) { + this.genres = genres; + } + + public Movie withGenres(List genres) { + this.genres = genres; + return this; + } + + @JsonProperty("tags") + public List getTags() { + return tags; + } + + @JsonProperty("tags") + public void setTags(List tags) { + this.tags = tags; + } + + public Movie withTags(List tags) { + this.tags = tags; + return this; + } + + @JsonProperty("added") + public String getAdded() { + return added; + } + + @JsonProperty("added") + public void setAdded(String added) { + this.added = added; + } + + public Movie withAdded(String added) { + this.added = added; + return this; + } + + @JsonProperty("ratings") + public Ratings getRatings() { + return ratings; + } + + @JsonProperty("ratings") + public void setRatings(Ratings ratings) { + this.ratings = ratings; + } + + public Movie withRatings(Ratings ratings) { + this.ratings = ratings; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Movie withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("collection") + public Collection getCollection() { + return collection; + } + + @JsonProperty("collection") + public void setCollection(Collection collection) { + this.collection = collection; + } + + public Movie withCollection(Collection collection) { + this.collection = collection; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Movie withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Movie.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("originalTitle"); + sb.append('='); + sb.append(((this.originalTitle == null)?"":this.originalTitle)); + sb.append(','); + sb.append("originalLanguage"); + sb.append('='); + sb.append(((this.originalLanguage == null)?"":this.originalLanguage)); + sb.append(','); + sb.append("alternateTitles"); + sb.append('='); + sb.append(((this.alternateTitles == null)?"":this.alternateTitles)); + sb.append(','); + sb.append("secondaryYearSourceId"); + sb.append('='); + sb.append(((this.secondaryYearSourceId == null)?"":this.secondaryYearSourceId)); + sb.append(','); + sb.append("sortTitle"); + sb.append('='); + sb.append(((this.sortTitle == null)?"":this.sortTitle)); + sb.append(','); + sb.append("sizeOnDisk"); + sb.append('='); + sb.append(((this.sizeOnDisk == null)?"":this.sizeOnDisk)); + sb.append(','); + sb.append("status"); + sb.append('='); + sb.append(((this.status == null)?"":this.status)); + sb.append(','); + sb.append("overview"); + sb.append('='); + sb.append(((this.overview == null)?"":this.overview)); + sb.append(','); + sb.append("inCinemas"); + sb.append('='); + sb.append(((this.inCinemas == null)?"":this.inCinemas)); + sb.append(','); + sb.append("physicalRelease"); + sb.append('='); + sb.append(((this.physicalRelease == null)?"":this.physicalRelease)); + sb.append(','); + sb.append("digitalRelease"); + sb.append('='); + sb.append(((this.digitalRelease == null)?"":this.digitalRelease)); + sb.append(','); + sb.append("images"); + sb.append('='); + sb.append(((this.images == null)?"":this.images)); + sb.append(','); + sb.append("website"); + sb.append('='); + sb.append(((this.website == null)?"":this.website)); + sb.append(','); + sb.append("year"); + sb.append('='); + sb.append(((this.year == null)?"":this.year)); + sb.append(','); + sb.append("hasFile"); + sb.append('='); + sb.append(((this.hasFile == null)?"":this.hasFile)); + sb.append(','); + sb.append("youTubeTrailerId"); + sb.append('='); + sb.append(((this.youTubeTrailerId == null)?"":this.youTubeTrailerId)); + sb.append(','); + sb.append("studio"); + sb.append('='); + sb.append(((this.studio == null)?"":this.studio)); + sb.append(','); + sb.append("path"); + sb.append('='); + sb.append(((this.path == null)?"":this.path)); + sb.append(','); + sb.append("qualityProfileId"); + sb.append('='); + sb.append(((this.qualityProfileId == null)?"":this.qualityProfileId)); + sb.append(','); + sb.append("monitored"); + sb.append('='); + sb.append(((this.monitored == null)?"":this.monitored)); + sb.append(','); + sb.append("minimumAvailability"); + sb.append('='); + sb.append(((this.minimumAvailability == null)?"":this.minimumAvailability)); + sb.append(','); + sb.append("isAvailable"); + sb.append('='); + sb.append(((this.isAvailable == null)?"":this.isAvailable)); + sb.append(','); + sb.append("folderName"); + sb.append('='); + sb.append(((this.folderName == null)?"":this.folderName)); + sb.append(','); + sb.append("runtime"); + sb.append('='); + sb.append(((this.runtime == null)?"":this.runtime)); + sb.append(','); + sb.append("cleanTitle"); + sb.append('='); + sb.append(((this.cleanTitle == null)?"":this.cleanTitle)); + sb.append(','); + sb.append("imdbId"); + sb.append('='); + sb.append(((this.imdbId == null)?"":this.imdbId)); + sb.append(','); + sb.append("tmdbId"); + sb.append('='); + sb.append(((this.tmdbId == null)?"":this.tmdbId)); + sb.append(','); + sb.append("titleSlug"); + sb.append('='); + sb.append(((this.titleSlug == null)?"":this.titleSlug)); + sb.append(','); + sb.append("certification"); + sb.append('='); + sb.append(((this.certification == null)?"":this.certification)); + sb.append(','); + sb.append("genres"); + sb.append('='); + sb.append(((this.genres == null)?"":this.genres)); + sb.append(','); + sb.append("tags"); + sb.append('='); + sb.append(((this.tags == null)?"":this.tags)); + sb.append(','); + sb.append("added"); + sb.append('='); + sb.append(((this.added == null)?"":this.added)); + sb.append(','); + sb.append("ratings"); + sb.append('='); + sb.append(((this.ratings == null)?"":this.ratings)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("collection"); + sb.append('='); + sb.append(((this.collection == null)?"":this.collection)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.studio == null)? 0 :this.studio.hashCode())); + result = ((result* 31)+((this.isAvailable == null)? 0 :this.isAvailable.hashCode())); + result = ((result* 31)+((this.inCinemas == null)? 0 :this.inCinemas.hashCode())); + result = ((result* 31)+((this.alternateTitles == null)? 0 :this.alternateTitles.hashCode())); + result = ((result* 31)+((this.year == null)? 0 :this.year.hashCode())); + result = ((result* 31)+((this.added == null)? 0 :this.added.hashCode())); + result = ((result* 31)+((this.imdbId == null)? 0 :this.imdbId.hashCode())); + result = ((result* 31)+((this.youTubeTrailerId == null)? 0 :this.youTubeTrailerId.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + result = ((result* 31)+((this.sizeOnDisk == null)? 0 :this.sizeOnDisk.hashCode())); + result = ((result* 31)+((this.monitored == null)? 0 :this.monitored.hashCode())); + result = ((result* 31)+((this.cleanTitle == null)? 0 :this.cleanTitle.hashCode())); + result = ((result* 31)+((this.path == null)? 0 :this.path.hashCode())); + result = ((result* 31)+((this.titleSlug == null)? 0 :this.titleSlug.hashCode())); + result = ((result* 31)+((this.tmdbId == null)? 0 :this.tmdbId.hashCode())); + result = ((result* 31)+((this.qualityProfileId == null)? 0 :this.qualityProfileId.hashCode())); + result = ((result* 31)+((this.genres == null)? 0 :this.genres.hashCode())); + result = ((result* 31)+((this.ratings == null)? 0 :this.ratings.hashCode())); + result = ((result* 31)+((this.digitalRelease == null)? 0 :this.digitalRelease.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.physicalRelease == null)? 0 :this.physicalRelease.hashCode())); + result = ((result* 31)+((this.overview == null)? 0 :this.overview.hashCode())); + result = ((result* 31)+((this.images == null)? 0 :this.images.hashCode())); + result = ((result* 31)+((this.website == null)? 0 :this.website.hashCode())); + result = ((result* 31)+((this.minimumAvailability == null)? 0 :this.minimumAvailability.hashCode())); + result = ((result* 31)+((this.runtime == null)? 0 :this.runtime.hashCode())); + result = ((result* 31)+((this.collection == null)? 0 :this.collection.hashCode())); + result = ((result* 31)+((this.originalLanguage == null)? 0 :this.originalLanguage.hashCode())); + result = ((result* 31)+((this.certification == null)? 0 :this.certification.hashCode())); + result = ((result* 31)+((this.tags == null)? 0 :this.tags.hashCode())); + result = ((result* 31)+((this.sortTitle == null)? 0 :this.sortTitle.hashCode())); + result = ((result* 31)+((this.hasFile == null)? 0 :this.hasFile.hashCode())); + result = ((result* 31)+((this.originalTitle == null)? 0 :this.originalTitle.hashCode())); + result = ((result* 31)+((this.secondaryYearSourceId == null)? 0 :this.secondaryYearSourceId.hashCode())); + result = ((result* 31)+((this.folderName == null)? 0 :this.folderName.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.status == null)? 0 :this.status.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Movie) == false) { + return false; + } + Movie rhs = ((Movie) other); + return ((((((((((((((((((((((((((((((((((((((this.studio == rhs.studio)||((this.studio!= null)&&this.studio.equals(rhs.studio)))&&((this.isAvailable == rhs.isAvailable)||((this.isAvailable!= null)&&this.isAvailable.equals(rhs.isAvailable))))&&((this.inCinemas == rhs.inCinemas)||((this.inCinemas!= null)&&this.inCinemas.equals(rhs.inCinemas))))&&((this.alternateTitles == rhs.alternateTitles)||((this.alternateTitles!= null)&&this.alternateTitles.equals(rhs.alternateTitles))))&&((this.year == rhs.year)||((this.year!= null)&&this.year.equals(rhs.year))))&&((this.added == rhs.added)||((this.added!= null)&&this.added.equals(rhs.added))))&&((this.imdbId == rhs.imdbId)||((this.imdbId!= null)&&this.imdbId.equals(rhs.imdbId))))&&((this.youTubeTrailerId == rhs.youTubeTrailerId)||((this.youTubeTrailerId!= null)&&this.youTubeTrailerId.equals(rhs.youTubeTrailerId))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title))))&&((this.sizeOnDisk == rhs.sizeOnDisk)||((this.sizeOnDisk!= null)&&this.sizeOnDisk.equals(rhs.sizeOnDisk))))&&((this.monitored == rhs.monitored)||((this.monitored!= null)&&this.monitored.equals(rhs.monitored))))&&((this.cleanTitle == rhs.cleanTitle)||((this.cleanTitle!= null)&&this.cleanTitle.equals(rhs.cleanTitle))))&&((this.path == rhs.path)||((this.path!= null)&&this.path.equals(rhs.path))))&&((this.titleSlug == rhs.titleSlug)||((this.titleSlug!= null)&&this.titleSlug.equals(rhs.titleSlug))))&&((this.tmdbId == rhs.tmdbId)||((this.tmdbId!= null)&&this.tmdbId.equals(rhs.tmdbId))))&&((this.qualityProfileId == rhs.qualityProfileId)||((this.qualityProfileId!= null)&&this.qualityProfileId.equals(rhs.qualityProfileId))))&&((this.genres == rhs.genres)||((this.genres!= null)&&this.genres.equals(rhs.genres))))&&((this.ratings == rhs.ratings)||((this.ratings!= null)&&this.ratings.equals(rhs.ratings))))&&((this.digitalRelease == rhs.digitalRelease)||((this.digitalRelease!= null)&&this.digitalRelease.equals(rhs.digitalRelease))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.physicalRelease == rhs.physicalRelease)||((this.physicalRelease!= null)&&this.physicalRelease.equals(rhs.physicalRelease))))&&((this.overview == rhs.overview)||((this.overview!= null)&&this.overview.equals(rhs.overview))))&&((this.images == rhs.images)||((this.images!= null)&&this.images.equals(rhs.images))))&&((this.website == rhs.website)||((this.website!= null)&&this.website.equals(rhs.website))))&&((this.minimumAvailability == rhs.minimumAvailability)||((this.minimumAvailability!= null)&&this.minimumAvailability.equals(rhs.minimumAvailability))))&&((this.runtime == rhs.runtime)||((this.runtime!= null)&&this.runtime.equals(rhs.runtime))))&&((this.collection == rhs.collection)||((this.collection!= null)&&this.collection.equals(rhs.collection))))&&((this.originalLanguage == rhs.originalLanguage)||((this.originalLanguage!= null)&&this.originalLanguage.equals(rhs.originalLanguage))))&&((this.certification == rhs.certification)||((this.certification!= null)&&this.certification.equals(rhs.certification))))&&((this.tags == rhs.tags)||((this.tags!= null)&&this.tags.equals(rhs.tags))))&&((this.sortTitle == rhs.sortTitle)||((this.sortTitle!= null)&&this.sortTitle.equals(rhs.sortTitle))))&&((this.hasFile == rhs.hasFile)||((this.hasFile!= null)&&this.hasFile.equals(rhs.hasFile))))&&((this.originalTitle == rhs.originalTitle)||((this.originalTitle!= null)&&this.originalTitle.equals(rhs.originalTitle))))&&((this.secondaryYearSourceId == rhs.secondaryYearSourceId)||((this.secondaryYearSourceId!= null)&&this.secondaryYearSourceId.equals(rhs.secondaryYearSourceId))))&&((this.folderName == rhs.folderName)||((this.folderName!= null)&&this.folderName.equals(rhs.folderName))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.status == rhs.status)||((this.status!= null)&&this.status.equals(rhs.status)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/OriginalLanguage.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/OriginalLanguage.java new file mode 100644 index 0000000..d757c06 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/OriginalLanguage.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class OriginalLanguage { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public OriginalLanguage withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public OriginalLanguage withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public OriginalLanguage withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(OriginalLanguage.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof OriginalLanguage) == false) { + return false; + } + OriginalLanguage rhs = ((OriginalLanguage) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality.java new file mode 100644 index 0000000..5ca38d3 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality.java @@ -0,0 +1,119 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "quality", + "revision" +}) +@Generated("jsonschema2pojo") +public class Quality { + + @JsonProperty("quality") + private Quality__1 quality; + @JsonProperty("revision") + private Revision revision; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("quality") + public Quality__1 getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality__1 quality) { + this.quality = quality; + } + + public Quality withQuality(Quality__1 quality) { + this.quality = quality; + return this; + } + + @JsonProperty("revision") + public Revision getRevision() { + return revision; + } + + @JsonProperty("revision") + public void setRevision(Revision revision) { + this.revision = revision; + } + + public Quality withRevision(Revision revision) { + this.revision = revision; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("revision"); + sb.append('='); + sb.append(((this.revision == null)?"":this.revision)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.revision == null)? 0 :this.revision.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality) == false) { + return false; + } + Quality rhs = ((Quality) other); + return ((((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.revision == rhs.revision)||((this.revision!= null)&&this.revision.equals(rhs.revision)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality__1.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality__1.java new file mode 100644 index 0000000..c640781 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Quality__1.java @@ -0,0 +1,188 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name", + "source", + "resolution", + "modifier" +}) +@Generated("jsonschema2pojo") +public class Quality__1 { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonProperty("source") + private String source; + @JsonProperty("resolution") + private Integer resolution; + @JsonProperty("modifier") + private String modifier; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Quality__1 withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Quality__1 withName(String name) { + this.name = name; + return this; + } + + @JsonProperty("source") + public String getSource() { + return source; + } + + @JsonProperty("source") + public void setSource(String source) { + this.source = source; + } + + public Quality__1 withSource(String source) { + this.source = source; + return this; + } + + @JsonProperty("resolution") + public Integer getResolution() { + return resolution; + } + + @JsonProperty("resolution") + public void setResolution(Integer resolution) { + this.resolution = resolution; + } + + public Quality__1 withResolution(Integer resolution) { + this.resolution = resolution; + return this; + } + + @JsonProperty("modifier") + public String getModifier() { + return modifier; + } + + @JsonProperty("modifier") + public void setModifier(String modifier) { + this.modifier = modifier; + } + + public Quality__1 withModifier(String modifier) { + this.modifier = modifier; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality__1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality__1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("source"); + sb.append('='); + sb.append(((this.source == null)?"":this.source)); + sb.append(','); + sb.append("resolution"); + sb.append('='); + sb.append(((this.resolution == null)?"":this.resolution)); + sb.append(','); + sb.append("modifier"); + sb.append('='); + sb.append(((this.modifier == null)?"":this.modifier)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.modifier == null)? 0 :this.modifier.hashCode())); + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.source == null)? 0 :this.source.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.resolution == null)? 0 :this.resolution.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality__1) == false) { + return false; + } + Quality__1 rhs = ((Quality__1) other); + return (((((((this.modifier == rhs.modifier)||((this.modifier!= null)&&this.modifier.equals(rhs.modifier)))&&((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.source == rhs.source)||((this.source!= null)&&this.source.equals(rhs.source))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.resolution == rhs.resolution)||((this.resolution!= null)&&this.resolution.equals(rhs.resolution)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/QueueResourcePagingResource.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/QueueResourcePagingResource.java new file mode 100644 index 0000000..2c8cc07 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/QueueResourcePagingResource.java @@ -0,0 +1,213 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "page", + "pageSize", + "sortKey", + "sortDirection", + "totalRecords", + "records" +}) +@Generated("jsonschema2pojo") +public class QueueResourcePagingResource { + + @JsonProperty("page") + private Integer page; + @JsonProperty("pageSize") + private Integer pageSize; + @JsonProperty("sortKey") + private String sortKey; + @JsonProperty("sortDirection") + private String sortDirection; + @JsonProperty("totalRecords") + private Integer totalRecords; + @JsonProperty("records") + private List records = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("page") + public Integer getPage() { + return page; + } + + @JsonProperty("page") + public void setPage(Integer page) { + this.page = page; + } + + public QueueResourcePagingResource withPage(Integer page) { + this.page = page; + return this; + } + + @JsonProperty("pageSize") + public Integer getPageSize() { + return pageSize; + } + + @JsonProperty("pageSize") + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } + + public QueueResourcePagingResource withPageSize(Integer pageSize) { + this.pageSize = pageSize; + return this; + } + + @JsonProperty("sortKey") + public String getSortKey() { + return sortKey; + } + + @JsonProperty("sortKey") + public void setSortKey(String sortKey) { + this.sortKey = sortKey; + } + + public QueueResourcePagingResource withSortKey(String sortKey) { + this.sortKey = sortKey; + return this; + } + + @JsonProperty("sortDirection") + public String getSortDirection() { + return sortDirection; + } + + @JsonProperty("sortDirection") + public void setSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + } + + public QueueResourcePagingResource withSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + return this; + } + + @JsonProperty("totalRecords") + public Integer getTotalRecords() { + return totalRecords; + } + + @JsonProperty("totalRecords") + public void setTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + } + + public QueueResourcePagingResource withTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + return this; + } + + @JsonProperty("records") + public List getRecords() { + return records; + } + + @JsonProperty("records") + public void setRecords(List records) { + this.records = records; + } + + public QueueResourcePagingResource withRecords(List records) { + this.records = records; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public QueueResourcePagingResource withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(QueueResourcePagingResource.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("page"); + sb.append('='); + sb.append(((this.page == null)?"":this.page)); + sb.append(','); + sb.append("pageSize"); + sb.append('='); + sb.append(((this.pageSize == null)?"":this.pageSize)); + sb.append(','); + sb.append("sortKey"); + sb.append('='); + sb.append(((this.sortKey == null)?"":this.sortKey)); + sb.append(','); + sb.append("sortDirection"); + sb.append('='); + sb.append(((this.sortDirection == null)?"":this.sortDirection)); + sb.append(','); + sb.append("totalRecords"); + sb.append('='); + sb.append(((this.totalRecords == null)?"":this.totalRecords)); + sb.append(','); + sb.append("records"); + sb.append('='); + sb.append(((this.records == null)?"":this.records)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.sortDirection == null)? 0 :this.sortDirection.hashCode())); + result = ((result* 31)+((this.totalRecords == null)? 0 :this.totalRecords.hashCode())); + result = ((result* 31)+((this.sortKey == null)? 0 :this.sortKey.hashCode())); + result = ((result* 31)+((this.records == null)? 0 :this.records.hashCode())); + result = ((result* 31)+((this.pageSize == null)? 0 :this.pageSize.hashCode())); + result = ((result* 31)+((this.page == null)? 0 :this.page.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof QueueResourcePagingResource) == false) { + return false; + } + QueueResourcePagingResource rhs = ((QueueResourcePagingResource) other); + return ((((((((this.sortDirection == rhs.sortDirection)||((this.sortDirection!= null)&&this.sortDirection.equals(rhs.sortDirection)))&&((this.totalRecords == rhs.totalRecords)||((this.totalRecords!= null)&&this.totalRecords.equals(rhs.totalRecords))))&&((this.sortKey == rhs.sortKey)||((this.sortKey!= null)&&this.sortKey.equals(rhs.sortKey))))&&((this.records == rhs.records)||((this.records!= null)&&this.records.equals(rhs.records))))&&((this.pageSize == rhs.pageSize)||((this.pageSize!= null)&&this.pageSize.equals(rhs.pageSize))))&&((this.page == rhs.page)||((this.page!= null)&&this.page.equals(rhs.page))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Ratings.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Ratings.java new file mode 100644 index 0000000..74c9072 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Ratings.java @@ -0,0 +1,165 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "imdb", + "tmdb", + "metacritic", + "rottenTomatoes" +}) +@Generated("jsonschema2pojo") +public class Ratings { + + @JsonProperty("imdb") + private Imdb imdb; + @JsonProperty("tmdb") + private Tmdb tmdb; + @JsonProperty("metacritic") + private Metacritic metacritic; + @JsonProperty("rottenTomatoes") + private RottenTomatoes rottenTomatoes; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("imdb") + public Imdb getImdb() { + return imdb; + } + + @JsonProperty("imdb") + public void setImdb(Imdb imdb) { + this.imdb = imdb; + } + + public Ratings withImdb(Imdb imdb) { + this.imdb = imdb; + return this; + } + + @JsonProperty("tmdb") + public Tmdb getTmdb() { + return tmdb; + } + + @JsonProperty("tmdb") + public void setTmdb(Tmdb tmdb) { + this.tmdb = tmdb; + } + + public Ratings withTmdb(Tmdb tmdb) { + this.tmdb = tmdb; + return this; + } + + @JsonProperty("metacritic") + public Metacritic getMetacritic() { + return metacritic; + } + + @JsonProperty("metacritic") + public void setMetacritic(Metacritic metacritic) { + this.metacritic = metacritic; + } + + public Ratings withMetacritic(Metacritic metacritic) { + this.metacritic = metacritic; + return this; + } + + @JsonProperty("rottenTomatoes") + public RottenTomatoes getRottenTomatoes() { + return rottenTomatoes; + } + + @JsonProperty("rottenTomatoes") + public void setRottenTomatoes(RottenTomatoes rottenTomatoes) { + this.rottenTomatoes = rottenTomatoes; + } + + public Ratings withRottenTomatoes(RottenTomatoes rottenTomatoes) { + this.rottenTomatoes = rottenTomatoes; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Ratings withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Ratings.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("imdb"); + sb.append('='); + sb.append(((this.imdb == null)?"":this.imdb)); + sb.append(','); + sb.append("tmdb"); + sb.append('='); + sb.append(((this.tmdb == null)?"":this.tmdb)); + sb.append(','); + sb.append("metacritic"); + sb.append('='); + sb.append(((this.metacritic == null)?"":this.metacritic)); + sb.append(','); + sb.append("rottenTomatoes"); + sb.append('='); + sb.append(((this.rottenTomatoes == null)?"":this.rottenTomatoes)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.metacritic == null)? 0 :this.metacritic.hashCode())); + result = ((result* 31)+((this.tmdb == null)? 0 :this.tmdb.hashCode())); + result = ((result* 31)+((this.imdb == null)? 0 :this.imdb.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.rottenTomatoes == null)? 0 :this.rottenTomatoes.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Ratings) == false) { + return false; + } + Ratings rhs = ((Ratings) other); + return ((((((this.metacritic == rhs.metacritic)||((this.metacritic!= null)&&this.metacritic.equals(rhs.metacritic)))&&((this.tmdb == rhs.tmdb)||((this.tmdb!= null)&&this.tmdb.equals(rhs.tmdb))))&&((this.imdb == rhs.imdb)||((this.imdb!= null)&&this.imdb.equals(rhs.imdb))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.rottenTomatoes == rhs.rottenTomatoes)||((this.rottenTomatoes!= null)&&this.rottenTomatoes.equals(rhs.rottenTomatoes)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Record.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Record.java new file mode 100644 index 0000000..b1c843a --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Record.java @@ -0,0 +1,489 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "movieId", + "movie", + "languages", + "quality", + "customFormats", + "size", + "title", + "sizeleft", + "status", + "trackedDownloadStatus", + "trackedDownloadState", + "statusMessages", + "downloadId", + "protocol", + "downloadClient", + "outputPath", + "id", + "indexer" +}) +@Generated("jsonschema2pojo") +public class Record { + + @JsonProperty("movieId") + private Integer movieId; + @JsonProperty("movie") + private Movie movie; + @JsonProperty("languages") + private List languages = new ArrayList(); + @JsonProperty("quality") + private Quality quality; + @JsonProperty("customFormats") + private List customFormats = new ArrayList(); + @JsonProperty("size") + private Long size; + @JsonProperty("title") + private String title; + @JsonProperty("sizeleft") + private Long sizeleft; + @JsonProperty("status") + private String status; + @JsonProperty("trackedDownloadStatus") + private String trackedDownloadStatus; + @JsonProperty("trackedDownloadState") + private String trackedDownloadState; + @JsonProperty("statusMessages") + private List statusMessages = new ArrayList(); + @JsonProperty("downloadId") + private String downloadId; + @JsonProperty("protocol") + private String protocol; + @JsonProperty("downloadClient") + private String downloadClient; + @JsonProperty("outputPath") + private String outputPath; + @JsonProperty("id") + private Integer id; + @JsonProperty("indexer") + private String indexer; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("movieId") + public Integer getMovieId() { + return movieId; + } + + @JsonProperty("movieId") + public void setMovieId(Integer movieId) { + this.movieId = movieId; + } + + public Record withMovieId(Integer movieId) { + this.movieId = movieId; + return this; + } + + @JsonProperty("movie") + public Movie getMovie() { + return movie; + } + + @JsonProperty("movie") + public void setMovie(Movie movie) { + this.movie = movie; + } + + public Record withMovie(Movie movie) { + this.movie = movie; + return this; + } + + @JsonProperty("languages") + public List getLanguages() { + return languages; + } + + @JsonProperty("languages") + public void setLanguages(List languages) { + this.languages = languages; + } + + public Record withLanguages(List languages) { + this.languages = languages; + return this; + } + + @JsonProperty("quality") + public Quality getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality quality) { + this.quality = quality; + } + + public Record withQuality(Quality quality) { + this.quality = quality; + return this; + } + + @JsonProperty("customFormats") + public List getCustomFormats() { + return customFormats; + } + + @JsonProperty("customFormats") + public void setCustomFormats(List customFormats) { + this.customFormats = customFormats; + } + + public Record withCustomFormats(List customFormats) { + this.customFormats = customFormats; + return this; + } + + @JsonProperty("size") + public Long getSize() { + return size; + } + + @JsonProperty("size") + public void setSize(Long size) { + this.size = size; + } + + public Record withSize(Long size) { + this.size = size; + return this; + } + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public Record withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("sizeleft") + public Long getSizeleft() { + return sizeleft; + } + + @JsonProperty("sizeleft") + public void setSizeleft(Long sizeleft) { + this.sizeleft = sizeleft; + } + + public Record withSizeleft(Long sizeleft) { + this.sizeleft = sizeleft; + return this; + } + + @JsonProperty("status") + public String getStatus() { + return status; + } + + @JsonProperty("status") + public void setStatus(String status) { + this.status = status; + } + + public Record withStatus(String status) { + this.status = status; + return this; + } + + @JsonProperty("trackedDownloadStatus") + public String getTrackedDownloadStatus() { + return trackedDownloadStatus; + } + + @JsonProperty("trackedDownloadStatus") + public void setTrackedDownloadStatus(String trackedDownloadStatus) { + this.trackedDownloadStatus = trackedDownloadStatus; + } + + public Record withTrackedDownloadStatus(String trackedDownloadStatus) { + this.trackedDownloadStatus = trackedDownloadStatus; + return this; + } + + @JsonProperty("trackedDownloadState") + public String getTrackedDownloadState() { + return trackedDownloadState; + } + + @JsonProperty("trackedDownloadState") + public void setTrackedDownloadState(String trackedDownloadState) { + this.trackedDownloadState = trackedDownloadState; + } + + public Record withTrackedDownloadState(String trackedDownloadState) { + this.trackedDownloadState = trackedDownloadState; + return this; + } + + @JsonProperty("statusMessages") + public List getStatusMessages() { + return statusMessages; + } + + @JsonProperty("statusMessages") + public void setStatusMessages(List statusMessages) { + this.statusMessages = statusMessages; + } + + public Record withStatusMessages(List statusMessages) { + this.statusMessages = statusMessages; + return this; + } + + @JsonProperty("downloadId") + public String getDownloadId() { + return downloadId; + } + + @JsonProperty("downloadId") + public void setDownloadId(String downloadId) { + this.downloadId = downloadId; + } + + public Record withDownloadId(String downloadId) { + this.downloadId = downloadId; + return this; + } + + @JsonProperty("protocol") + public String getProtocol() { + return protocol; + } + + @JsonProperty("protocol") + public void setProtocol(String protocol) { + this.protocol = protocol; + } + + public Record withProtocol(String protocol) { + this.protocol = protocol; + return this; + } + + @JsonProperty("downloadClient") + public String getDownloadClient() { + return downloadClient; + } + + @JsonProperty("downloadClient") + public void setDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + } + + public Record withDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + return this; + } + + @JsonProperty("outputPath") + public String getOutputPath() { + return outputPath; + } + + @JsonProperty("outputPath") + public void setOutputPath(String outputPath) { + this.outputPath = outputPath; + } + + public Record withOutputPath(String outputPath) { + this.outputPath = outputPath; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Record withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("indexer") + public String getIndexer() { + return indexer; + } + + @JsonProperty("indexer") + public void setIndexer(String indexer) { + this.indexer = indexer; + } + + public Record withIndexer(String indexer) { + this.indexer = indexer; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Record withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Record.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("movieId"); + sb.append('='); + sb.append(((this.movieId == null)?"":this.movieId)); + sb.append(','); + sb.append("movie"); + sb.append('='); + sb.append(((this.movie == null)?"":this.movie)); + sb.append(','); + sb.append("languages"); + sb.append('='); + sb.append(((this.languages == null)?"":this.languages)); + sb.append(','); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("customFormats"); + sb.append('='); + sb.append(((this.customFormats == null)?"":this.customFormats)); + sb.append(','); + sb.append("size"); + sb.append('='); + sb.append(((this.size == null)?"":this.size)); + sb.append(','); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("sizeleft"); + sb.append('='); + sb.append(((this.sizeleft == null)?"":this.sizeleft)); + sb.append(','); + sb.append("status"); + sb.append('='); + sb.append(((this.status == null)?"":this.status)); + sb.append(','); + sb.append("trackedDownloadStatus"); + sb.append('='); + sb.append(((this.trackedDownloadStatus == null)?"":this.trackedDownloadStatus)); + sb.append(','); + sb.append("trackedDownloadState"); + sb.append('='); + sb.append(((this.trackedDownloadState == null)?"":this.trackedDownloadState)); + sb.append(','); + sb.append("statusMessages"); + sb.append('='); + sb.append(((this.statusMessages == null)?"":this.statusMessages)); + sb.append(','); + sb.append("downloadId"); + sb.append('='); + sb.append(((this.downloadId == null)?"":this.downloadId)); + sb.append(','); + sb.append("protocol"); + sb.append('='); + sb.append(((this.protocol == null)?"":this.protocol)); + sb.append(','); + sb.append("downloadClient"); + sb.append('='); + sb.append(((this.downloadClient == null)?"":this.downloadClient)); + sb.append(','); + sb.append("outputPath"); + sb.append('='); + sb.append(((this.outputPath == null)?"":this.outputPath)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("indexer"); + sb.append('='); + sb.append(((this.indexer == null)?"":this.indexer)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.movie == null)? 0 :this.movie.hashCode())); + result = ((result* 31)+((this.languages == null)? 0 :this.languages.hashCode())); + result = ((result* 31)+((this.customFormats == null)? 0 :this.customFormats.hashCode())); + result = ((result* 31)+((this.downloadId == null)? 0 :this.downloadId.hashCode())); + result = ((result* 31)+((this.movieId == null)? 0 :this.movieId.hashCode())); + result = ((result* 31)+((this.indexer == null)? 0 :this.indexer.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + result = ((result* 31)+((this.trackedDownloadState == null)? 0 :this.trackedDownloadState.hashCode())); + result = ((result* 31)+((this.trackedDownloadStatus == null)? 0 :this.trackedDownloadStatus.hashCode())); + result = ((result* 31)+((this.sizeleft == null)? 0 :this.sizeleft.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.statusMessages == null)? 0 :this.statusMessages.hashCode())); + result = ((result* 31)+((this.protocol == null)? 0 :this.protocol.hashCode())); + result = ((result* 31)+((this.size == null)? 0 :this.size.hashCode())); + result = ((result* 31)+((this.outputPath == null)? 0 :this.outputPath.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.status == null)? 0 :this.status.hashCode())); + result = ((result* 31)+((this.downloadClient == null)? 0 :this.downloadClient.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Record) == false) { + return false; + } + Record rhs = ((Record) other); + return ((((((((((((((((((((this.movie == rhs.movie)||((this.movie!= null)&&this.movie.equals(rhs.movie)))&&((this.languages == rhs.languages)||((this.languages!= null)&&this.languages.equals(rhs.languages))))&&((this.customFormats == rhs.customFormats)||((this.customFormats!= null)&&this.customFormats.equals(rhs.customFormats))))&&((this.downloadId == rhs.downloadId)||((this.downloadId!= null)&&this.downloadId.equals(rhs.downloadId))))&&((this.movieId == rhs.movieId)||((this.movieId!= null)&&this.movieId.equals(rhs.movieId))))&&((this.indexer == rhs.indexer)||((this.indexer!= null)&&this.indexer.equals(rhs.indexer))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title))))&&((this.trackedDownloadState == rhs.trackedDownloadState)||((this.trackedDownloadState!= null)&&this.trackedDownloadState.equals(rhs.trackedDownloadState))))&&((this.trackedDownloadStatus == rhs.trackedDownloadStatus)||((this.trackedDownloadStatus!= null)&&this.trackedDownloadStatus.equals(rhs.trackedDownloadStatus))))&&((this.sizeleft == rhs.sizeleft)||((this.sizeleft!= null)&&this.sizeleft.equals(rhs.sizeleft))))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.statusMessages == rhs.statusMessages)||((this.statusMessages!= null)&&this.statusMessages.equals(rhs.statusMessages))))&&((this.protocol == rhs.protocol)||((this.protocol!= null)&&this.protocol.equals(rhs.protocol))))&&((this.size == rhs.size)||((this.size!= null)&&this.size.equals(rhs.size))))&&((this.outputPath == rhs.outputPath)||((this.outputPath!= null)&&this.outputPath.equals(rhs.outputPath))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.status == rhs.status)||((this.status!= null)&&this.status.equals(rhs.status))))&&((this.downloadClient == rhs.downloadClient)||((this.downloadClient!= null)&&this.downloadClient.equals(rhs.downloadClient)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Revision.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Revision.java new file mode 100644 index 0000000..437581b --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Revision.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "version", + "real", + "isRepack" +}) +@Generated("jsonschema2pojo") +public class Revision { + + @JsonProperty("version") + private Integer version; + @JsonProperty("real") + private Integer real; + @JsonProperty("isRepack") + private Boolean isRepack; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("version") + public Integer getVersion() { + return version; + } + + @JsonProperty("version") + public void setVersion(Integer version) { + this.version = version; + } + + public Revision withVersion(Integer version) { + this.version = version; + return this; + } + + @JsonProperty("real") + public Integer getReal() { + return real; + } + + @JsonProperty("real") + public void setReal(Integer real) { + this.real = real; + } + + public Revision withReal(Integer real) { + this.real = real; + return this; + } + + @JsonProperty("isRepack") + public Boolean getIsRepack() { + return isRepack; + } + + @JsonProperty("isRepack") + public void setIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + } + + public Revision withIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Revision withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Revision.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("version"); + sb.append('='); + sb.append(((this.version == null)?"":this.version)); + sb.append(','); + sb.append("real"); + sb.append('='); + sb.append(((this.real == null)?"":this.real)); + sb.append(','); + sb.append("isRepack"); + sb.append('='); + sb.append(((this.isRepack == null)?"":this.isRepack)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.real == null)? 0 :this.real.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode())); + result = ((result* 31)+((this.isRepack == null)? 0 :this.isRepack.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Revision) == false) { + return false; + } + Revision rhs = ((Revision) other); + return (((((this.real == rhs.real)||((this.real!= null)&&this.real.equals(rhs.real)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.version == rhs.version)||((this.version!= null)&&this.version.equals(rhs.version))))&&((this.isRepack == rhs.isRepack)||((this.isRepack!= null)&&this.isRepack.equals(rhs.isRepack)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/RottenTomatoes.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/RottenTomatoes.java new file mode 100644 index 0000000..41fbb97 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/RottenTomatoes.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class RottenTomatoes { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Integer value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public RottenTomatoes withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Integer getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Integer value) { + this.value = value; + } + + public RottenTomatoes withValue(Integer value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public RottenTomatoes withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public RottenTomatoes withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(RottenTomatoes.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof RottenTomatoes) == false) { + return false; + } + RottenTomatoes rhs = ((RottenTomatoes) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/StatusMessage.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/StatusMessage.java new file mode 100644 index 0000000..2612030 --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/StatusMessage.java @@ -0,0 +1,121 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "title", + "messages" +}) +@Generated("jsonschema2pojo") +public class StatusMessage { + + @JsonProperty("title") + private String title; + @JsonProperty("messages") + private List messages = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public StatusMessage withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("messages") + public List getMessages() { + return messages; + } + + @JsonProperty("messages") + public void setMessages(List messages) { + this.messages = messages; + } + + public StatusMessage withMessages(List messages) { + this.messages = messages; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public StatusMessage withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(StatusMessage.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("messages"); + sb.append('='); + sb.append(((this.messages == null)?"":this.messages)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.messages == null)? 0 :this.messages.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof StatusMessage) == false) { + return false; + } + StatusMessage rhs = ((StatusMessage) other); + return ((((this.messages == rhs.messages)||((this.messages!= null)&&this.messages.equals(rhs.messages)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title)))); + } + +} diff --git a/src/main/java/tv/mangrana/radarr/api/schema/queue/Tmdb.java b/src/main/java/tv/mangrana/radarr/api/schema/queue/Tmdb.java new file mode 100644 index 0000000..ee68eca --- /dev/null +++ b/src/main/java/tv/mangrana/radarr/api/schema/queue/Tmdb.java @@ -0,0 +1,142 @@ + +package tv.mangrana.radarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value", + "type" +}) +@Generated("jsonschema2pojo") +public class Tmdb { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Double value; + @JsonProperty("type") + private String type; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Tmdb withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Double getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Double value) { + this.value = value; + } + + public Tmdb withValue(Double value) { + this.value = value; + return this; + } + + @JsonProperty("type") + public String getType() { + return type; + } + + @JsonProperty("type") + public void setType(String type) { + this.type = type; + } + + public Tmdb withType(String type) { + this.type = type; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Tmdb withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Tmdb.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("type"); + sb.append('='); + sb.append(((this.type == null)?"":this.type)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Tmdb) == false) { + return false; + } + Tmdb rhs = ((Tmdb) other); + return (((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrAPIInterface.java b/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrAPIInterface.java new file mode 100644 index 0000000..0529d04 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrAPIInterface.java @@ -0,0 +1,53 @@ +package tv.mangrana.sonarr.api.client.gateway; + +import tv.mangrana.sonarr.api.schema.history.SonarrHistory; +import tv.mangrana.sonarr.api.schema.series.SonarrSerie; +import tv.mangrana.sonarr.api.schema.command.RefreshSerieCommand; +import tv.mangrana.sonarr.api.schema.queue.SonarrQueue; +import tv.mangrana.utils.rest.APIInterface; + +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; + +/** + * For more information, visit: official Documentation + */ +@Path("/api/v3") +public interface SonarrAPIInterface extends APIInterface { + + @GET + @Path("/queue") + @Produces({ MediaType.APPLICATION_JSON }) + SonarrQueue getQueue(@QueryParam("apikey") String apikey); + + @DELETE + @Path("/queue/{id}") + @Produces({ MediaType.APPLICATION_JSON }) + void deleteQueueElement(@PathParam("id") Integer idElement, @QueryParam("removeFromClient") boolean removeFromClient, + @QueryParam("apikey") String apikey); + + @GET + @Path("/series/{id}") + @Produces({ MediaType.APPLICATION_JSON }) + SonarrSerie getSerieById(@PathParam("id") Integer idSerie, @QueryParam("apikey") String apikey); + + @POST + @Path("/command") + @Consumes({ MediaType.APPLICATION_JSON }) + void refreshSeriesCommand(RefreshSerieCommand command, @QueryParam("apikey") String apikey); + + /** + * Get history. see here the official Documentation + * @param sortKey (REQUIRED, string) - series.title or date + * @param page (int) - 1-indexed Default: 1 + * @param pageSize (int) - Default: 10 + * @param sortDir (string) - asc or desc - Default: desc + */ + @GET + @Path("/history") + @Consumes({ MediaType.APPLICATION_JSON }) + SonarrHistory getHistory(@QueryParam("sortKey") String sortKey, @QueryParam("sortDir") String sortDir, + @QueryParam("pageSize") int pageSize, @QueryParam("page") int page, + @QueryParam("apikey") String apikey); + +} \ No newline at end of file diff --git a/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrApiGateway.java b/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrApiGateway.java new file mode 100644 index 0000000..7264a97 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/client/gateway/SonarrApiGateway.java @@ -0,0 +1,60 @@ +package tv.mangrana.sonarr.api.client.gateway; + +import tv.mangrana.config.ConfigFileLoader; +import tv.mangrana.sonarr.api.schema.command.RefreshSerieCommand; +import tv.mangrana.sonarr.api.schema.history.SonarrHistory; +import tv.mangrana.sonarr.api.schema.queue.SonarrQueue; +import tv.mangrana.sonarr.api.schema.series.SonarrSerie; +import tv.mangrana.utils.EasyLogger; +import tv.mangrana.utils.Output; +import tv.mangrana.utils.rest.APIProxyBuilderSingleton; + +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.SONARR_API_HOST; +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.SONARR_API_KEY; + +public class SonarrApiGateway { + + private final String apiKey; + private final SonarrAPIInterface proxy; + private final EasyLogger logger; + + public SonarrApiGateway(ConfigFileLoader config) { + apiKey = config.getConfig(SONARR_API_KEY); + proxy = APIProxyBuilderSingleton.getSonarrInterface(config.getConfig(SONARR_API_HOST)); + logger = new EasyLogger(); + } + + public SonarrQueue getQueue() { + return proxy.getQueue(apiKey); + } + + public void deleteQueueElement(Integer idElement) { + proxy.deleteQueueElement(idElement, false, apiKey); + log("sent Delete command to Sonarr for the queue element with id "+idElement); + } + + public SonarrSerie getSerieById(Integer seriesId) { + SonarrSerie serie = null; + try { + serie = proxy.getSerieById(seriesId, apiKey); + logger.nLog("retrieved serie from sonarr with id "+seriesId); + } catch (Exception e) { + logger.nHLog("Error while getSerieById: {0}", e.getMessage()); + } + return serie; + } + + public void refreshSerie(Integer seriesId) { + proxy.refreshSeriesCommand(new RefreshSerieCommand(seriesId), apiKey); + log("sent Refresh command to Sonarr for the serie with id "+seriesId); + } + + public SonarrHistory getHistory () { + return proxy.getHistory("date", "desc", 200, 1, apiKey); + } + + private void log (String msg) { + Output.log("SonarrApiGateway: "+msg); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/command/RefreshSerieCommand.java b/src/main/java/tv/mangrana/sonarr/api/schema/command/RefreshSerieCommand.java new file mode 100644 index 0000000..0e886d1 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/command/RefreshSerieCommand.java @@ -0,0 +1,24 @@ +package tv.mangrana.sonarr.api.schema.command; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class RefreshSerieCommand { + + @JsonProperty("name") + private String name = "RefreshSeries"; + + @JsonProperty("seriesId") + private Integer serieId; + + public RefreshSerieCommand(Integer serieId) { + this.serieId = serieId; + } + + public String getName() { + return name; + } + + public Integer getSerieId() { + return serieId; + } +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Data.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Data.java new file mode 100644 index 0000000..23ce978 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Data.java @@ -0,0 +1,533 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "indexer", + "nzbInfoUrl", + "releaseGroup", + "age", + "ageHours", + "ageMinutes", + "publishedDate", + "downloadClient", + "downloadClientName", + "size", + "downloadUrl", + "guid", + "tvdbId", + "tvRageId", + "protocol", + "preferredWordScore", + "torrentInfoHash", + "fileId", + "droppedPath", + "importedPath" +}) +@Generated("jsonschema2pojo") +public class Data { + + @JsonProperty("indexer") + private String indexer; + @JsonProperty("nzbInfoUrl") + private String nzbInfoUrl; + @JsonProperty("releaseGroup") + private Object releaseGroup; + @JsonProperty("age") + private String age; + @JsonProperty("ageHours") + private String ageHours; + @JsonProperty("ageMinutes") + private String ageMinutes; + @JsonProperty("publishedDate") + private String publishedDate; + @JsonProperty("downloadClient") + private String downloadClient; + @JsonProperty("downloadClientName") + private String downloadClientName; + @JsonProperty("size") + private String size; + @JsonProperty("downloadUrl") + private String downloadUrl; + @JsonProperty("guid") + private String guid; + @JsonProperty("tvdbId") + private String tvdbId; + @JsonProperty("tvRageId") + private String tvRageId; + @JsonProperty("protocol") + private String protocol; + @JsonProperty("preferredWordScore") + private String preferredWordScore; + @JsonProperty("torrentInfoHash") + private String torrentInfoHash; + @JsonProperty("fileId") + private String fileId; + @JsonProperty("droppedPath") + private String droppedPath; + @JsonProperty("importedPath") + private String importedPath; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("indexer") + public String getIndexer() { + return indexer; + } + + @JsonProperty("indexer") + public void setIndexer(String indexer) { + this.indexer = indexer; + } + + public Data withIndexer(String indexer) { + this.indexer = indexer; + return this; + } + + @JsonProperty("nzbInfoUrl") + public String getNzbInfoUrl() { + return nzbInfoUrl; + } + + @JsonProperty("nzbInfoUrl") + public void setNzbInfoUrl(String nzbInfoUrl) { + this.nzbInfoUrl = nzbInfoUrl; + } + + public Data withNzbInfoUrl(String nzbInfoUrl) { + this.nzbInfoUrl = nzbInfoUrl; + return this; + } + + @JsonProperty("releaseGroup") + public Object getReleaseGroup() { + return releaseGroup; + } + + @JsonProperty("releaseGroup") + public void setReleaseGroup(Object releaseGroup) { + this.releaseGroup = releaseGroup; + } + + public Data withReleaseGroup(Object releaseGroup) { + this.releaseGroup = releaseGroup; + return this; + } + + @JsonProperty("age") + public String getAge() { + return age; + } + + @JsonProperty("age") + public void setAge(String age) { + this.age = age; + } + + public Data withAge(String age) { + this.age = age; + return this; + } + + @JsonProperty("ageHours") + public String getAgeHours() { + return ageHours; + } + + @JsonProperty("ageHours") + public void setAgeHours(String ageHours) { + this.ageHours = ageHours; + } + + public Data withAgeHours(String ageHours) { + this.ageHours = ageHours; + return this; + } + + @JsonProperty("ageMinutes") + public String getAgeMinutes() { + return ageMinutes; + } + + @JsonProperty("ageMinutes") + public void setAgeMinutes(String ageMinutes) { + this.ageMinutes = ageMinutes; + } + + public Data withAgeMinutes(String ageMinutes) { + this.ageMinutes = ageMinutes; + return this; + } + + @JsonProperty("publishedDate") + public String getPublishedDate() { + return publishedDate; + } + + @JsonProperty("publishedDate") + public void setPublishedDate(String publishedDate) { + this.publishedDate = publishedDate; + } + + public Data withPublishedDate(String publishedDate) { + this.publishedDate = publishedDate; + return this; + } + + @JsonProperty("downloadClient") + public String getDownloadClient() { + return downloadClient; + } + + @JsonProperty("downloadClient") + public void setDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + } + + public Data withDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + return this; + } + + @JsonProperty("downloadClientName") + public String getDownloadClientName() { + return downloadClientName; + } + + @JsonProperty("downloadClientName") + public void setDownloadClientName(String downloadClientName) { + this.downloadClientName = downloadClientName; + } + + public Data withDownloadClientName(String downloadClientName) { + this.downloadClientName = downloadClientName; + return this; + } + + @JsonProperty("size") + public String getSize() { + return size; + } + + @JsonProperty("size") + public void setSize(String size) { + this.size = size; + } + + public Data withSize(String size) { + this.size = size; + return this; + } + + @JsonProperty("downloadUrl") + public String getDownloadUrl() { + return downloadUrl; + } + + @JsonProperty("downloadUrl") + public void setDownloadUrl(String downloadUrl) { + this.downloadUrl = downloadUrl; + } + + public Data withDownloadUrl(String downloadUrl) { + this.downloadUrl = downloadUrl; + return this; + } + + @JsonProperty("guid") + public String getGuid() { + return guid; + } + + @JsonProperty("guid") + public void setGuid(String guid) { + this.guid = guid; + } + + public Data withGuid(String guid) { + this.guid = guid; + return this; + } + + @JsonProperty("tvdbId") + public String getTvdbId() { + return tvdbId; + } + + @JsonProperty("tvdbId") + public void setTvdbId(String tvdbId) { + this.tvdbId = tvdbId; + } + + public Data withTvdbId(String tvdbId) { + this.tvdbId = tvdbId; + return this; + } + + @JsonProperty("tvRageId") + public String getTvRageId() { + return tvRageId; + } + + @JsonProperty("tvRageId") + public void setTvRageId(String tvRageId) { + this.tvRageId = tvRageId; + } + + public Data withTvRageId(String tvRageId) { + this.tvRageId = tvRageId; + return this; + } + + @JsonProperty("protocol") + public String getProtocol() { + return protocol; + } + + @JsonProperty("protocol") + public void setProtocol(String protocol) { + this.protocol = protocol; + } + + public Data withProtocol(String protocol) { + this.protocol = protocol; + return this; + } + + @JsonProperty("preferredWordScore") + public String getPreferredWordScore() { + return preferredWordScore; + } + + @JsonProperty("preferredWordScore") + public void setPreferredWordScore(String preferredWordScore) { + this.preferredWordScore = preferredWordScore; + } + + public Data withPreferredWordScore(String preferredWordScore) { + this.preferredWordScore = preferredWordScore; + return this; + } + + @JsonProperty("torrentInfoHash") + public String getTorrentInfoHash() { + return torrentInfoHash; + } + + @JsonProperty("torrentInfoHash") + public void setTorrentInfoHash(String torrentInfoHash) { + this.torrentInfoHash = torrentInfoHash; + } + + public Data withTorrentInfoHash(String torrentInfoHash) { + this.torrentInfoHash = torrentInfoHash; + return this; + } + + @JsonProperty("fileId") + public String getFileId() { + return fileId; + } + + @JsonProperty("fileId") + public void setFileId(String fileId) { + this.fileId = fileId; + } + + public Data withFileId(String fileId) { + this.fileId = fileId; + return this; + } + + @JsonProperty("droppedPath") + public String getDroppedPath() { + return droppedPath; + } + + @JsonProperty("droppedPath") + public void setDroppedPath(String droppedPath) { + this.droppedPath = droppedPath; + } + + public Data withDroppedPath(String droppedPath) { + this.droppedPath = droppedPath; + return this; + } + + @JsonProperty("importedPath") + public String getImportedPath() { + return importedPath; + } + + @JsonProperty("importedPath") + public void setImportedPath(String importedPath) { + this.importedPath = importedPath; + } + + public Data withImportedPath(String importedPath) { + this.importedPath = importedPath; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Data withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Data.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("indexer"); + sb.append('='); + sb.append(((this.indexer == null)?"":this.indexer)); + sb.append(','); + sb.append("nzbInfoUrl"); + sb.append('='); + sb.append(((this.nzbInfoUrl == null)?"":this.nzbInfoUrl)); + sb.append(','); + sb.append("releaseGroup"); + sb.append('='); + sb.append(((this.releaseGroup == null)?"":this.releaseGroup)); + sb.append(','); + sb.append("age"); + sb.append('='); + sb.append(((this.age == null)?"":this.age)); + sb.append(','); + sb.append("ageHours"); + sb.append('='); + sb.append(((this.ageHours == null)?"":this.ageHours)); + sb.append(','); + sb.append("ageMinutes"); + sb.append('='); + sb.append(((this.ageMinutes == null)?"":this.ageMinutes)); + sb.append(','); + sb.append("publishedDate"); + sb.append('='); + sb.append(((this.publishedDate == null)?"":this.publishedDate)); + sb.append(','); + sb.append("downloadClient"); + sb.append('='); + sb.append(((this.downloadClient == null)?"":this.downloadClient)); + sb.append(','); + sb.append("downloadClientName"); + sb.append('='); + sb.append(((this.downloadClientName == null)?"":this.downloadClientName)); + sb.append(','); + sb.append("size"); + sb.append('='); + sb.append(((this.size == null)?"":this.size)); + sb.append(','); + sb.append("downloadUrl"); + sb.append('='); + sb.append(((this.downloadUrl == null)?"":this.downloadUrl)); + sb.append(','); + sb.append("guid"); + sb.append('='); + sb.append(((this.guid == null)?"":this.guid)); + sb.append(','); + sb.append("tvdbId"); + sb.append('='); + sb.append(((this.tvdbId == null)?"":this.tvdbId)); + sb.append(','); + sb.append("tvRageId"); + sb.append('='); + sb.append(((this.tvRageId == null)?"":this.tvRageId)); + sb.append(','); + sb.append("protocol"); + sb.append('='); + sb.append(((this.protocol == null)?"":this.protocol)); + sb.append(','); + sb.append("preferredWordScore"); + sb.append('='); + sb.append(((this.preferredWordScore == null)?"":this.preferredWordScore)); + sb.append(','); + sb.append("torrentInfoHash"); + sb.append('='); + sb.append(((this.torrentInfoHash == null)?"":this.torrentInfoHash)); + sb.append(','); + sb.append("fileId"); + sb.append('='); + sb.append(((this.fileId == null)?"":this.fileId)); + sb.append(','); + sb.append("droppedPath"); + sb.append('='); + sb.append(((this.droppedPath == null)?"":this.droppedPath)); + sb.append(','); + sb.append("importedPath"); + sb.append('='); + sb.append(((this.importedPath == null)?"":this.importedPath)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.nzbInfoUrl == null)? 0 :this.nzbInfoUrl.hashCode())); + result = ((result* 31)+((this.ageMinutes == null)? 0 :this.ageMinutes.hashCode())); + result = ((result* 31)+((this.tvdbId == null)? 0 :this.tvdbId.hashCode())); + result = ((result* 31)+((this.ageHours == null)? 0 :this.ageHours.hashCode())); + result = ((result* 31)+((this.downloadUrl == null)? 0 :this.downloadUrl.hashCode())); + result = ((result* 31)+((this.torrentInfoHash == null)? 0 :this.torrentInfoHash.hashCode())); + result = ((result* 31)+((this.importedPath == null)? 0 :this.importedPath.hashCode())); + result = ((result* 31)+((this.indexer == null)? 0 :this.indexer.hashCode())); + result = ((result* 31)+((this.droppedPath == null)? 0 :this.droppedPath.hashCode())); + result = ((result* 31)+((this.protocol == null)? 0 :this.protocol.hashCode())); + result = ((result* 31)+((this.size == null)? 0 :this.size.hashCode())); + result = ((result* 31)+((this.tvRageId == null)? 0 :this.tvRageId.hashCode())); + result = ((result* 31)+((this.preferredWordScore == null)? 0 :this.preferredWordScore.hashCode())); + result = ((result* 31)+((this.guid == null)? 0 :this.guid.hashCode())); + result = ((result* 31)+((this.downloadClientName == null)? 0 :this.downloadClientName.hashCode())); + result = ((result* 31)+((this.publishedDate == null)? 0 :this.publishedDate.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.age == null)? 0 :this.age.hashCode())); + result = ((result* 31)+((this.releaseGroup == null)? 0 :this.releaseGroup.hashCode())); + result = ((result* 31)+((this.downloadClient == null)? 0 :this.downloadClient.hashCode())); + result = ((result* 31)+((this.fileId == null)? 0 :this.fileId.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Data) == false) { + return false; + } + Data rhs = ((Data) other); + return ((((((((((((((((((((((this.nzbInfoUrl == rhs.nzbInfoUrl)||((this.nzbInfoUrl!= null)&&this.nzbInfoUrl.equals(rhs.nzbInfoUrl)))&&((this.ageMinutes == rhs.ageMinutes)||((this.ageMinutes!= null)&&this.ageMinutes.equals(rhs.ageMinutes))))&&((this.tvdbId == rhs.tvdbId)||((this.tvdbId!= null)&&this.tvdbId.equals(rhs.tvdbId))))&&((this.ageHours == rhs.ageHours)||((this.ageHours!= null)&&this.ageHours.equals(rhs.ageHours))))&&((this.downloadUrl == rhs.downloadUrl)||((this.downloadUrl!= null)&&this.downloadUrl.equals(rhs.downloadUrl))))&&((this.torrentInfoHash == rhs.torrentInfoHash)||((this.torrentInfoHash!= null)&&this.torrentInfoHash.equals(rhs.torrentInfoHash))))&&((this.importedPath == rhs.importedPath)||((this.importedPath!= null)&&this.importedPath.equals(rhs.importedPath))))&&((this.indexer == rhs.indexer)||((this.indexer!= null)&&this.indexer.equals(rhs.indexer))))&&((this.droppedPath == rhs.droppedPath)||((this.droppedPath!= null)&&this.droppedPath.equals(rhs.droppedPath))))&&((this.protocol == rhs.protocol)||((this.protocol!= null)&&this.protocol.equals(rhs.protocol))))&&((this.size == rhs.size)||((this.size!= null)&&this.size.equals(rhs.size))))&&((this.tvRageId == rhs.tvRageId)||((this.tvRageId!= null)&&this.tvRageId.equals(rhs.tvRageId))))&&((this.preferredWordScore == rhs.preferredWordScore)||((this.preferredWordScore!= null)&&this.preferredWordScore.equals(rhs.preferredWordScore))))&&((this.guid == rhs.guid)||((this.guid!= null)&&this.guid.equals(rhs.guid))))&&((this.downloadClientName == rhs.downloadClientName)||((this.downloadClientName!= null)&&this.downloadClientName.equals(rhs.downloadClientName))))&&((this.publishedDate == rhs.publishedDate)||((this.publishedDate!= null)&&this.publishedDate.equals(rhs.publishedDate))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.age == rhs.age)||((this.age!= null)&&this.age.equals(rhs.age))))&&((this.releaseGroup == rhs.releaseGroup)||((this.releaseGroup!= null)&&this.releaseGroup.equals(rhs.releaseGroup))))&&((this.downloadClient == rhs.downloadClient)||((this.downloadClient!= null)&&this.downloadClient.equals(rhs.downloadClient))))&&((this.fileId == rhs.fileId)||((this.fileId!= null)&&this.fileId.equals(rhs.fileId)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Language.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Language.java new file mode 100644 index 0000000..17ad77f --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Language.java @@ -0,0 +1,119 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class Language { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Language withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Language withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Language withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Language.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Language) == false) { + return false; + } + Language rhs = ((Language) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality.java new file mode 100644 index 0000000..95ce477 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality.java @@ -0,0 +1,119 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "quality", + "revision" +}) +@Generated("jsonschema2pojo") +public class Quality { + + @JsonProperty("quality") + private Quality__1 quality; + @JsonProperty("revision") + private Revision revision; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("quality") + public Quality__1 getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality__1 quality) { + this.quality = quality; + } + + public Quality withQuality(Quality__1 quality) { + this.quality = quality; + return this; + } + + @JsonProperty("revision") + public Revision getRevision() { + return revision; + } + + @JsonProperty("revision") + public void setRevision(Revision revision) { + this.revision = revision; + } + + public Quality withRevision(Revision revision) { + this.revision = revision; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("revision"); + sb.append('='); + sb.append(((this.revision == null)?"":this.revision)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.revision == null)? 0 :this.revision.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality) == false) { + return false; + } + Quality rhs = ((Quality) other); + return ((((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.revision == rhs.revision)||((this.revision!= null)&&this.revision.equals(rhs.revision)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality__1.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality__1.java new file mode 100644 index 0000000..a1b977b --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Quality__1.java @@ -0,0 +1,165 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name", + "source", + "resolution" +}) +@Generated("jsonschema2pojo") +public class Quality__1 { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonProperty("source") + private String source; + @JsonProperty("resolution") + private Integer resolution; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Quality__1 withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Quality__1 withName(String name) { + this.name = name; + return this; + } + + @JsonProperty("source") + public String getSource() { + return source; + } + + @JsonProperty("source") + public void setSource(String source) { + this.source = source; + } + + public Quality__1 withSource(String source) { + this.source = source; + return this; + } + + @JsonProperty("resolution") + public Integer getResolution() { + return resolution; + } + + @JsonProperty("resolution") + public void setResolution(Integer resolution) { + this.resolution = resolution; + } + + public Quality__1 withResolution(Integer resolution) { + this.resolution = resolution; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality__1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality__1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("source"); + sb.append('='); + sb.append(((this.source == null)?"":this.source)); + sb.append(','); + sb.append("resolution"); + sb.append('='); + sb.append(((this.resolution == null)?"":this.resolution)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.source == null)? 0 :this.source.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.resolution == null)? 0 :this.resolution.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality__1) == false) { + return false; + } + Quality__1 rhs = ((Quality__1) other); + return ((((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.source == rhs.source)||((this.source!= null)&&this.source.equals(rhs.source))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.resolution == rhs.resolution)||((this.resolution!= null)&&this.resolution.equals(rhs.resolution)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Record.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Record.java new file mode 100644 index 0000000..1f30569 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Record.java @@ -0,0 +1,349 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "episodeId", + "seriesId", + "sourceTitle", + "language", + "quality", + "qualityCutoffNotMet", + "languageCutoffNotMet", + "date", + "downloadId", + "eventType", + "data", + "id" +}) +@Generated("jsonschema2pojo") +public class Record { + + @JsonProperty("episodeId") + private Integer episodeId; + @JsonProperty("seriesId") + private Integer seriesId; + @JsonProperty("sourceTitle") + private String sourceTitle; + @JsonProperty("language") + private Language language; + @JsonProperty("quality") + private Quality quality; + @JsonProperty("qualityCutoffNotMet") + private Boolean qualityCutoffNotMet; + @JsonProperty("languageCutoffNotMet") + private Boolean languageCutoffNotMet; + @JsonProperty("date") + private String date; + @JsonProperty("downloadId") + private String downloadId; + @JsonProperty("eventType") + private String eventType; + @JsonProperty("data") + private Data data; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("episodeId") + public Integer getEpisodeId() { + return episodeId; + } + + @JsonProperty("episodeId") + public void setEpisodeId(Integer episodeId) { + this.episodeId = episodeId; + } + + public Record withEpisodeId(Integer episodeId) { + this.episodeId = episodeId; + return this; + } + + @JsonProperty("seriesId") + public Integer getSeriesId() { + return seriesId; + } + + @JsonProperty("seriesId") + public void setSeriesId(Integer seriesId) { + this.seriesId = seriesId; + } + + public Record withSeriesId(Integer seriesId) { + this.seriesId = seriesId; + return this; + } + + @JsonProperty("sourceTitle") + public String getSourceTitle() { + return sourceTitle; + } + + @JsonProperty("sourceTitle") + public void setSourceTitle(String sourceTitle) { + this.sourceTitle = sourceTitle; + } + + public Record withSourceTitle(String sourceTitle) { + this.sourceTitle = sourceTitle; + return this; + } + + @JsonProperty("language") + public Language getLanguage() { + return language; + } + + @JsonProperty("language") + public void setLanguage(Language language) { + this.language = language; + } + + public Record withLanguage(Language language) { + this.language = language; + return this; + } + + @JsonProperty("quality") + public Quality getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality quality) { + this.quality = quality; + } + + public Record withQuality(Quality quality) { + this.quality = quality; + return this; + } + + @JsonProperty("qualityCutoffNotMet") + public Boolean getQualityCutoffNotMet() { + return qualityCutoffNotMet; + } + + @JsonProperty("qualityCutoffNotMet") + public void setQualityCutoffNotMet(Boolean qualityCutoffNotMet) { + this.qualityCutoffNotMet = qualityCutoffNotMet; + } + + public Record withQualityCutoffNotMet(Boolean qualityCutoffNotMet) { + this.qualityCutoffNotMet = qualityCutoffNotMet; + return this; + } + + @JsonProperty("languageCutoffNotMet") + public Boolean getLanguageCutoffNotMet() { + return languageCutoffNotMet; + } + + @JsonProperty("languageCutoffNotMet") + public void setLanguageCutoffNotMet(Boolean languageCutoffNotMet) { + this.languageCutoffNotMet = languageCutoffNotMet; + } + + public Record withLanguageCutoffNotMet(Boolean languageCutoffNotMet) { + this.languageCutoffNotMet = languageCutoffNotMet; + return this; + } + + @JsonProperty("date") + public String getDate() { + return date; + } + + @JsonProperty("date") + public void setDate(String date) { + this.date = date; + } + + public Record withDate(String date) { + this.date = date; + return this; + } + + @JsonProperty("downloadId") + public String getDownloadId() { + return downloadId; + } + + @JsonProperty("downloadId") + public void setDownloadId(String downloadId) { + this.downloadId = downloadId; + } + + public Record withDownloadId(String downloadId) { + this.downloadId = downloadId; + return this; + } + + @JsonProperty("eventType") + public String getEventType() { + return eventType; + } + + @JsonProperty("eventType") + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public Record withEventType(String eventType) { + this.eventType = eventType; + return this; + } + + @JsonProperty("data") + public Data getData() { + return data; + } + + @JsonProperty("data") + public void setData(Data data) { + this.data = data; + } + + public Record withData(Data data) { + this.data = data; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Record withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Record withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Record.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("episodeId"); + sb.append('='); + sb.append(((this.episodeId == null)?"":this.episodeId)); + sb.append(','); + sb.append("seriesId"); + sb.append('='); + sb.append(((this.seriesId == null)?"":this.seriesId)); + sb.append(','); + sb.append("sourceTitle"); + sb.append('='); + sb.append(((this.sourceTitle == null)?"":this.sourceTitle)); + sb.append(','); + sb.append("language"); + sb.append('='); + sb.append(((this.language == null)?"":this.language)); + sb.append(','); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("qualityCutoffNotMet"); + sb.append('='); + sb.append(((this.qualityCutoffNotMet == null)?"":this.qualityCutoffNotMet)); + sb.append(','); + sb.append("languageCutoffNotMet"); + sb.append('='); + sb.append(((this.languageCutoffNotMet == null)?"":this.languageCutoffNotMet)); + sb.append(','); + sb.append("date"); + sb.append('='); + sb.append(((this.date == null)?"":this.date)); + sb.append(','); + sb.append("downloadId"); + sb.append('='); + sb.append(((this.downloadId == null)?"":this.downloadId)); + sb.append(','); + sb.append("eventType"); + sb.append('='); + sb.append(((this.eventType == null)?"":this.eventType)); + sb.append(','); + sb.append("data"); + sb.append('='); + sb.append(((this.data == null)?"":this.data)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.date == null)? 0 :this.date.hashCode())); + result = ((result* 31)+((this.languageCutoffNotMet == null)? 0 :this.languageCutoffNotMet.hashCode())); + result = ((result* 31)+((this.data == null)? 0 :this.data.hashCode())); + result = ((result* 31)+((this.sourceTitle == null)? 0 :this.sourceTitle.hashCode())); + result = ((result* 31)+((this.downloadId == null)? 0 :this.downloadId.hashCode())); + result = ((result* 31)+((this.language == null)? 0 :this.language.hashCode())); + result = ((result* 31)+((this.eventType == null)? 0 :this.eventType.hashCode())); + result = ((result* 31)+((this.episodeId == null)? 0 :this.episodeId.hashCode())); + result = ((result* 31)+((this.seriesId == null)? 0 :this.seriesId.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.qualityCutoffNotMet == null)? 0 :this.qualityCutoffNotMet.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Record) == false) { + return false; + } + Record rhs = ((Record) other); + return ((((((((((((((this.date == rhs.date)||((this.date!= null)&&this.date.equals(rhs.date)))&&((this.languageCutoffNotMet == rhs.languageCutoffNotMet)||((this.languageCutoffNotMet!= null)&&this.languageCutoffNotMet.equals(rhs.languageCutoffNotMet))))&&((this.data == rhs.data)||((this.data!= null)&&this.data.equals(rhs.data))))&&((this.sourceTitle == rhs.sourceTitle)||((this.sourceTitle!= null)&&this.sourceTitle.equals(rhs.sourceTitle))))&&((this.downloadId == rhs.downloadId)||((this.downloadId!= null)&&this.downloadId.equals(rhs.downloadId))))&&((this.language == rhs.language)||((this.language!= null)&&this.language.equals(rhs.language))))&&((this.eventType == rhs.eventType)||((this.eventType!= null)&&this.eventType.equals(rhs.eventType))))&&((this.episodeId == rhs.episodeId)||((this.episodeId!= null)&&this.episodeId.equals(rhs.episodeId))))&&((this.seriesId == rhs.seriesId)||((this.seriesId!= null)&&this.seriesId.equals(rhs.seriesId))))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.qualityCutoffNotMet == rhs.qualityCutoffNotMet)||((this.qualityCutoffNotMet!= null)&&this.qualityCutoffNotMet.equals(rhs.qualityCutoffNotMet)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/Revision.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/Revision.java new file mode 100644 index 0000000..63482c5 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/Revision.java @@ -0,0 +1,142 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "version", + "real", + "isRepack" +}) +@Generated("jsonschema2pojo") +public class Revision { + + @JsonProperty("version") + private Integer version; + @JsonProperty("real") + private Integer real; + @JsonProperty("isRepack") + private Boolean isRepack; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("version") + public Integer getVersion() { + return version; + } + + @JsonProperty("version") + public void setVersion(Integer version) { + this.version = version; + } + + public Revision withVersion(Integer version) { + this.version = version; + return this; + } + + @JsonProperty("real") + public Integer getReal() { + return real; + } + + @JsonProperty("real") + public void setReal(Integer real) { + this.real = real; + } + + public Revision withReal(Integer real) { + this.real = real; + return this; + } + + @JsonProperty("isRepack") + public Boolean getIsRepack() { + return isRepack; + } + + @JsonProperty("isRepack") + public void setIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + } + + public Revision withIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Revision withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Revision.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("version"); + sb.append('='); + sb.append(((this.version == null)?"":this.version)); + sb.append(','); + sb.append("real"); + sb.append('='); + sb.append(((this.real == null)?"":this.real)); + sb.append(','); + sb.append("isRepack"); + sb.append('='); + sb.append(((this.isRepack == null)?"":this.isRepack)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.real == null)? 0 :this.real.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode())); + result = ((result* 31)+((this.isRepack == null)? 0 :this.isRepack.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Revision) == false) { + return false; + } + Revision rhs = ((Revision) other); + return (((((this.real == rhs.real)||((this.real!= null)&&this.real.equals(rhs.real)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.version == rhs.version)||((this.version!= null)&&this.version.equals(rhs.version))))&&((this.isRepack == rhs.isRepack)||((this.isRepack!= null)&&this.isRepack.equals(rhs.isRepack)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/history/SonarrHistory.java b/src/main/java/tv/mangrana/sonarr/api/schema/history/SonarrHistory.java new file mode 100644 index 0000000..30a2253 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/history/SonarrHistory.java @@ -0,0 +1,213 @@ + +package tv.mangrana.sonarr.api.schema.history; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "page", + "pageSize", + "sortKey", + "sortDirection", + "totalRecords", + "records" +}) +@Generated("jsonschema2pojo") +public class SonarrHistory { + + @JsonProperty("page") + private Integer page; + @JsonProperty("pageSize") + private Integer pageSize; + @JsonProperty("sortKey") + private String sortKey; + @JsonProperty("sortDirection") + private String sortDirection; + @JsonProperty("totalRecords") + private Integer totalRecords; + @JsonProperty("records") + private List records = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("page") + public Integer getPage() { + return page; + } + + @JsonProperty("page") + public void setPage(Integer page) { + this.page = page; + } + + public SonarrHistory withPage(Integer page) { + this.page = page; + return this; + } + + @JsonProperty("pageSize") + public Integer getPageSize() { + return pageSize; + } + + @JsonProperty("pageSize") + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } + + public SonarrHistory withPageSize(Integer pageSize) { + this.pageSize = pageSize; + return this; + } + + @JsonProperty("sortKey") + public String getSortKey() { + return sortKey; + } + + @JsonProperty("sortKey") + public void setSortKey(String sortKey) { + this.sortKey = sortKey; + } + + public SonarrHistory withSortKey(String sortKey) { + this.sortKey = sortKey; + return this; + } + + @JsonProperty("sortDirection") + public String getSortDirection() { + return sortDirection; + } + + @JsonProperty("sortDirection") + public void setSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + } + + public SonarrHistory withSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + return this; + } + + @JsonProperty("totalRecords") + public Integer getTotalRecords() { + return totalRecords; + } + + @JsonProperty("totalRecords") + public void setTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + } + + public SonarrHistory withTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + return this; + } + + @JsonProperty("records") + public List getRecords() { + return records; + } + + @JsonProperty("records") + public void setRecords(List records) { + this.records = records; + } + + public SonarrHistory withRecords(List records) { + this.records = records; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public SonarrHistory withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(SonarrHistory.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("page"); + sb.append('='); + sb.append(((this.page == null)?"":this.page)); + sb.append(','); + sb.append("pageSize"); + sb.append('='); + sb.append(((this.pageSize == null)?"":this.pageSize)); + sb.append(','); + sb.append("sortKey"); + sb.append('='); + sb.append(((this.sortKey == null)?"":this.sortKey)); + sb.append(','); + sb.append("sortDirection"); + sb.append('='); + sb.append(((this.sortDirection == null)?"":this.sortDirection)); + sb.append(','); + sb.append("totalRecords"); + sb.append('='); + sb.append(((this.totalRecords == null)?"":this.totalRecords)); + sb.append(','); + sb.append("records"); + sb.append('='); + sb.append(((this.records == null)?"":this.records)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.sortDirection == null)? 0 :this.sortDirection.hashCode())); + result = ((result* 31)+((this.totalRecords == null)? 0 :this.totalRecords.hashCode())); + result = ((result* 31)+((this.sortKey == null)? 0 :this.sortKey.hashCode())); + result = ((result* 31)+((this.records == null)? 0 :this.records.hashCode())); + result = ((result* 31)+((this.pageSize == null)? 0 :this.pageSize.hashCode())); + result = ((result* 31)+((this.page == null)? 0 :this.page.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof SonarrHistory) == false) { + return false; + } + SonarrHistory rhs = ((SonarrHistory) other); + return ((((((((this.sortDirection == rhs.sortDirection)||((this.sortDirection!= null)&&this.sortDirection.equals(rhs.sortDirection)))&&((this.totalRecords == rhs.totalRecords)||((this.totalRecords!= null)&&this.totalRecords.equals(rhs.totalRecords))))&&((this.sortKey == rhs.sortKey)||((this.sortKey!= null)&&this.sortKey.equals(rhs.sortKey))))&&((this.records == rhs.records)||((this.records!= null)&&this.records.equals(rhs.records))))&&((this.pageSize == rhs.pageSize)||((this.pageSize!= null)&&this.pageSize.equals(rhs.pageSize))))&&((this.page == rhs.page)||((this.page!= null)&&this.page.equals(rhs.page))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/Language.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Language.java new file mode 100644 index 0000000..fb7890e --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Language.java @@ -0,0 +1,119 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name" +}) +@Generated("jsonschema2pojo") +public class Language { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Language withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Language withName(String name) { + this.name = name; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Language withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Language.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Language) == false) { + return false; + } + Language rhs = ((Language) other); + return ((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality.java new file mode 100644 index 0000000..a8fbb5e --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality.java @@ -0,0 +1,119 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "quality", + "revision" +}) +@Generated("jsonschema2pojo") +public class Quality { + + @JsonProperty("quality") + private Quality__1 quality; + @JsonProperty("revision") + private Revision revision; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("quality") + public Quality__1 getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality__1 quality) { + this.quality = quality; + } + + public Quality withQuality(Quality__1 quality) { + this.quality = quality; + return this; + } + + @JsonProperty("revision") + public Revision getRevision() { + return revision; + } + + @JsonProperty("revision") + public void setRevision(Revision revision) { + this.revision = revision; + } + + public Quality withRevision(Revision revision) { + this.revision = revision; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("revision"); + sb.append('='); + sb.append(((this.revision == null)?"":this.revision)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.revision == null)? 0 :this.revision.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality) == false) { + return false; + } + Quality rhs = ((Quality) other); + return ((((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.revision == rhs.revision)||((this.revision!= null)&&this.revision.equals(rhs.revision)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality__1.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality__1.java new file mode 100644 index 0000000..5ded88d --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Quality__1.java @@ -0,0 +1,165 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "id", + "name", + "source", + "resolution" +}) +@Generated("jsonschema2pojo") +public class Quality__1 { + + @JsonProperty("id") + private Integer id; + @JsonProperty("name") + private String name; + @JsonProperty("source") + private String source; + @JsonProperty("resolution") + private Integer resolution; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Quality__1 withId(Integer id) { + this.id = id; + return this; + } + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public Quality__1 withName(String name) { + this.name = name; + return this; + } + + @JsonProperty("source") + public String getSource() { + return source; + } + + @JsonProperty("source") + public void setSource(String source) { + this.source = source; + } + + public Quality__1 withSource(String source) { + this.source = source; + return this; + } + + @JsonProperty("resolution") + public Integer getResolution() { + return resolution; + } + + @JsonProperty("resolution") + public void setResolution(Integer resolution) { + this.resolution = resolution; + } + + public Quality__1 withResolution(Integer resolution) { + this.resolution = resolution; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Quality__1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Quality__1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("source"); + sb.append('='); + sb.append(((this.source == null)?"":this.source)); + sb.append(','); + sb.append("resolution"); + sb.append('='); + sb.append(((this.resolution == null)?"":this.resolution)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.source == null)? 0 :this.source.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.resolution == null)? 0 :this.resolution.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Quality__1) == false) { + return false; + } + Quality__1 rhs = ((Quality__1) other); + return ((((((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name)))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.source == rhs.source)||((this.source!= null)&&this.source.equals(rhs.source))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.resolution == rhs.resolution)||((this.resolution!= null)&&this.resolution.equals(rhs.resolution)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/Record.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Record.java new file mode 100644 index 0000000..473cd9c --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Record.java @@ -0,0 +1,466 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "seriesId", + "episodeId", + "language", + "quality", + "size", + "title", + "sizeleft", + "status", + "trackedDownloadStatus", + "trackedDownloadState", + "statusMessages", + "downloadId", + "protocol", + "downloadClient", + "indexer", + "outputPath", + "id" +}) +@Generated("jsonschema2pojo") +public class Record { + + @JsonProperty("seriesId") + private Integer seriesId; + @JsonProperty("episodeId") + private Integer episodeId; + @JsonProperty("language") + private Language language; + @JsonProperty("quality") + private Quality quality; + @JsonProperty("size") + private Double size; + @JsonProperty("title") + private String title; + @JsonProperty("sizeleft") + private Double sizeleft; + @JsonProperty("status") + private String status; + @JsonProperty("trackedDownloadStatus") + private String trackedDownloadStatus; + @JsonProperty("trackedDownloadState") + private String trackedDownloadState; + @JsonProperty("statusMessages") + private List statusMessages = new ArrayList(); + @JsonProperty("downloadId") + private String downloadId; + @JsonProperty("protocol") + private String protocol; + @JsonProperty("downloadClient") + private String downloadClient; + @JsonProperty("indexer") + private String indexer; + @JsonProperty("outputPath") + private String outputPath; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("seriesId") + public Integer getSeriesId() { + return seriesId; + } + + @JsonProperty("seriesId") + public void setSeriesId(Integer seriesId) { + this.seriesId = seriesId; + } + + public Record withSeriesId(Integer seriesId) { + this.seriesId = seriesId; + return this; + } + + @JsonProperty("episodeId") + public Integer getEpisodeId() { + return episodeId; + } + + @JsonProperty("episodeId") + public void setEpisodeId(Integer episodeId) { + this.episodeId = episodeId; + } + + public Record withEpisodeId(Integer episodeId) { + this.episodeId = episodeId; + return this; + } + + @JsonProperty("language") + public Language getLanguage() { + return language; + } + + @JsonProperty("language") + public void setLanguage(Language language) { + this.language = language; + } + + public Record withLanguage(Language language) { + this.language = language; + return this; + } + + @JsonProperty("quality") + public Quality getQuality() { + return quality; + } + + @JsonProperty("quality") + public void setQuality(Quality quality) { + this.quality = quality; + } + + public Record withQuality(Quality quality) { + this.quality = quality; + return this; + } + + @JsonProperty("size") + public Double getSize() { + return size; + } + + @JsonProperty("size") + public void setSize(Double size) { + this.size = size; + } + + public Record withSize(Double size) { + this.size = size; + return this; + } + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public Record withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("sizeleft") + public Double getSizeleft() { + return sizeleft; + } + + @JsonProperty("sizeleft") + public void setSizeleft(Double sizeleft) { + this.sizeleft = sizeleft; + } + + public Record withSizeleft(Double sizeleft) { + this.sizeleft = sizeleft; + return this; + } + + @JsonProperty("status") + public String getStatus() { + return status; + } + + @JsonProperty("status") + public void setStatus(String status) { + this.status = status; + } + + public Record withStatus(String status) { + this.status = status; + return this; + } + + @JsonProperty("trackedDownloadStatus") + public String getTrackedDownloadStatus() { + return trackedDownloadStatus; + } + + @JsonProperty("trackedDownloadStatus") + public void setTrackedDownloadStatus(String trackedDownloadStatus) { + this.trackedDownloadStatus = trackedDownloadStatus; + } + + public Record withTrackedDownloadStatus(String trackedDownloadStatus) { + this.trackedDownloadStatus = trackedDownloadStatus; + return this; + } + + @JsonProperty("trackedDownloadState") + public String getTrackedDownloadState() { + return trackedDownloadState; + } + + @JsonProperty("trackedDownloadState") + public void setTrackedDownloadState(String trackedDownloadState) { + this.trackedDownloadState = trackedDownloadState; + } + + public Record withTrackedDownloadState(String trackedDownloadState) { + this.trackedDownloadState = trackedDownloadState; + return this; + } + + @JsonProperty("statusMessages") + public List getStatusMessages() { + return statusMessages; + } + + @JsonProperty("statusMessages") + public void setStatusMessages(List statusMessages) { + this.statusMessages = statusMessages; + } + + public Record withStatusMessages(List statusMessages) { + this.statusMessages = statusMessages; + return this; + } + + @JsonProperty("downloadId") + public String getDownloadId() { + return downloadId; + } + + @JsonProperty("downloadId") + public void setDownloadId(String downloadId) { + this.downloadId = downloadId; + } + + public Record withDownloadId(String downloadId) { + this.downloadId = downloadId; + return this; + } + + @JsonProperty("protocol") + public String getProtocol() { + return protocol; + } + + @JsonProperty("protocol") + public void setProtocol(String protocol) { + this.protocol = protocol; + } + + public Record withProtocol(String protocol) { + this.protocol = protocol; + return this; + } + + @JsonProperty("downloadClient") + public String getDownloadClient() { + return downloadClient; + } + + @JsonProperty("downloadClient") + public void setDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + } + + public Record withDownloadClient(String downloadClient) { + this.downloadClient = downloadClient; + return this; + } + + @JsonProperty("indexer") + public String getIndexer() { + return indexer; + } + + @JsonProperty("indexer") + public void setIndexer(String indexer) { + this.indexer = indexer; + } + + public Record withIndexer(String indexer) { + this.indexer = indexer; + return this; + } + + @JsonProperty("outputPath") + public String getOutputPath() { + return outputPath; + } + + @JsonProperty("outputPath") + public void setOutputPath(String outputPath) { + this.outputPath = outputPath; + } + + public Record withOutputPath(String outputPath) { + this.outputPath = outputPath; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public Record withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Record withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Record.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("seriesId"); + sb.append('='); + sb.append(((this.seriesId == null)?"":this.seriesId)); + sb.append(','); + sb.append("episodeId"); + sb.append('='); + sb.append(((this.episodeId == null)?"":this.episodeId)); + sb.append(','); + sb.append("language"); + sb.append('='); + sb.append(((this.language == null)?"":this.language)); + sb.append(','); + sb.append("quality"); + sb.append('='); + sb.append(((this.quality == null)?"":this.quality)); + sb.append(','); + sb.append("size"); + sb.append('='); + sb.append(((this.size == null)?"":this.size)); + sb.append(','); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("sizeleft"); + sb.append('='); + sb.append(((this.sizeleft == null)?"":this.sizeleft)); + sb.append(','); + sb.append("status"); + sb.append('='); + sb.append(((this.status == null)?"":this.status)); + sb.append(','); + sb.append("trackedDownloadStatus"); + sb.append('='); + sb.append(((this.trackedDownloadStatus == null)?"":this.trackedDownloadStatus)); + sb.append(','); + sb.append("trackedDownloadState"); + sb.append('='); + sb.append(((this.trackedDownloadState == null)?"":this.trackedDownloadState)); + sb.append(','); + sb.append("statusMessages"); + sb.append('='); + sb.append(((this.statusMessages == null)?"":this.statusMessages)); + sb.append(','); + sb.append("downloadId"); + sb.append('='); + sb.append(((this.downloadId == null)?"":this.downloadId)); + sb.append(','); + sb.append("protocol"); + sb.append('='); + sb.append(((this.protocol == null)?"":this.protocol)); + sb.append(','); + sb.append("downloadClient"); + sb.append('='); + sb.append(((this.downloadClient == null)?"":this.downloadClient)); + sb.append(','); + sb.append("indexer"); + sb.append('='); + sb.append(((this.indexer == null)?"":this.indexer)); + sb.append(','); + sb.append("outputPath"); + sb.append('='); + sb.append(((this.outputPath == null)?"":this.outputPath)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.downloadId == null)? 0 :this.downloadId.hashCode())); + result = ((result* 31)+((this.language == null)? 0 :this.language.hashCode())); + result = ((result* 31)+((this.indexer == null)? 0 :this.indexer.hashCode())); + result = ((result* 31)+((this.episodeId == null)? 0 :this.episodeId.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + result = ((result* 31)+((this.trackedDownloadState == null)? 0 :this.trackedDownloadState.hashCode())); + result = ((result* 31)+((this.trackedDownloadStatus == null)? 0 :this.trackedDownloadStatus.hashCode())); + result = ((result* 31)+((this.seriesId == null)? 0 :this.seriesId.hashCode())); + result = ((result* 31)+((this.sizeleft == null)? 0 :this.sizeleft.hashCode())); + result = ((result* 31)+((this.quality == null)? 0 :this.quality.hashCode())); + result = ((result* 31)+((this.statusMessages == null)? 0 :this.statusMessages.hashCode())); + result = ((result* 31)+((this.protocol == null)? 0 :this.protocol.hashCode())); + result = ((result* 31)+((this.size == null)? 0 :this.size.hashCode())); + result = ((result* 31)+((this.outputPath == null)? 0 :this.outputPath.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.status == null)? 0 :this.status.hashCode())); + result = ((result* 31)+((this.downloadClient == null)? 0 :this.downloadClient.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Record) == false) { + return false; + } + Record rhs = ((Record) other); + return (((((((((((((((((((this.downloadId == rhs.downloadId)||((this.downloadId!= null)&&this.downloadId.equals(rhs.downloadId)))&&((this.language == rhs.language)||((this.language!= null)&&this.language.equals(rhs.language))))&&((this.indexer == rhs.indexer)||((this.indexer!= null)&&this.indexer.equals(rhs.indexer))))&&((this.episodeId == rhs.episodeId)||((this.episodeId!= null)&&this.episodeId.equals(rhs.episodeId))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title))))&&((this.trackedDownloadState == rhs.trackedDownloadState)||((this.trackedDownloadState!= null)&&this.trackedDownloadState.equals(rhs.trackedDownloadState))))&&((this.trackedDownloadStatus == rhs.trackedDownloadStatus)||((this.trackedDownloadStatus!= null)&&this.trackedDownloadStatus.equals(rhs.trackedDownloadStatus))))&&((this.seriesId == rhs.seriesId)||((this.seriesId!= null)&&this.seriesId.equals(rhs.seriesId))))&&((this.sizeleft == rhs.sizeleft)||((this.sizeleft!= null)&&this.sizeleft.equals(rhs.sizeleft))))&&((this.quality == rhs.quality)||((this.quality!= null)&&this.quality.equals(rhs.quality))))&&((this.statusMessages == rhs.statusMessages)||((this.statusMessages!= null)&&this.statusMessages.equals(rhs.statusMessages))))&&((this.protocol == rhs.protocol)||((this.protocol!= null)&&this.protocol.equals(rhs.protocol))))&&((this.size == rhs.size)||((this.size!= null)&&this.size.equals(rhs.size))))&&((this.outputPath == rhs.outputPath)||((this.outputPath!= null)&&this.outputPath.equals(rhs.outputPath))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.status == rhs.status)||((this.status!= null)&&this.status.equals(rhs.status))))&&((this.downloadClient == rhs.downloadClient)||((this.downloadClient!= null)&&this.downloadClient.equals(rhs.downloadClient)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/Revision.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Revision.java new file mode 100644 index 0000000..78fb760 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/Revision.java @@ -0,0 +1,142 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "version", + "real", + "isRepack" +}) +@Generated("jsonschema2pojo") +public class Revision { + + @JsonProperty("version") + private Integer version; + @JsonProperty("real") + private Integer real; + @JsonProperty("isRepack") + private Boolean isRepack; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("version") + public Integer getVersion() { + return version; + } + + @JsonProperty("version") + public void setVersion(Integer version) { + this.version = version; + } + + public Revision withVersion(Integer version) { + this.version = version; + return this; + } + + @JsonProperty("real") + public Integer getReal() { + return real; + } + + @JsonProperty("real") + public void setReal(Integer real) { + this.real = real; + } + + public Revision withReal(Integer real) { + this.real = real; + return this; + } + + @JsonProperty("isRepack") + public Boolean getIsRepack() { + return isRepack; + } + + @JsonProperty("isRepack") + public void setIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + } + + public Revision withIsRepack(Boolean isRepack) { + this.isRepack = isRepack; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Revision withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Revision.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("version"); + sb.append('='); + sb.append(((this.version == null)?"":this.version)); + sb.append(','); + sb.append("real"); + sb.append('='); + sb.append(((this.real == null)?"":this.real)); + sb.append(','); + sb.append("isRepack"); + sb.append('='); + sb.append(((this.isRepack == null)?"":this.isRepack)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.real == null)? 0 :this.real.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode())); + result = ((result* 31)+((this.isRepack == null)? 0 :this.isRepack.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Revision) == false) { + return false; + } + Revision rhs = ((Revision) other); + return (((((this.real == rhs.real)||((this.real!= null)&&this.real.equals(rhs.real)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.version == rhs.version)||((this.version!= null)&&this.version.equals(rhs.version))))&&((this.isRepack == rhs.isRepack)||((this.isRepack!= null)&&this.isRepack.equals(rhs.isRepack)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/SonarrQueue.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/SonarrQueue.java new file mode 100644 index 0000000..18d5d36 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/SonarrQueue.java @@ -0,0 +1,213 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "page", + "pageSize", + "sortKey", + "sortDirection", + "totalRecords", + "records" +}) +@Generated("jsonschema2pojo") +public class SonarrQueue { + + @JsonProperty("page") + private Integer page; + @JsonProperty("pageSize") + private Integer pageSize; + @JsonProperty("sortKey") + private String sortKey; + @JsonProperty("sortDirection") + private String sortDirection; + @JsonProperty("totalRecords") + private Integer totalRecords; + @JsonProperty("records") + private List records = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("page") + public Integer getPage() { + return page; + } + + @JsonProperty("page") + public void setPage(Integer page) { + this.page = page; + } + + public SonarrQueue withPage(Integer page) { + this.page = page; + return this; + } + + @JsonProperty("pageSize") + public Integer getPageSize() { + return pageSize; + } + + @JsonProperty("pageSize") + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } + + public SonarrQueue withPageSize(Integer pageSize) { + this.pageSize = pageSize; + return this; + } + + @JsonProperty("sortKey") + public String getSortKey() { + return sortKey; + } + + @JsonProperty("sortKey") + public void setSortKey(String sortKey) { + this.sortKey = sortKey; + } + + public SonarrQueue withSortKey(String sortKey) { + this.sortKey = sortKey; + return this; + } + + @JsonProperty("sortDirection") + public String getSortDirection() { + return sortDirection; + } + + @JsonProperty("sortDirection") + public void setSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + } + + public SonarrQueue withSortDirection(String sortDirection) { + this.sortDirection = sortDirection; + return this; + } + + @JsonProperty("totalRecords") + public Integer getTotalRecords() { + return totalRecords; + } + + @JsonProperty("totalRecords") + public void setTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + } + + public SonarrQueue withTotalRecords(Integer totalRecords) { + this.totalRecords = totalRecords; + return this; + } + + @JsonProperty("records") + public List getRecords() { + return records; + } + + @JsonProperty("records") + public void setRecords(List records) { + this.records = records; + } + + public SonarrQueue withRecords(List records) { + this.records = records; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public SonarrQueue withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(SonarrQueue.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("page"); + sb.append('='); + sb.append(((this.page == null)?"":this.page)); + sb.append(','); + sb.append("pageSize"); + sb.append('='); + sb.append(((this.pageSize == null)?"":this.pageSize)); + sb.append(','); + sb.append("sortKey"); + sb.append('='); + sb.append(((this.sortKey == null)?"":this.sortKey)); + sb.append(','); + sb.append("sortDirection"); + sb.append('='); + sb.append(((this.sortDirection == null)?"":this.sortDirection)); + sb.append(','); + sb.append("totalRecords"); + sb.append('='); + sb.append(((this.totalRecords == null)?"":this.totalRecords)); + sb.append(','); + sb.append("records"); + sb.append('='); + sb.append(((this.records == null)?"":this.records)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.sortDirection == null)? 0 :this.sortDirection.hashCode())); + result = ((result* 31)+((this.totalRecords == null)? 0 :this.totalRecords.hashCode())); + result = ((result* 31)+((this.sortKey == null)? 0 :this.sortKey.hashCode())); + result = ((result* 31)+((this.records == null)? 0 :this.records.hashCode())); + result = ((result* 31)+((this.pageSize == null)? 0 :this.pageSize.hashCode())); + result = ((result* 31)+((this.page == null)? 0 :this.page.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof SonarrQueue) == false) { + return false; + } + SonarrQueue rhs = ((SonarrQueue) other); + return ((((((((this.sortDirection == rhs.sortDirection)||((this.sortDirection!= null)&&this.sortDirection.equals(rhs.sortDirection)))&&((this.totalRecords == rhs.totalRecords)||((this.totalRecords!= null)&&this.totalRecords.equals(rhs.totalRecords))))&&((this.sortKey == rhs.sortKey)||((this.sortKey!= null)&&this.sortKey.equals(rhs.sortKey))))&&((this.records == rhs.records)||((this.records!= null)&&this.records.equals(rhs.records))))&&((this.pageSize == rhs.pageSize)||((this.pageSize!= null)&&this.pageSize.equals(rhs.pageSize))))&&((this.page == rhs.page)||((this.page!= null)&&this.page.equals(rhs.page))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/queue/StatusMessage.java b/src/main/java/tv/mangrana/sonarr/api/schema/queue/StatusMessage.java new file mode 100644 index 0000000..8a60dda --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/queue/StatusMessage.java @@ -0,0 +1,121 @@ + +package tv.mangrana.sonarr.api.schema.queue; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "title", + "messages" +}) +@Generated("jsonschema2pojo") +public class StatusMessage { + + @JsonProperty("title") + private String title; + @JsonProperty("messages") + private List messages = new ArrayList(); + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public StatusMessage withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("messages") + public List getMessages() { + return messages; + } + + @JsonProperty("messages") + public void setMessages(List messages) { + this.messages = messages; + } + + public StatusMessage withMessages(List messages) { + this.messages = messages; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public StatusMessage withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(StatusMessage.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("messages"); + sb.append('='); + sb.append(((this.messages == null)?"":this.messages)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.messages == null)? 0 :this.messages.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof StatusMessage) == false) { + return false; + } + StatusMessage rhs = ((StatusMessage) other); + return ((((this.messages == rhs.messages)||((this.messages!= null)&&this.messages.equals(rhs.messages)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/Image.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/Image.java new file mode 100644 index 0000000..42a3328 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/Image.java @@ -0,0 +1,142 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "coverType", + "url", + "remoteUrl" +}) +@Generated("jsonschema2pojo") +public class Image { + + @JsonProperty("coverType") + private String coverType; + @JsonProperty("url") + private String url; + @JsonProperty("remoteUrl") + private String remoteUrl; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("coverType") + public String getCoverType() { + return coverType; + } + + @JsonProperty("coverType") + public void setCoverType(String coverType) { + this.coverType = coverType; + } + + public Image withCoverType(String coverType) { + this.coverType = coverType; + return this; + } + + @JsonProperty("url") + public String getUrl() { + return url; + } + + @JsonProperty("url") + public void setUrl(String url) { + this.url = url; + } + + public Image withUrl(String url) { + this.url = url; + return this; + } + + @JsonProperty("remoteUrl") + public String getRemoteUrl() { + return remoteUrl; + } + + @JsonProperty("remoteUrl") + public void setRemoteUrl(String remoteUrl) { + this.remoteUrl = remoteUrl; + } + + public Image withRemoteUrl(String remoteUrl) { + this.remoteUrl = remoteUrl; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Image withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Image.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("coverType"); + sb.append('='); + sb.append(((this.coverType == null)?"":this.coverType)); + sb.append(','); + sb.append("url"); + sb.append('='); + sb.append(((this.url == null)?"":this.url)); + sb.append(','); + sb.append("remoteUrl"); + sb.append('='); + sb.append(((this.remoteUrl == null)?"":this.remoteUrl)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.coverType == null)? 0 :this.coverType.hashCode())); + result = ((result* 31)+((this.remoteUrl == null)? 0 :this.remoteUrl.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.url == null)? 0 :this.url.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Image) == false) { + return false; + } + Image rhs = ((Image) other); + return (((((this.coverType == rhs.coverType)||((this.coverType!= null)&&this.coverType.equals(rhs.coverType)))&&((this.remoteUrl == rhs.remoteUrl)||((this.remoteUrl!= null)&&this.remoteUrl.equals(rhs.remoteUrl))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.url == rhs.url)||((this.url!= null)&&this.url.equals(rhs.url)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/Ratings.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/Ratings.java new file mode 100644 index 0000000..7998717 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/Ratings.java @@ -0,0 +1,119 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "votes", + "value" +}) +@Generated("jsonschema2pojo") +public class Ratings { + + @JsonProperty("votes") + private Integer votes; + @JsonProperty("value") + private Double value; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("votes") + public Integer getVotes() { + return votes; + } + + @JsonProperty("votes") + public void setVotes(Integer votes) { + this.votes = votes; + } + + public Ratings withVotes(Integer votes) { + this.votes = votes; + return this; + } + + @JsonProperty("value") + public Double getValue() { + return value; + } + + @JsonProperty("value") + public void setValue(Double value) { + this.value = value; + } + + public Ratings withValue(Double value) { + this.value = value; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Ratings withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Ratings.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("votes"); + sb.append('='); + sb.append(((this.votes == null)?"":this.votes)); + sb.append(','); + sb.append("value"); + sb.append('='); + sb.append(((this.value == null)?"":this.value)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.votes == null)? 0 :this.votes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.value == null)? 0 :this.value.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Ratings) == false) { + return false; + } + Ratings rhs = ((Ratings) other); + return ((((this.votes == rhs.votes)||((this.votes!= null)&&this.votes.equals(rhs.votes)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.value == rhs.value)||((this.value!= null)&&this.value.equals(rhs.value)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/Season.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/Season.java new file mode 100644 index 0000000..c80e7c1 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/Season.java @@ -0,0 +1,142 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.LinkedHashMap; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "seasonNumber", + "monitored", + "statistics" +}) +@Generated("jsonschema2pojo") +public class Season { + + @JsonProperty("seasonNumber") + private Integer seasonNumber; + @JsonProperty("monitored") + private Boolean monitored; + @JsonProperty("statistics") + private Statistics statistics; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("seasonNumber") + public Integer getSeasonNumber() { + return seasonNumber; + } + + @JsonProperty("seasonNumber") + public void setSeasonNumber(Integer seasonNumber) { + this.seasonNumber = seasonNumber; + } + + public Season withSeasonNumber(Integer seasonNumber) { + this.seasonNumber = seasonNumber; + return this; + } + + @JsonProperty("monitored") + public Boolean getMonitored() { + return monitored; + } + + @JsonProperty("monitored") + public void setMonitored(Boolean monitored) { + this.monitored = monitored; + } + + public Season withMonitored(Boolean monitored) { + this.monitored = monitored; + return this; + } + + @JsonProperty("statistics") + public Statistics getStatistics() { + return statistics; + } + + @JsonProperty("statistics") + public void setStatistics(Statistics statistics) { + this.statistics = statistics; + } + + public Season withStatistics(Statistics statistics) { + this.statistics = statistics; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Season withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Season.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("seasonNumber"); + sb.append('='); + sb.append(((this.seasonNumber == null)?"":this.seasonNumber)); + sb.append(','); + sb.append("monitored"); + sb.append('='); + sb.append(((this.monitored == null)?"":this.monitored)); + sb.append(','); + sb.append("statistics"); + sb.append('='); + sb.append(((this.statistics == null)?"":this.statistics)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.seasonNumber == null)? 0 :this.seasonNumber.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.monitored == null)? 0 :this.monitored.hashCode())); + result = ((result* 31)+((this.statistics == null)? 0 :this.statistics.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Season) == false) { + return false; + } + Season rhs = ((Season) other); + return (((((this.seasonNumber == rhs.seasonNumber)||((this.seasonNumber!= null)&&this.seasonNumber.equals(rhs.seasonNumber)))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.monitored == rhs.monitored)||((this.monitored!= null)&&this.monitored.equals(rhs.monitored))))&&((this.statistics == rhs.statistics)||((this.statistics!= null)&&this.statistics.equals(rhs.statistics)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/SonarrSerie.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/SonarrSerie.java new file mode 100644 index 0000000..5c442c1 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/SonarrSerie.java @@ -0,0 +1,857 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "title", + "alternateTitles", + "sortTitle", + "status", + "ended", + "overview", + "previousAiring", + "network", + "airTime", + "images", + "seasons", + "year", + "path", + "qualityProfileId", + "languageProfileId", + "seasonFolder", + "monitored", + "useSceneNumbering", + "runtime", + "tvdbId", + "tvRageId", + "tvMazeId", + "firstAired", + "seriesType", + "cleanTitle", + "imdbId", + "titleSlug", + "rootFolderPath", + "genres", + "tags", + "added", + "ratings", + "statistics", + "id" +}) +@Generated("jsonschema2pojo") +public class SonarrSerie { + + @JsonProperty("title") + private String title; + @JsonProperty("alternateTitles") + private List alternateTitles = new ArrayList(); + @JsonProperty("sortTitle") + private String sortTitle; + @JsonProperty("status") + private String status; + @JsonProperty("ended") + private Boolean ended; + @JsonProperty("overview") + private String overview; + @JsonProperty("previousAiring") + private String previousAiring; + @JsonProperty("network") + private String network; + @JsonProperty("airTime") + private String airTime; + @JsonProperty("images") + private List images = new ArrayList(); + @JsonProperty("seasons") + private List seasons = new ArrayList(); + @JsonProperty("year") + private Integer year; + @JsonProperty("path") + private String path; + @JsonProperty("qualityProfileId") + private Integer qualityProfileId; + @JsonProperty("languageProfileId") + private Integer languageProfileId; + @JsonProperty("seasonFolder") + private Boolean seasonFolder; + @JsonProperty("monitored") + private Boolean monitored; + @JsonProperty("useSceneNumbering") + private Boolean useSceneNumbering; + @JsonProperty("runtime") + private Integer runtime; + @JsonProperty("tvdbId") + private Integer tvdbId; + @JsonProperty("tvRageId") + private Integer tvRageId; + @JsonProperty("tvMazeId") + private Integer tvMazeId; + @JsonProperty("firstAired") + private String firstAired; + @JsonProperty("seriesType") + private String seriesType; + @JsonProperty("cleanTitle") + private String cleanTitle; + @JsonProperty("imdbId") + private String imdbId; + @JsonProperty("titleSlug") + private String titleSlug; + @JsonProperty("rootFolderPath") + private String rootFolderPath; + @JsonProperty("genres") + private List genres = new ArrayList(); + @JsonProperty("tags") + private List tags = new ArrayList(); + @JsonProperty("added") + private String added; + @JsonProperty("ratings") + private Ratings ratings; + @JsonProperty("statistics") + private Statistics__1 statistics; + @JsonProperty("id") + private Integer id; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("title") + public String getTitle() { + return title; + } + + @JsonProperty("title") + public void setTitle(String title) { + this.title = title; + } + + public SonarrSerie withTitle(String title) { + this.title = title; + return this; + } + + @JsonProperty("alternateTitles") + public List getAlternateTitles() { + return alternateTitles; + } + + @JsonProperty("alternateTitles") + public void setAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + } + + public SonarrSerie withAlternateTitles(List alternateTitles) { + this.alternateTitles = alternateTitles; + return this; + } + + @JsonProperty("sortTitle") + public String getSortTitle() { + return sortTitle; + } + + @JsonProperty("sortTitle") + public void setSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + } + + public SonarrSerie withSortTitle(String sortTitle) { + this.sortTitle = sortTitle; + return this; + } + + @JsonProperty("status") + public String getStatus() { + return status; + } + + @JsonProperty("status") + public void setStatus(String status) { + this.status = status; + } + + public SonarrSerie withStatus(String status) { + this.status = status; + return this; + } + + @JsonProperty("ended") + public Boolean getEnded() { + return ended; + } + + @JsonProperty("ended") + public void setEnded(Boolean ended) { + this.ended = ended; + } + + public SonarrSerie withEnded(Boolean ended) { + this.ended = ended; + return this; + } + + @JsonProperty("overview") + public String getOverview() { + return overview; + } + + @JsonProperty("overview") + public void setOverview(String overview) { + this.overview = overview; + } + + public SonarrSerie withOverview(String overview) { + this.overview = overview; + return this; + } + + @JsonProperty("previousAiring") + public String getPreviousAiring() { + return previousAiring; + } + + @JsonProperty("previousAiring") + public void setPreviousAiring(String previousAiring) { + this.previousAiring = previousAiring; + } + + public SonarrSerie withPreviousAiring(String previousAiring) { + this.previousAiring = previousAiring; + return this; + } + + @JsonProperty("network") + public String getNetwork() { + return network; + } + + @JsonProperty("network") + public void setNetwork(String network) { + this.network = network; + } + + public SonarrSerie withNetwork(String network) { + this.network = network; + return this; + } + + @JsonProperty("airTime") + public String getAirTime() { + return airTime; + } + + @JsonProperty("airTime") + public void setAirTime(String airTime) { + this.airTime = airTime; + } + + public SonarrSerie withAirTime(String airTime) { + this.airTime = airTime; + return this; + } + + @JsonProperty("images") + public List getImages() { + return images; + } + + @JsonProperty("images") + public void setImages(List images) { + this.images = images; + } + + public SonarrSerie withImages(List images) { + this.images = images; + return this; + } + + @JsonProperty("seasons") + public List getSeasons() { + return seasons; + } + + @JsonProperty("seasons") + public void setSeasons(List seasons) { + this.seasons = seasons; + } + + public SonarrSerie withSeasons(List seasons) { + this.seasons = seasons; + return this; + } + + @JsonProperty("year") + public Integer getYear() { + return year; + } + + @JsonProperty("year") + public void setYear(Integer year) { + this.year = year; + } + + public SonarrSerie withYear(Integer year) { + this.year = year; + return this; + } + + @JsonProperty("path") + public String getPath() { + return path; + } + + @JsonProperty("path") + public void setPath(String path) { + this.path = path; + } + + public SonarrSerie withPath(String path) { + this.path = path; + return this; + } + + @JsonProperty("qualityProfileId") + public Integer getQualityProfileId() { + return qualityProfileId; + } + + @JsonProperty("qualityProfileId") + public void setQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + } + + public SonarrSerie withQualityProfileId(Integer qualityProfileId) { + this.qualityProfileId = qualityProfileId; + return this; + } + + @JsonProperty("languageProfileId") + public Integer getLanguageProfileId() { + return languageProfileId; + } + + @JsonProperty("languageProfileId") + public void setLanguageProfileId(Integer languageProfileId) { + this.languageProfileId = languageProfileId; + } + + public SonarrSerie withLanguageProfileId(Integer languageProfileId) { + this.languageProfileId = languageProfileId; + return this; + } + + @JsonProperty("seasonFolder") + public Boolean getSeasonFolder() { + return seasonFolder; + } + + @JsonProperty("seasonFolder") + public void setSeasonFolder(Boolean seasonFolder) { + this.seasonFolder = seasonFolder; + } + + public SonarrSerie withSeasonFolder(Boolean seasonFolder) { + this.seasonFolder = seasonFolder; + return this; + } + + @JsonProperty("monitored") + public Boolean getMonitored() { + return monitored; + } + + @JsonProperty("monitored") + public void setMonitored(Boolean monitored) { + this.monitored = monitored; + } + + public SonarrSerie withMonitored(Boolean monitored) { + this.monitored = monitored; + return this; + } + + @JsonProperty("useSceneNumbering") + public Boolean getUseSceneNumbering() { + return useSceneNumbering; + } + + @JsonProperty("useSceneNumbering") + public void setUseSceneNumbering(Boolean useSceneNumbering) { + this.useSceneNumbering = useSceneNumbering; + } + + public SonarrSerie withUseSceneNumbering(Boolean useSceneNumbering) { + this.useSceneNumbering = useSceneNumbering; + return this; + } + + @JsonProperty("runtime") + public Integer getRuntime() { + return runtime; + } + + @JsonProperty("runtime") + public void setRuntime(Integer runtime) { + this.runtime = runtime; + } + + public SonarrSerie withRuntime(Integer runtime) { + this.runtime = runtime; + return this; + } + + @JsonProperty("tvdbId") + public Integer getTvdbId() { + return tvdbId; + } + + @JsonProperty("tvdbId") + public void setTvdbId(Integer tvdbId) { + this.tvdbId = tvdbId; + } + + public SonarrSerie withTvdbId(Integer tvdbId) { + this.tvdbId = tvdbId; + return this; + } + + @JsonProperty("tvRageId") + public Integer getTvRageId() { + return tvRageId; + } + + @JsonProperty("tvRageId") + public void setTvRageId(Integer tvRageId) { + this.tvRageId = tvRageId; + } + + public SonarrSerie withTvRageId(Integer tvRageId) { + this.tvRageId = tvRageId; + return this; + } + + @JsonProperty("tvMazeId") + public Integer getTvMazeId() { + return tvMazeId; + } + + @JsonProperty("tvMazeId") + public void setTvMazeId(Integer tvMazeId) { + this.tvMazeId = tvMazeId; + } + + public SonarrSerie withTvMazeId(Integer tvMazeId) { + this.tvMazeId = tvMazeId; + return this; + } + + @JsonProperty("firstAired") + public String getFirstAired() { + return firstAired; + } + + @JsonProperty("firstAired") + public void setFirstAired(String firstAired) { + this.firstAired = firstAired; + } + + public SonarrSerie withFirstAired(String firstAired) { + this.firstAired = firstAired; + return this; + } + + @JsonProperty("seriesType") + public String getSeriesType() { + return seriesType; + } + + @JsonProperty("seriesType") + public void setSeriesType(String seriesType) { + this.seriesType = seriesType; + } + + public SonarrSerie withSeriesType(String seriesType) { + this.seriesType = seriesType; + return this; + } + + @JsonProperty("cleanTitle") + public String getCleanTitle() { + return cleanTitle; + } + + @JsonProperty("cleanTitle") + public void setCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + } + + public SonarrSerie withCleanTitle(String cleanTitle) { + this.cleanTitle = cleanTitle; + return this; + } + + @JsonProperty("imdbId") + public String getImdbId() { + return imdbId; + } + + @JsonProperty("imdbId") + public void setImdbId(String imdbId) { + this.imdbId = imdbId; + } + + public SonarrSerie withImdbId(String imdbId) { + this.imdbId = imdbId; + return this; + } + + @JsonProperty("titleSlug") + public String getTitleSlug() { + return titleSlug; + } + + @JsonProperty("titleSlug") + public void setTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + } + + public SonarrSerie withTitleSlug(String titleSlug) { + this.titleSlug = titleSlug; + return this; + } + + @JsonProperty("rootFolderPath") + public String getRootFolderPath() { + return rootFolderPath; + } + + @JsonProperty("rootFolderPath") + public void setRootFolderPath(String rootFolderPath) { + this.rootFolderPath = rootFolderPath; + } + + public SonarrSerie withRootFolderPath(String rootFolderPath) { + this.rootFolderPath = rootFolderPath; + return this; + } + + @JsonProperty("genres") + public List getGenres() { + return genres; + } + + @JsonProperty("genres") + public void setGenres(List genres) { + this.genres = genres; + } + + public SonarrSerie withGenres(List genres) { + this.genres = genres; + return this; + } + + @JsonProperty("tags") + public List getTags() { + return tags; + } + + @JsonProperty("tags") + public void setTags(List tags) { + this.tags = tags; + } + + public SonarrSerie withTags(List tags) { + this.tags = tags; + return this; + } + + @JsonProperty("added") + public String getAdded() { + return added; + } + + @JsonProperty("added") + public void setAdded(String added) { + this.added = added; + } + + public SonarrSerie withAdded(String added) { + this.added = added; + return this; + } + + @JsonProperty("ratings") + public Ratings getRatings() { + return ratings; + } + + @JsonProperty("ratings") + public void setRatings(Ratings ratings) { + this.ratings = ratings; + } + + public SonarrSerie withRatings(Ratings ratings) { + this.ratings = ratings; + return this; + } + + @JsonProperty("statistics") + public Statistics__1 getStatistics() { + return statistics; + } + + @JsonProperty("statistics") + public void setStatistics(Statistics__1 statistics) { + this.statistics = statistics; + } + + public SonarrSerie withStatistics(Statistics__1 statistics) { + this.statistics = statistics; + return this; + } + + @JsonProperty("id") + public Integer getId() { + return id; + } + + @JsonProperty("id") + public void setId(Integer id) { + this.id = id; + } + + public SonarrSerie withId(Integer id) { + this.id = id; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public SonarrSerie withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(SonarrSerie.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("title"); + sb.append('='); + sb.append(((this.title == null)?"":this.title)); + sb.append(','); + sb.append("alternateTitles"); + sb.append('='); + sb.append(((this.alternateTitles == null)?"":this.alternateTitles)); + sb.append(','); + sb.append("sortTitle"); + sb.append('='); + sb.append(((this.sortTitle == null)?"":this.sortTitle)); + sb.append(','); + sb.append("status"); + sb.append('='); + sb.append(((this.status == null)?"":this.status)); + sb.append(','); + sb.append("ended"); + sb.append('='); + sb.append(((this.ended == null)?"":this.ended)); + sb.append(','); + sb.append("overview"); + sb.append('='); + sb.append(((this.overview == null)?"":this.overview)); + sb.append(','); + sb.append("previousAiring"); + sb.append('='); + sb.append(((this.previousAiring == null)?"":this.previousAiring)); + sb.append(','); + sb.append("network"); + sb.append('='); + sb.append(((this.network == null)?"":this.network)); + sb.append(','); + sb.append("airTime"); + sb.append('='); + sb.append(((this.airTime == null)?"":this.airTime)); + sb.append(','); + sb.append("images"); + sb.append('='); + sb.append(((this.images == null)?"":this.images)); + sb.append(','); + sb.append("seasons"); + sb.append('='); + sb.append(((this.seasons == null)?"":this.seasons)); + sb.append(','); + sb.append("year"); + sb.append('='); + sb.append(((this.year == null)?"":this.year)); + sb.append(','); + sb.append("path"); + sb.append('='); + sb.append(((this.path == null)?"":this.path)); + sb.append(','); + sb.append("qualityProfileId"); + sb.append('='); + sb.append(((this.qualityProfileId == null)?"":this.qualityProfileId)); + sb.append(','); + sb.append("languageProfileId"); + sb.append('='); + sb.append(((this.languageProfileId == null)?"":this.languageProfileId)); + sb.append(','); + sb.append("seasonFolder"); + sb.append('='); + sb.append(((this.seasonFolder == null)?"":this.seasonFolder)); + sb.append(','); + sb.append("monitored"); + sb.append('='); + sb.append(((this.monitored == null)?"":this.monitored)); + sb.append(','); + sb.append("useSceneNumbering"); + sb.append('='); + sb.append(((this.useSceneNumbering == null)?"":this.useSceneNumbering)); + sb.append(','); + sb.append("runtime"); + sb.append('='); + sb.append(((this.runtime == null)?"":this.runtime)); + sb.append(','); + sb.append("tvdbId"); + sb.append('='); + sb.append(((this.tvdbId == null)?"":this.tvdbId)); + sb.append(','); + sb.append("tvRageId"); + sb.append('='); + sb.append(((this.tvRageId == null)?"":this.tvRageId)); + sb.append(','); + sb.append("tvMazeId"); + sb.append('='); + sb.append(((this.tvMazeId == null)?"":this.tvMazeId)); + sb.append(','); + sb.append("firstAired"); + sb.append('='); + sb.append(((this.firstAired == null)?"":this.firstAired)); + sb.append(','); + sb.append("seriesType"); + sb.append('='); + sb.append(((this.seriesType == null)?"":this.seriesType)); + sb.append(','); + sb.append("cleanTitle"); + sb.append('='); + sb.append(((this.cleanTitle == null)?"":this.cleanTitle)); + sb.append(','); + sb.append("imdbId"); + sb.append('='); + sb.append(((this.imdbId == null)?"":this.imdbId)); + sb.append(','); + sb.append("titleSlug"); + sb.append('='); + sb.append(((this.titleSlug == null)?"":this.titleSlug)); + sb.append(','); + sb.append("rootFolderPath"); + sb.append('='); + sb.append(((this.rootFolderPath == null)?"":this.rootFolderPath)); + sb.append(','); + sb.append("genres"); + sb.append('='); + sb.append(((this.genres == null)?"":this.genres)); + sb.append(','); + sb.append("tags"); + sb.append('='); + sb.append(((this.tags == null)?"":this.tags)); + sb.append(','); + sb.append("added"); + sb.append('='); + sb.append(((this.added == null)?"":this.added)); + sb.append(','); + sb.append("ratings"); + sb.append('='); + sb.append(((this.ratings == null)?"":this.ratings)); + sb.append(','); + sb.append("statistics"); + sb.append('='); + sb.append(((this.statistics == null)?"":this.statistics)); + sb.append(','); + sb.append("id"); + sb.append('='); + sb.append(((this.id == null)?"":this.id)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.tvMazeId == null)? 0 :this.tvMazeId.hashCode())); + result = ((result* 31)+((this.previousAiring == null)? 0 :this.previousAiring.hashCode())); + result = ((result* 31)+((this.alternateTitles == null)? 0 :this.alternateTitles.hashCode())); + result = ((result* 31)+((this.year == null)? 0 :this.year.hashCode())); + result = ((result* 31)+((this.rootFolderPath == null)? 0 :this.rootFolderPath.hashCode())); + result = ((result* 31)+((this.added == null)? 0 :this.added.hashCode())); + result = ((result* 31)+((this.imdbId == null)? 0 :this.imdbId.hashCode())); + result = ((result* 31)+((this.languageProfileId == null)? 0 :this.languageProfileId.hashCode())); + result = ((result* 31)+((this.title == null)? 0 :this.title.hashCode())); + result = ((result* 31)+((this.network == null)? 0 :this.network.hashCode())); + result = ((result* 31)+((this.monitored == null)? 0 :this.monitored.hashCode())); + result = ((result* 31)+((this.cleanTitle == null)? 0 :this.cleanTitle.hashCode())); + result = ((result* 31)+((this.path == null)? 0 :this.path.hashCode())); + result = ((result* 31)+((this.titleSlug == null)? 0 :this.titleSlug.hashCode())); + result = ((result* 31)+((this.qualityProfileId == null)? 0 :this.qualityProfileId.hashCode())); + result = ((result* 31)+((this.seriesType == null)? 0 :this.seriesType.hashCode())); + result = ((result* 31)+((this.genres == null)? 0 :this.genres.hashCode())); + result = ((result* 31)+((this.ratings == null)? 0 :this.ratings.hashCode())); + result = ((result* 31)+((this.useSceneNumbering == null)? 0 :this.useSceneNumbering.hashCode())); + result = ((result* 31)+((this.seasonFolder == null)? 0 :this.seasonFolder.hashCode())); + result = ((result* 31)+((this.id == null)? 0 :this.id.hashCode())); + result = ((result* 31)+((this.airTime == null)? 0 :this.airTime.hashCode())); + result = ((result* 31)+((this.overview == null)? 0 :this.overview.hashCode())); + result = ((result* 31)+((this.images == null)? 0 :this.images.hashCode())); + result = ((result* 31)+((this.seasons == null)? 0 :this.seasons.hashCode())); + result = ((result* 31)+((this.tvdbId == null)? 0 :this.tvdbId.hashCode())); + result = ((result* 31)+((this.firstAired == null)? 0 :this.firstAired.hashCode())); + result = ((result* 31)+((this.runtime == null)? 0 :this.runtime.hashCode())); + result = ((result* 31)+((this.tags == null)? 0 :this.tags.hashCode())); + result = ((result* 31)+((this.sortTitle == null)? 0 :this.sortTitle.hashCode())); + result = ((result* 31)+((this.tvRageId == null)? 0 :this.tvRageId.hashCode())); + result = ((result* 31)+((this.ended == null)? 0 :this.ended.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.status == null)? 0 :this.status.hashCode())); + result = ((result* 31)+((this.statistics == null)? 0 :this.statistics.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof SonarrSerie) == false) { + return false; + } + SonarrSerie rhs = ((SonarrSerie) other); + return ((((((((((((((((((((((((((((((((((((this.tvMazeId == rhs.tvMazeId)||((this.tvMazeId!= null)&&this.tvMazeId.equals(rhs.tvMazeId)))&&((this.previousAiring == rhs.previousAiring)||((this.previousAiring!= null)&&this.previousAiring.equals(rhs.previousAiring))))&&((this.alternateTitles == rhs.alternateTitles)||((this.alternateTitles!= null)&&this.alternateTitles.equals(rhs.alternateTitles))))&&((this.year == rhs.year)||((this.year!= null)&&this.year.equals(rhs.year))))&&((this.rootFolderPath == rhs.rootFolderPath)||((this.rootFolderPath!= null)&&this.rootFolderPath.equals(rhs.rootFolderPath))))&&((this.added == rhs.added)||((this.added!= null)&&this.added.equals(rhs.added))))&&((this.imdbId == rhs.imdbId)||((this.imdbId!= null)&&this.imdbId.equals(rhs.imdbId))))&&((this.languageProfileId == rhs.languageProfileId)||((this.languageProfileId!= null)&&this.languageProfileId.equals(rhs.languageProfileId))))&&((this.title == rhs.title)||((this.title!= null)&&this.title.equals(rhs.title))))&&((this.network == rhs.network)||((this.network!= null)&&this.network.equals(rhs.network))))&&((this.monitored == rhs.monitored)||((this.monitored!= null)&&this.monitored.equals(rhs.monitored))))&&((this.cleanTitle == rhs.cleanTitle)||((this.cleanTitle!= null)&&this.cleanTitle.equals(rhs.cleanTitle))))&&((this.path == rhs.path)||((this.path!= null)&&this.path.equals(rhs.path))))&&((this.titleSlug == rhs.titleSlug)||((this.titleSlug!= null)&&this.titleSlug.equals(rhs.titleSlug))))&&((this.qualityProfileId == rhs.qualityProfileId)||((this.qualityProfileId!= null)&&this.qualityProfileId.equals(rhs.qualityProfileId))))&&((this.seriesType == rhs.seriesType)||((this.seriesType!= null)&&this.seriesType.equals(rhs.seriesType))))&&((this.genres == rhs.genres)||((this.genres!= null)&&this.genres.equals(rhs.genres))))&&((this.ratings == rhs.ratings)||((this.ratings!= null)&&this.ratings.equals(rhs.ratings))))&&((this.useSceneNumbering == rhs.useSceneNumbering)||((this.useSceneNumbering!= null)&&this.useSceneNumbering.equals(rhs.useSceneNumbering))))&&((this.seasonFolder == rhs.seasonFolder)||((this.seasonFolder!= null)&&this.seasonFolder.equals(rhs.seasonFolder))))&&((this.id == rhs.id)||((this.id!= null)&&this.id.equals(rhs.id))))&&((this.airTime == rhs.airTime)||((this.airTime!= null)&&this.airTime.equals(rhs.airTime))))&&((this.overview == rhs.overview)||((this.overview!= null)&&this.overview.equals(rhs.overview))))&&((this.images == rhs.images)||((this.images!= null)&&this.images.equals(rhs.images))))&&((this.seasons == rhs.seasons)||((this.seasons!= null)&&this.seasons.equals(rhs.seasons))))&&((this.tvdbId == rhs.tvdbId)||((this.tvdbId!= null)&&this.tvdbId.equals(rhs.tvdbId))))&&((this.firstAired == rhs.firstAired)||((this.firstAired!= null)&&this.firstAired.equals(rhs.firstAired))))&&((this.runtime == rhs.runtime)||((this.runtime!= null)&&this.runtime.equals(rhs.runtime))))&&((this.tags == rhs.tags)||((this.tags!= null)&&this.tags.equals(rhs.tags))))&&((this.sortTitle == rhs.sortTitle)||((this.sortTitle!= null)&&this.sortTitle.equals(rhs.sortTitle))))&&((this.tvRageId == rhs.tvRageId)||((this.tvRageId!= null)&&this.tvRageId.equals(rhs.tvRageId))))&&((this.ended == rhs.ended)||((this.ended!= null)&&this.ended.equals(rhs.ended))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.status == rhs.status)||((this.status!= null)&&this.status.equals(rhs.status))))&&((this.statistics == rhs.statistics)||((this.statistics!= null)&&this.statistics.equals(rhs.statistics)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics.java new file mode 100644 index 0000000..fe5ecda --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics.java @@ -0,0 +1,236 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "previousAiring", + "episodeFileCount", + "episodeCount", + "totalEpisodeCount", + "sizeOnDisk", + "releaseGroups", + "percentOfEpisodes" +}) +@Generated("jsonschema2pojo") +public class Statistics { + + @JsonProperty("previousAiring") + private String previousAiring; + @JsonProperty("episodeFileCount") + private Integer episodeFileCount; + @JsonProperty("episodeCount") + private Integer episodeCount; + @JsonProperty("totalEpisodeCount") + private Integer totalEpisodeCount; + @JsonProperty("sizeOnDisk") + private Long sizeOnDisk; + @JsonProperty("releaseGroups") + private List releaseGroups = new ArrayList(); + @JsonProperty("percentOfEpisodes") + private Double percentOfEpisodes; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("previousAiring") + public String getPreviousAiring() { + return previousAiring; + } + + @JsonProperty("previousAiring") + public void setPreviousAiring(String previousAiring) { + this.previousAiring = previousAiring; + } + + public Statistics withPreviousAiring(String previousAiring) { + this.previousAiring = previousAiring; + return this; + } + + @JsonProperty("episodeFileCount") + public Integer getEpisodeFileCount() { + return episodeFileCount; + } + + @JsonProperty("episodeFileCount") + public void setEpisodeFileCount(Integer episodeFileCount) { + this.episodeFileCount = episodeFileCount; + } + + public Statistics withEpisodeFileCount(Integer episodeFileCount) { + this.episodeFileCount = episodeFileCount; + return this; + } + + @JsonProperty("episodeCount") + public Integer getEpisodeCount() { + return episodeCount; + } + + @JsonProperty("episodeCount") + public void setEpisodeCount(Integer episodeCount) { + this.episodeCount = episodeCount; + } + + public Statistics withEpisodeCount(Integer episodeCount) { + this.episodeCount = episodeCount; + return this; + } + + @JsonProperty("totalEpisodeCount") + public Integer getTotalEpisodeCount() { + return totalEpisodeCount; + } + + @JsonProperty("totalEpisodeCount") + public void setTotalEpisodeCount(Integer totalEpisodeCount) { + this.totalEpisodeCount = totalEpisodeCount; + } + + public Statistics withTotalEpisodeCount(Integer totalEpisodeCount) { + this.totalEpisodeCount = totalEpisodeCount; + return this; + } + + @JsonProperty("sizeOnDisk") + public Long getSizeOnDisk() { + return sizeOnDisk; + } + + @JsonProperty("sizeOnDisk") + public void setSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + } + + public Statistics withSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + return this; + } + + @JsonProperty("releaseGroups") + public List getReleaseGroups() { + return releaseGroups; + } + + @JsonProperty("releaseGroups") + public void setReleaseGroups(List releaseGroups) { + this.releaseGroups = releaseGroups; + } + + public Statistics withReleaseGroups(List releaseGroups) { + this.releaseGroups = releaseGroups; + return this; + } + + @JsonProperty("percentOfEpisodes") + public Double getPercentOfEpisodes() { + return percentOfEpisodes; + } + + @JsonProperty("percentOfEpisodes") + public void setPercentOfEpisodes(Double percentOfEpisodes) { + this.percentOfEpisodes = percentOfEpisodes; + } + + public Statistics withPercentOfEpisodes(Double percentOfEpisodes) { + this.percentOfEpisodes = percentOfEpisodes; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Statistics withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Statistics.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("previousAiring"); + sb.append('='); + sb.append(((this.previousAiring == null)?"":this.previousAiring)); + sb.append(','); + sb.append("episodeFileCount"); + sb.append('='); + sb.append(((this.episodeFileCount == null)?"":this.episodeFileCount)); + sb.append(','); + sb.append("episodeCount"); + sb.append('='); + sb.append(((this.episodeCount == null)?"":this.episodeCount)); + sb.append(','); + sb.append("totalEpisodeCount"); + sb.append('='); + sb.append(((this.totalEpisodeCount == null)?"":this.totalEpisodeCount)); + sb.append(','); + sb.append("sizeOnDisk"); + sb.append('='); + sb.append(((this.sizeOnDisk == null)?"":this.sizeOnDisk)); + sb.append(','); + sb.append("releaseGroups"); + sb.append('='); + sb.append(((this.releaseGroups == null)?"":this.releaseGroups)); + sb.append(','); + sb.append("percentOfEpisodes"); + sb.append('='); + sb.append(((this.percentOfEpisodes == null)?"":this.percentOfEpisodes)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.previousAiring == null)? 0 :this.previousAiring.hashCode())); + result = ((result* 31)+((this.episodeCount == null)? 0 :this.episodeCount.hashCode())); + result = ((result* 31)+((this.totalEpisodeCount == null)? 0 :this.totalEpisodeCount.hashCode())); + result = ((result* 31)+((this.releaseGroups == null)? 0 :this.releaseGroups.hashCode())); + result = ((result* 31)+((this.percentOfEpisodes == null)? 0 :this.percentOfEpisodes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.sizeOnDisk == null)? 0 :this.sizeOnDisk.hashCode())); + result = ((result* 31)+((this.episodeFileCount == null)? 0 :this.episodeFileCount.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Statistics) == false) { + return false; + } + Statistics rhs = ((Statistics) other); + return (((((((((this.previousAiring == rhs.previousAiring)||((this.previousAiring!= null)&&this.previousAiring.equals(rhs.previousAiring)))&&((this.episodeCount == rhs.episodeCount)||((this.episodeCount!= null)&&this.episodeCount.equals(rhs.episodeCount))))&&((this.totalEpisodeCount == rhs.totalEpisodeCount)||((this.totalEpisodeCount!= null)&&this.totalEpisodeCount.equals(rhs.totalEpisodeCount))))&&((this.releaseGroups == rhs.releaseGroups)||((this.releaseGroups!= null)&&this.releaseGroups.equals(rhs.releaseGroups))))&&((this.percentOfEpisodes == rhs.percentOfEpisodes)||((this.percentOfEpisodes!= null)&&this.percentOfEpisodes.equals(rhs.percentOfEpisodes))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.sizeOnDisk == rhs.sizeOnDisk)||((this.sizeOnDisk!= null)&&this.sizeOnDisk.equals(rhs.sizeOnDisk))))&&((this.episodeFileCount == rhs.episodeFileCount)||((this.episodeFileCount!= null)&&this.episodeFileCount.equals(rhs.episodeFileCount)))); + } + +} diff --git a/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics__1.java b/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics__1.java new file mode 100644 index 0000000..40f21d2 --- /dev/null +++ b/src/main/java/tv/mangrana/sonarr/api/schema/series/Statistics__1.java @@ -0,0 +1,236 @@ + +package tv.mangrana.sonarr.api.schema.series; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "seasonCount", + "episodeFileCount", + "episodeCount", + "totalEpisodeCount", + "sizeOnDisk", + "releaseGroups", + "percentOfEpisodes" +}) +@Generated("jsonschema2pojo") +public class Statistics__1 { + + @JsonProperty("seasonCount") + private Integer seasonCount; + @JsonProperty("episodeFileCount") + private Integer episodeFileCount; + @JsonProperty("episodeCount") + private Integer episodeCount; + @JsonProperty("totalEpisodeCount") + private Integer totalEpisodeCount; + @JsonProperty("sizeOnDisk") + private Long sizeOnDisk; + @JsonProperty("releaseGroups") + private List releaseGroups = new ArrayList(); + @JsonProperty("percentOfEpisodes") + private Double percentOfEpisodes; + @JsonIgnore + private Map additionalProperties = new LinkedHashMap(); + + @JsonProperty("seasonCount") + public Integer getSeasonCount() { + return seasonCount; + } + + @JsonProperty("seasonCount") + public void setSeasonCount(Integer seasonCount) { + this.seasonCount = seasonCount; + } + + public Statistics__1 withSeasonCount(Integer seasonCount) { + this.seasonCount = seasonCount; + return this; + } + + @JsonProperty("episodeFileCount") + public Integer getEpisodeFileCount() { + return episodeFileCount; + } + + @JsonProperty("episodeFileCount") + public void setEpisodeFileCount(Integer episodeFileCount) { + this.episodeFileCount = episodeFileCount; + } + + public Statistics__1 withEpisodeFileCount(Integer episodeFileCount) { + this.episodeFileCount = episodeFileCount; + return this; + } + + @JsonProperty("episodeCount") + public Integer getEpisodeCount() { + return episodeCount; + } + + @JsonProperty("episodeCount") + public void setEpisodeCount(Integer episodeCount) { + this.episodeCount = episodeCount; + } + + public Statistics__1 withEpisodeCount(Integer episodeCount) { + this.episodeCount = episodeCount; + return this; + } + + @JsonProperty("totalEpisodeCount") + public Integer getTotalEpisodeCount() { + return totalEpisodeCount; + } + + @JsonProperty("totalEpisodeCount") + public void setTotalEpisodeCount(Integer totalEpisodeCount) { + this.totalEpisodeCount = totalEpisodeCount; + } + + public Statistics__1 withTotalEpisodeCount(Integer totalEpisodeCount) { + this.totalEpisodeCount = totalEpisodeCount; + return this; + } + + @JsonProperty("sizeOnDisk") + public Long getSizeOnDisk() { + return sizeOnDisk; + } + + @JsonProperty("sizeOnDisk") + public void setSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + } + + public Statistics__1 withSizeOnDisk(Long sizeOnDisk) { + this.sizeOnDisk = sizeOnDisk; + return this; + } + + @JsonProperty("releaseGroups") + public List getReleaseGroups() { + return releaseGroups; + } + + @JsonProperty("releaseGroups") + public void setReleaseGroups(List releaseGroups) { + this.releaseGroups = releaseGroups; + } + + public Statistics__1 withReleaseGroups(List releaseGroups) { + this.releaseGroups = releaseGroups; + return this; + } + + @JsonProperty("percentOfEpisodes") + public Double getPercentOfEpisodes() { + return percentOfEpisodes; + } + + @JsonProperty("percentOfEpisodes") + public void setPercentOfEpisodes(Double percentOfEpisodes) { + this.percentOfEpisodes = percentOfEpisodes; + } + + public Statistics__1 withPercentOfEpisodes(Double percentOfEpisodes) { + this.percentOfEpisodes = percentOfEpisodes; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public Statistics__1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(Statistics__1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("seasonCount"); + sb.append('='); + sb.append(((this.seasonCount == null)?"":this.seasonCount)); + sb.append(','); + sb.append("episodeFileCount"); + sb.append('='); + sb.append(((this.episodeFileCount == null)?"":this.episodeFileCount)); + sb.append(','); + sb.append("episodeCount"); + sb.append('='); + sb.append(((this.episodeCount == null)?"":this.episodeCount)); + sb.append(','); + sb.append("totalEpisodeCount"); + sb.append('='); + sb.append(((this.totalEpisodeCount == null)?"":this.totalEpisodeCount)); + sb.append(','); + sb.append("sizeOnDisk"); + sb.append('='); + sb.append(((this.sizeOnDisk == null)?"":this.sizeOnDisk)); + sb.append(','); + sb.append("releaseGroups"); + sb.append('='); + sb.append(((this.releaseGroups == null)?"":this.releaseGroups)); + sb.append(','); + sb.append("percentOfEpisodes"); + sb.append('='); + sb.append(((this.percentOfEpisodes == null)?"":this.percentOfEpisodes)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.seasonCount == null)? 0 :this.seasonCount.hashCode())); + result = ((result* 31)+((this.episodeCount == null)? 0 :this.episodeCount.hashCode())); + result = ((result* 31)+((this.totalEpisodeCount == null)? 0 :this.totalEpisodeCount.hashCode())); + result = ((result* 31)+((this.releaseGroups == null)? 0 :this.releaseGroups.hashCode())); + result = ((result* 31)+((this.percentOfEpisodes == null)? 0 :this.percentOfEpisodes.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.sizeOnDisk == null)? 0 :this.sizeOnDisk.hashCode())); + result = ((result* 31)+((this.episodeFileCount == null)? 0 :this.episodeFileCount.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof Statistics__1) == false) { + return false; + } + Statistics__1 rhs = ((Statistics__1) other); + return (((((((((this.seasonCount == rhs.seasonCount)||((this.seasonCount!= null)&&this.seasonCount.equals(rhs.seasonCount)))&&((this.episodeCount == rhs.episodeCount)||((this.episodeCount!= null)&&this.episodeCount.equals(rhs.episodeCount))))&&((this.totalEpisodeCount == rhs.totalEpisodeCount)||((this.totalEpisodeCount!= null)&&this.totalEpisodeCount.equals(rhs.totalEpisodeCount))))&&((this.releaseGroups == rhs.releaseGroups)||((this.releaseGroups!= null)&&this.releaseGroups.equals(rhs.releaseGroups))))&&((this.percentOfEpisodes == rhs.percentOfEpisodes)||((this.percentOfEpisodes!= null)&&this.percentOfEpisodes.equals(rhs.percentOfEpisodes))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.sizeOnDisk == rhs.sizeOnDisk)||((this.sizeOnDisk!= null)&&this.sizeOnDisk.equals(rhs.sizeOnDisk))))&&((this.episodeFileCount == rhs.episodeFileCount)||((this.episodeFileCount!= null)&&this.episodeFileCount.equals(rhs.episodeFileCount)))); + } + +} diff --git a/src/main/java/tv/mangrana/utils/EasyLogger.java b/src/main/java/tv/mangrana/utils/EasyLogger.java new file mode 100644 index 0000000..633d32e --- /dev/null +++ b/src/main/java/tv/mangrana/utils/EasyLogger.java @@ -0,0 +1,31 @@ +package tv.mangrana.utils; + +public class EasyLogger extends Output { + + private final String identifier; + + public EasyLogger() { + String packagedClassName = Thread.currentThread().getStackTrace()[2].getClassName(); + identifier = packagedClassName.substring(packagedClassName.lastIndexOf('.')+1); + } + public EasyLogger(String identifier) { + this.identifier = identifier; + } + + public EasyLogger(Class clazz) { + identifier = clazz.getSimpleName(); + } + + public void nLog(String msg, Object... params){ + log("{0}: {1}", identifier, msg(msg, params)); + } + + public void nLogD(String msg, Object... params){ + log(msg("{0}: {1} - {2}", identifier, msg(msg, params), getCurrentTime())); + } + + public void nHLog(String msg, Object... params){ + log("{0}: SHOULD NOT HAPPEN! {1}", identifier, msg(msg, params)); + } + +} diff --git a/src/main/java/tv/mangrana/utils/Output.java b/src/main/java/tv/mangrana/utils/Output.java new file mode 100644 index 0000000..9c5766a --- /dev/null +++ b/src/main/java/tv/mangrana/utils/Output.java @@ -0,0 +1,33 @@ +package tv.mangrana.utils; + +import java.text.DateFormat; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +public class Output { + + public static final String DATE_TIME_FORMAT = "yyyy/MM/dd HH:mm:ss"; + protected Output(){} + + private static void log (String msg) { + System.out.println(msg); + } + public static void log (String msg, Object... params) { + log(msg(msg, params)); + } + + public static void logWithDate(String msg) { + log(msg+" - "+getCurrentTime()); + } + + public static String getCurrentTime() { + DateFormat dateFormat = new SimpleDateFormat(DATE_TIME_FORMAT); + return dateFormat.format(new Date()); + } + + public static String msg(String msg, Object... params) { + return MessageFormat.format(msg, params); + } + +} diff --git a/src/main/java/tv/mangrana/utils/StringCaptor.java b/src/main/java/tv/mangrana/utils/StringCaptor.java new file mode 100644 index 0000000..41c12e9 --- /dev/null +++ b/src/main/java/tv/mangrana/utils/StringCaptor.java @@ -0,0 +1,33 @@ +package tv.mangrana.utils; + +import tv.mangrana.exception.IncorrectWorkingReferencesException; + +import java.util.Optional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class StringCaptor { + + public static String getMatchingSubstring(String fullText, String matchingRegex) { + Pattern pattern = Pattern.compile(matchingRegex); + Matcher matcher = pattern.matcher(fullText); + return matcher.find() ? matcher.group(1) : null; + } + + public static String getSeasonFolderNameFromSeason(String seasonFolderName) throws IncorrectWorkingReferencesException { + String season = Optional.ofNullable( + StringCaptor.getMatchingSubstring(seasonFolderName, "(S\\d{2})")) + .orElseThrow(() -> + new IncorrectWorkingReferencesException("Couldn't determinate the season from: "+seasonFolderName)); + return season.replaceFirst("S", "Temporada "); + } + + public static String getSeasonFolderNameFromEpisode(String episodeFileName) throws IncorrectWorkingReferencesException { + String episodeInfo = Optional.ofNullable( + StringCaptor.getMatchingSubstring(episodeFileName, "(S\\d{2}E\\d{2})")) + .orElseThrow(() -> + new IncorrectWorkingReferencesException("Couldn't determinate the episode from: "+episodeFileName)); + return "Temporada ".concat(episodeInfo.substring(1,3)); + } + +} diff --git a/src/main/java/tv/mangrana/utils/Waiter.java b/src/main/java/tv/mangrana/utils/Waiter.java new file mode 100644 index 0000000..a3712f3 --- /dev/null +++ b/src/main/java/tv/mangrana/utils/Waiter.java @@ -0,0 +1,21 @@ +package tv.mangrana.utils; + +public class Waiter { + + public static void waitMinutes(int minutes) { + try { + Thread.sleep(minutes * 60 * 1000L); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + + public static void waitSeconds(int seconds) { + try { + Thread.sleep(seconds * 1000L); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + +} diff --git a/src/main/java/tv/mangrana/utils/rest/APIInterface.java b/src/main/java/tv/mangrana/utils/rest/APIInterface.java new file mode 100644 index 0000000..ffa2a4f --- /dev/null +++ b/src/main/java/tv/mangrana/utils/rest/APIInterface.java @@ -0,0 +1,14 @@ +package tv.mangrana.utils.rest; + +public interface APIInterface { + enum ProtocolURLMark { + HTTPS("https://"); + private final String mark; + ProtocolURLMark(String mark) { + this.mark = mark; + } + public String getMark() { + return mark; + } + } +} diff --git a/src/main/java/tv/mangrana/utils/rest/APIProxyBuilderSingleton.java b/src/main/java/tv/mangrana/utils/rest/APIProxyBuilderSingleton.java new file mode 100644 index 0000000..c44ad66 --- /dev/null +++ b/src/main/java/tv/mangrana/utils/rest/APIProxyBuilderSingleton.java @@ -0,0 +1,45 @@ +package tv.mangrana.utils.rest; + +import tv.mangrana.radarr.api.client.gateway.RadarrAPIInterface; +import tv.mangrana.sonarr.api.client.gateway.SonarrAPIInterface; +import org.jboss.resteasy.client.jaxrs.ResteasyClient; +import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget; +import tv.mangrana.utils.Output; + +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.core.UriBuilder; +import java.util.Objects; + +public class APIProxyBuilderSingleton { + + private static RadarrAPIInterface radarrAPIInterface = null; + private static SonarrAPIInterface sonarrAPIInterface = null; + private APIProxyBuilderSingleton(){} + + private static void init (String host, Class clazz) { + Output.log("Initializing Proxy for host "+ host + " ..."); + UriBuilder fullPath = UriBuilder.fromPath(APIInterface.ProtocolURLMark.HTTPS.getMark()+host); + ResteasyClient client = (ResteasyClient) ClientBuilder.newClient(); + ResteasyWebTarget target = client.target(fullPath); + APIInterface apiInterface = target.proxy(clazz); + if (clazz.getName().equals(RadarrAPIInterface.class.getName())) { + radarrAPIInterface = (RadarrAPIInterface) apiInterface; + } else if (clazz.getName().equals(SonarrAPIInterface.class.getName())) { + sonarrAPIInterface = (SonarrAPIInterface) apiInterface; + } + } + + public static RadarrAPIInterface getRadarrInterface(String host) { + if (Objects.isNull(radarrAPIInterface)) + init(host, RadarrAPIInterface.class); + return radarrAPIInterface; + } + + public static SonarrAPIInterface getSonarrInterface(String host) { + if (Objects.isNull(sonarrAPIInterface)) + init(host, SonarrAPIInterface.class); + return sonarrAPIInterface; + } + +} + diff --git a/src/main/java/tv/mangrana/utils/schema/ClassGeneratorFromJson.java b/src/main/java/tv/mangrana/utils/schema/ClassGeneratorFromJson.java new file mode 100644 index 0000000..838d83f --- /dev/null +++ b/src/main/java/tv/mangrana/utils/schema/ClassGeneratorFromJson.java @@ -0,0 +1,44 @@ +package tv.mangrana.utils.schema; + +import com.sun.codemodel.JCodeModel; +import org.jsonschema2pojo.*; +import org.jsonschema2pojo.rules.RuleFactory; + +import java.io.File; +import java.io.IOException; +import java.net.URL; + + +public class ClassGeneratorFromJson { + + public void generateSchema (String url, String pckg, String rootClassName) throws IOException { + convertJsonToJavaClass( + new URL(url), + new File("."), + pckg, + rootClassName); + } + + private void convertJsonToJavaClass(URL inputJsonUrl, File outputJavaClassDirectory, String packageName, String javaClassName) + throws IOException { + JCodeModel jcodeModel = new JCodeModel(); + + GenerationConfig config = new DefaultGenerationConfig() { + @Override + public boolean isGenerateBuilders() { + return true; + } + + @Override + public SourceType getSourceType() { + return SourceType.JSON; + } + }; + + SchemaMapper mapper = new SchemaMapper(new RuleFactory(config, new Jackson2Annotator(config), new SchemaStore()), new SchemaGenerator()); + mapper.generate(jcodeModel, javaClassName, packageName, inputJsonUrl); + + jcodeModel.build(outputJavaClassDirectory); + } +} + diff --git a/src/main/java/tv/mangrana/utils/schema/ClientSchemaGenerator.java b/src/main/java/tv/mangrana/utils/schema/ClientSchemaGenerator.java new file mode 100644 index 0000000..ab78cd3 --- /dev/null +++ b/src/main/java/tv/mangrana/utils/schema/ClientSchemaGenerator.java @@ -0,0 +1,83 @@ +package tv.mangrana.utils.schema; + +import tv.mangrana.config.ConfigFileLoader; +import tv.mangrana.exception.IncorrectWorkingReferencesException; + +import java.io.IOException; + +import static tv.mangrana.config.ConfigFileLoader.ProjectConfiguration.*; +import static tv.mangrana.utils.rest.APIInterface.ProtocolURLMark.HTTPS; + +/** + * @deprecated Once the generated classes for client schema are located in the project, this utility is not needed anymore + */ +@Deprecated +public class ClientSchemaGenerator { + + ConfigFileLoader configFileLoader; + + private ClientSchemaGenerator() throws IncorrectWorkingReferencesException { + configFileLoader = new ConfigFileLoader(); + } + + public static void main(String[] args) throws IncorrectWorkingReferencesException, IOException { + new ClientSchemaGenerator().generateRadarrMovieClientSchema(); + } + + @SuppressWarnings("unused") + private void generateRadarrQueueClientSchema() throws IOException { + generate( + configFileLoader.getConfig(RADARR_API_HOST), + "/api/v3/queue?includeMovie=true?apikey=", + configFileLoader.getConfig(RADARR_API_KEY), + "tv.mangrana.radarr.api.schema.queue", + "QueueResourcePagingResource"); + } + + @SuppressWarnings("unused") + private void generateRadarrMovieClientSchema() throws IOException { + generate( + configFileLoader.getConfig(RADARR_API_HOST), + "/api/v3/movie/9216?apikey=", + configFileLoader.getConfig(RADARR_API_KEY), + "tv.mangrana.radarr.api.schema.movie", + "MovieResource"); + } + + @SuppressWarnings("unused") + private void generateSonarrQueueClientSchema() throws IOException { + generate( + configFileLoader.getConfig(SONARR_API_HOST), + "/api/v3/queue?apikey=", + configFileLoader.getConfig(SONARR_API_KEY), + "tv.mangrana.sonarr.api.schema.queue", + "SonarrQueue"); + } + + @SuppressWarnings("unused") + private void generateSonarrSeriesClientSchema() throws IOException { + generate( + configFileLoader.getConfig(SONARR_API_HOST), + "/api/v3/series/2220?apikey=", + configFileLoader.getConfig(SONARR_API_KEY), + "tv.mangrana.sonarr.api.schema.series", + "SonarrSeries"); + } + + @SuppressWarnings("unused") + private void generateSonarrHistoryClientSchema() throws IOException { + generate( + configFileLoader.getConfig(SONARR_API_HOST), + "/api/v3/history?sortKey=date&apikey=", + configFileLoader.getConfig(SONARR_API_KEY), + "tv.mangrana.sonarr.api.schema.history", + "SonarrHistory"); + } + + private void generate(String host, String uri, String apiKey, String pckg, String className) throws IOException { + String schemaUrl = HTTPS.getMark()+host.concat(uri.concat(apiKey)); + ClassGeneratorFromJson generatorFromJson = new ClassGeneratorFromJson(); + generatorFromJson.generateSchema(schemaUrl, pckg, className); + } + +} diff --git a/src/main/java/tv/mangrana/utils/yml/FakeYmlLoader.java b/src/main/java/tv/mangrana/utils/yml/FakeYmlLoader.java new file mode 100644 index 0000000..4a80bcb --- /dev/null +++ b/src/main/java/tv/mangrana/utils/yml/FakeYmlLoader.java @@ -0,0 +1,56 @@ +package tv.mangrana.utils.yml; + +import tv.mangrana.exception.IncorrectWorkingReferencesException; +import tv.mangrana.utils.EasyLogger; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.util.Arrays; +import java.util.EnumMap; +import java.util.Map; +import java.util.regex.Pattern; +import java.util.stream.Collectors; +import java.util.stream.Stream; + + +/** + * Only applicable to the following format + * key1: value1 + * key:2 value2 + */ +public class FakeYmlLoader { + + private static final EasyLogger logger = new EasyLogger(FakeYmlLoader.class); + + private FakeYmlLoader(){} + + @SuppressWarnings("all") + public static > EnumMap getEnumMapFromFile(File ymlFile, Class enumData, boolean silently) throws IncorrectWorkingReferencesException { + EnumMap enumMap = new EnumMap<>(enumData); + Pattern simpleYmlKeyValuePattern = Pattern.compile(".+: .+"); + try (Stream stream = Files.lines(ymlFile.toPath())) { + Map fileLines = stream + .filter(keyValueCandidate -> simpleYmlKeyValuePattern + .matcher(keyValueCandidate) + .matches()) + .map(s -> s.split(":")) + .collect(Collectors.toMap(e -> e[0], e -> e[1].trim())); + Arrays.stream(enumData.getEnumConstants()) + .forEach(cons -> + enumMap.put(cons, fileLines.get(cons.name().toLowerCase())) + ); + if (!silently) { + logger.nLog("Mapped from file {0} to -{1}- EnumMap", + ymlFile.getAbsolutePath(), enumData.getSimpleName()); + } + return enumMap; + } catch (IOException e) { + logger.nHLog("Some problem occurred trying to map file {0} to EnumMap {1}", + ymlFile.getAbsolutePath(), enumData.getName()); + e.printStackTrace(); + } + return null; + } + +} diff --git a/src/main/java/tv/mangrana/utils/yml/YmlFileLoader.java b/src/main/java/tv/mangrana/utils/yml/YmlFileLoader.java new file mode 100644 index 0000000..e2f967a --- /dev/null +++ b/src/main/java/tv/mangrana/utils/yml/YmlFileLoader.java @@ -0,0 +1,48 @@ +package tv.mangrana.utils.yml; + + +import tv.mangrana.exception.IncorrectWorkingReferencesException; +import tv.mangrana.utils.Output; +import com.amihaiemil.eoyaml.Yaml; +import com.amihaiemil.eoyaml.YamlMapping; +import org.apache.commons.lang.StringUtils; + +import java.io.File; +import java.io.IOException; +import java.util.EnumMap; + +public class YmlFileLoader { + + private YmlFileLoader(){} + + @SuppressWarnings("all") + public static > EnumMap getEnumMapFromFile(File ymlFile, Class enumData) throws IncorrectWorkingReferencesException { + log("Loading yml values from the file "+ymlFile.getAbsolutePath()); + try { + EnumMap valuesMap = new EnumMap<>(enumData); + YamlMapping yamlMapping = Yaml.createYamlInput(ymlFile) + .readYamlMapping(); + + for (E constant : enumData.getEnumConstants()) { + String value = null; + try { + value = yamlMapping.string(constant.name().toLowerCase()); + } catch (Exception e) { + log("problem with this mapping "+e.getMessage()); + } + if (StringUtils.isEmpty(value)) + log("Couldn't retrieve the value from " + constant.name()); + else + valuesMap.put((E) constant, value); + } + log("mapped values to EnumMap "+enumData.getName()); + return valuesMap; + } catch (IOException e) { + throw new IncorrectWorkingReferencesException("couldn't find the config file :("); + } + } + + private static void log(String msg) { + Output.log("YmlFileLoader: "+msg); + } +}