Compare commits

..

2 Commits

Author SHA1 Message Date
speakeasybot
a4a2130978 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.484.1 2025-02-06 00:27:45 +00:00
speakeasybot
f33408b177 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.484.1 2025-02-05 00:27:30 +00:00
107 changed files with 9702 additions and 111 deletions

View File

@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: 1732900d-e173-47c1-a90d-d45182eb35d9
management:
docChecksum: a643a64d282d705e3e24f61ed6f068c6
docChecksum: 7dec92ab9151a1b5a35df5faa81811ba
docVersion: 0.0.3
speakeasyVersion: 1.476.1
generationVersion: 2.495.1
releaseVersion: 0.11.3
configChecksum: 6395be3d833cb132a8994afd879a1f26
speakeasyVersion: 1.484.1
generationVersion: 2.503.2
releaseVersion: 0.11.5
configChecksum: e1b162d958a45d93386466a95963ae3c
repoURL: https://github.com/LukeHagar/plexjava.git
published: true
features:
java:
additionalDependencies: 0.1.0
constsAndDefaults: 0.1.1
core: 3.33.5
core: 3.33.8
deprecations: 2.81.1
downloadStreams: 0.1.1
enums: 2.81.2
@@ -92,6 +92,10 @@ generatedFiles:
- docs/models/errors/GetCompanionsDataErrors.md
- docs/models/errors/GetCompanionsDataPlexErrors.md
- docs/models/errors/GetCompanionsDataUnauthorized.md
- docs/models/errors/GetCountriesLibraryBadRequest.md
- docs/models/errors/GetCountriesLibraryErrors.md
- docs/models/errors/GetCountriesLibraryLibraryErrors.md
- docs/models/errors/GetCountriesLibraryUnauthorized.md
- docs/models/errors/GetDevicesBadRequest.md
- docs/models/errors/GetDevicesErrors.md
- docs/models/errors/GetDevicesServerErrors.md
@@ -100,6 +104,10 @@ generatedFiles:
- docs/models/errors/GetFileHashErrors.md
- docs/models/errors/GetFileHashLibraryErrors.md
- docs/models/errors/GetFileHashUnauthorized.md
- docs/models/errors/GetGenresLibraryBadRequest.md
- docs/models/errors/GetGenresLibraryErrors.md
- docs/models/errors/GetGenresLibraryLibraryErrors.md
- docs/models/errors/GetGenresLibraryUnauthorized.md
- docs/models/errors/GetGeoDataBadRequest.md
- docs/models/errors/GetGeoDataErrors.md
- docs/models/errors/GetGeoDataPlexErrors.md
@@ -258,6 +266,10 @@ generatedFiles:
- docs/models/errors/GetUserFriendsErrors.md
- docs/models/errors/GetUserFriendsPlexErrors.md
- docs/models/errors/GetUserFriendsUnauthorized.md
- docs/models/errors/GetUsersBadRequest.md
- docs/models/errors/GetUsersErrors.md
- docs/models/errors/GetUsersUnauthorized.md
- docs/models/errors/GetUsersUsersErrors.md
- docs/models/errors/GetWatchListBadRequest.md
- docs/models/errors/GetWatchListErrors.md
- docs/models/errors/GetWatchListUnauthorized.md
@@ -335,6 +347,12 @@ generatedFiles:
- docs/models/operations/AddPlaylistContentsRequest.md
- docs/models/operations/AddPlaylistContentsResponse.md
- docs/models/operations/AddPlaylistContentsResponseBody.md
- docs/models/operations/AllLibraries.md
- docs/models/operations/AllowCameraUpload.md
- docs/models/operations/AllowChannels.md
- docs/models/operations/AllowSubtitleAdmin.md
- docs/models/operations/AllowSync.md
- docs/models/operations/AllowTuners.md
- docs/models/operations/ApplyUpdatesRequest.md
- docs/models/operations/ApplyUpdatesResponse.md
- docs/models/operations/AutoSelectSubtitle.md
@@ -399,11 +417,21 @@ generatedFiles:
- docs/models/operations/GetButlerTasksResponse.md
- docs/models/operations/GetButlerTasksResponseBody.md
- docs/models/operations/GetCompanionsDataResponse.md
- docs/models/operations/GetCountriesLibraryDirectory.md
- docs/models/operations/GetCountriesLibraryMediaContainer.md
- docs/models/operations/GetCountriesLibraryRequest.md
- docs/models/operations/GetCountriesLibraryResponse.md
- docs/models/operations/GetCountriesLibraryResponseBody.md
- docs/models/operations/GetDevicesMediaContainer.md
- docs/models/operations/GetDevicesResponse.md
- docs/models/operations/GetDevicesResponseBody.md
- docs/models/operations/GetFileHashRequest.md
- docs/models/operations/GetFileHashResponse.md
- docs/models/operations/GetGenresLibraryDirectory.md
- docs/models/operations/GetGenresLibraryMediaContainer.md
- docs/models/operations/GetGenresLibraryRequest.md
- docs/models/operations/GetGenresLibraryResponse.md
- docs/models/operations/GetGenresLibraryResponseBody.md
- docs/models/operations/GetGeoDataGeoData.md
- docs/models/operations/GetGeoDataResponse.md
- docs/models/operations/GetGlobalHubsMediaContainer.md
@@ -687,6 +715,7 @@ generatedFiles:
- docs/models/operations/GetTopWatchedContentResponse.md
- docs/models/operations/GetTopWatchedContentResponseBody.md
- docs/models/operations/GetTopWatchedContentRole.md
- docs/models/operations/GetTopWatchedContentUser.md
- docs/models/operations/GetTranscodeSessionsMediaContainer.md
- docs/models/operations/GetTranscodeSessionsResponse.md
- docs/models/operations/GetTranscodeSessionsResponseBody.md
@@ -697,11 +726,17 @@ generatedFiles:
- docs/models/operations/GetUpdateStatusResponse.md
- docs/models/operations/GetUpdateStatusResponseBody.md
- docs/models/operations/GetUserFriendsResponse.md
- docs/models/operations/GetUsersMediaContainer.md
- docs/models/operations/GetUsersRequest.md
- docs/models/operations/GetUsersResponse.md
- docs/models/operations/GetUsersResponseBody.md
- docs/models/operations/GetUsersServer.md
- docs/models/operations/GetWatchListRequest.md
- docs/models/operations/GetWatchListResponse.md
- docs/models/operations/GetWatchListResponseBody.md
- docs/models/operations/Guids.md
- docs/models/operations/HasThumbnail.md
- docs/models/operations/Home.md
- docs/models/operations/Hub.md
- docs/models/operations/Image.md
- docs/models/operations/IncludeCollections.md
@@ -737,9 +772,11 @@ generatedFiles:
- docs/models/operations/OnlyTransient.md
- docs/models/operations/Operator.md
- docs/models/operations/OptimizedForStreaming.md
- docs/models/operations/Owned.md
- docs/models/operations/Part.md
- docs/models/operations/PastSubscription.md
- docs/models/operations/PathParamTaskName.md
- docs/models/operations/Pending.md
- docs/models/operations/PerformSearchRequest.md
- docs/models/operations/PerformSearchResponse.md
- docs/models/operations/PerformVoiceSearchRequest.md
@@ -767,6 +804,7 @@ generatedFiles:
- docs/models/operations/PostUsersSignInDataUserProfile.md
- docs/models/operations/PostUsersSignInDataWatchedIndicator.md
- docs/models/operations/Producer.md
- docs/models/operations/Protected.md
- docs/models/operations/Protocol.md
- docs/models/operations/Provider.md
- docs/models/operations/QueryParamFilter.md
@@ -780,6 +818,7 @@ generatedFiles:
- docs/models/operations/Ratings.md
- docs/models/operations/Release.md
- docs/models/operations/ResponseBody.md
- docs/models/operations/Restricted.md
- docs/models/operations/Role.md
- docs/models/operations/Scope.md
- docs/models/operations/SearchResult.md
@@ -845,6 +884,7 @@ generatedFiles:
- docs/sdks/sessions/README.md
- docs/sdks/statistics/README.md
- docs/sdks/updater/README.md
- docs/sdks/users/README.md
- docs/sdks/video/README.md
- docs/sdks/watchlist/README.md
- gradle/wrapper/gradle-wrapper.jar
@@ -869,6 +909,7 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/Sessions.java
- src/main/java/dev/plexapi/sdk/Statistics.java
- src/main/java/dev/plexapi/sdk/Updater.java
- src/main/java/dev/plexapi/sdk/Users.java
- src/main/java/dev/plexapi/sdk/Video.java
- src/main/java/dev/plexapi/sdk/Watchlist.java
- src/main/java/dev/plexapi/sdk/models/errors/AddPlaylistContentsBadRequest.java
@@ -933,6 +974,10 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/errors/GetCompanionsDataErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCompanionsDataPlexErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCompanionsDataUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCountriesLibraryBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCountriesLibraryErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCountriesLibraryLibraryErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetCountriesLibraryUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetDevicesBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetDevicesErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetDevicesServerErrors.java
@@ -941,6 +986,10 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/errors/GetFileHashErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetFileHashLibraryErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetFileHashUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGenresLibraryBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGenresLibraryErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGenresLibraryLibraryErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGenresLibraryUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGeoDataBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGeoDataErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetGeoDataPlexErrors.java
@@ -1099,6 +1148,10 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/errors/GetUserFriendsErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUserFriendsPlexErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUserFriendsUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUsersBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUsersErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUsersUnauthorized.java
- src/main/java/dev/plexapi/sdk/models/errors/GetUsersUsersErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetWatchListBadRequest.java
- src/main/java/dev/plexapi/sdk/models/errors/GetWatchListErrors.java
- src/main/java/dev/plexapi/sdk/models/errors/GetWatchListUnauthorized.java
@@ -1178,6 +1231,12 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/AddPlaylistContentsRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/AddPlaylistContentsResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/AddPlaylistContentsResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/AllLibraries.java
- src/main/java/dev/plexapi/sdk/models/operations/AllowCameraUpload.java
- src/main/java/dev/plexapi/sdk/models/operations/AllowChannels.java
- src/main/java/dev/plexapi/sdk/models/operations/AllowSubtitleAdmin.java
- src/main/java/dev/plexapi/sdk/models/operations/AllowSync.java
- src/main/java/dev/plexapi/sdk/models/operations/AllowTuners.java
- src/main/java/dev/plexapi/sdk/models/operations/ApplyUpdatesRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/ApplyUpdatesRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/ApplyUpdatesResponse.java
@@ -1256,6 +1315,12 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/GetButlerTasksResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCompanionsDataRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCompanionsDataResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryDirectory.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryMediaContainer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetCountriesLibraryResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetDevicesMediaContainer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetDevicesRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetDevicesResponse.java
@@ -1263,6 +1328,12 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/GetFileHashRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/GetFileHashRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetFileHashResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryDirectory.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryMediaContainer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGenresLibraryResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGeoDataGeoData.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGeoDataRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetGeoDataResponse.java
@@ -1584,6 +1655,7 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/GetTopWatchedContentResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTopWatchedContentResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTopWatchedContentRole.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTopWatchedContentUser.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTranscodeSessionsMediaContainer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTranscodeSessionsRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetTranscodeSessionsResponse.java
@@ -1598,12 +1670,19 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/GetUpdateStatusResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUserFriendsRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUserFriendsResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersMediaContainer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/GetUsersServer.java
- src/main/java/dev/plexapi/sdk/models/operations/GetWatchListRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/GetWatchListRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/GetWatchListResponse.java
- src/main/java/dev/plexapi/sdk/models/operations/GetWatchListResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/Guids.java
- src/main/java/dev/plexapi/sdk/models/operations/HasThumbnail.java
- src/main/java/dev/plexapi/sdk/models/operations/Home.java
- src/main/java/dev/plexapi/sdk/models/operations/Hub.java
- src/main/java/dev/plexapi/sdk/models/operations/Image.java
- src/main/java/dev/plexapi/sdk/models/operations/IncludeCollections.java
@@ -1643,9 +1722,11 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/OnlyTransient.java
- src/main/java/dev/plexapi/sdk/models/operations/Operator.java
- src/main/java/dev/plexapi/sdk/models/operations/OptimizedForStreaming.java
- src/main/java/dev/plexapi/sdk/models/operations/Owned.java
- src/main/java/dev/plexapi/sdk/models/operations/Part.java
- src/main/java/dev/plexapi/sdk/models/operations/PastSubscription.java
- src/main/java/dev/plexapi/sdk/models/operations/PathParamTaskName.java
- src/main/java/dev/plexapi/sdk/models/operations/Pending.java
- src/main/java/dev/plexapi/sdk/models/operations/PerformSearchRequest.java
- src/main/java/dev/plexapi/sdk/models/operations/PerformSearchRequestBuilder.java
- src/main/java/dev/plexapi/sdk/models/operations/PerformSearchResponse.java
@@ -1676,6 +1757,7 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/PostUsersSignInDataUserProfile.java
- src/main/java/dev/plexapi/sdk/models/operations/PostUsersSignInDataWatchedIndicator.java
- src/main/java/dev/plexapi/sdk/models/operations/Producer.java
- src/main/java/dev/plexapi/sdk/models/operations/Protected.java
- src/main/java/dev/plexapi/sdk/models/operations/Protocol.java
- src/main/java/dev/plexapi/sdk/models/operations/Provider.java
- src/main/java/dev/plexapi/sdk/models/operations/QueryParamFilter.java
@@ -1689,6 +1771,7 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/models/operations/Ratings.java
- src/main/java/dev/plexapi/sdk/models/operations/Release.java
- src/main/java/dev/plexapi/sdk/models/operations/ResponseBody.java
- src/main/java/dev/plexapi/sdk/models/operations/Restricted.java
- src/main/java/dev/plexapi/sdk/models/operations/Role.java
- src/main/java/dev/plexapi/sdk/models/operations/SDKMethodInterfaces.java
- src/main/java/dev/plexapi/sdk/models/operations/Scope.java
@@ -1774,6 +1857,7 @@ generatedFiles:
- src/main/java/dev/plexapi/sdk/utils/QueryParameter.java
- src/main/java/dev/plexapi/sdk/utils/QueryParameters.java
- src/main/java/dev/plexapi/sdk/utils/QueryParamsMetadata.java
- src/main/java/dev/plexapi/sdk/utils/RecordingClient.java
- src/main/java/dev/plexapi/sdk/utils/RequestBody.java
- src/main/java/dev/plexapi/sdk/utils/RequestMetadata.java
- src/main/java/dev/plexapi/sdk/utils/Response.java
@@ -2775,5 +2859,53 @@ examples:
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}]}
get-genres-library:
speakeasy-default-get-genres-library:
parameters:
path:
sectionKey: 9518
responses:
"200":
application/json: {"MediaContainer": {"size": 50, "identifier": "com.plexapp.plugins.library", "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "nocache": true, "thumb": "/:/resources/show.png", "title1": "TV Shows (Reality)", "title2": "By Genre", "viewGroup": "secondary", "Directory": [{"fastKey": "/library/sections/10/all?genre=89", "key": "89", "title": "Action", "type": "genre"}]}}
"400":
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]}
get-countries-library:
speakeasy-default-get-countries-library:
parameters:
path:
sectionKey: 9518
responses:
"200":
application/json: {"MediaContainer": {"size": 50, "identifier": "com.plexapp.plugins.library", "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "nocache": true, "thumb": "/:/resources/show.png", "title1": "TV Series", "title2": "By Country", "viewGroup": "secondary", "Directory": [{"fastKey": "/library/sections/2/all?country=15491", "key": "15491", "title": "Japan"}]}}
"400":
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]}
get-users:
"":
parameters:
header:
X-Plex-Client-Identifier: "3381b62b-9ab7-4e37-827b-203e9809eb58"
X-Plex-Product: "Plex for Roku"
X-Plex-Device: "Roku 3"
X-Plex-Device-Name: "Chrome"
X-Plex-Device-Screen-Resolution: "1487x1165,2560x1440"
X-Plex-Version: "2.4.1"
X-Plex-Platform: "Roku"
X-Plex-Features: "external-media,indirect-media,hub-style-list"
X-Plex-Model: "4200X"
X-Plex-Session-Id: "97e136ef-4ddd-4ff3-89a7-a5820c96c2ca"
X-Plex-Language: "en"
X-Plex-Platform-Version: "4.3 build 1057"
X-Plex-Token: "CV5xoxjTpFKUzBTShsaf"
responses:
"200":
application/xml: "0xa9CdebeF9E"
"400":
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]}
examplesVersion: 1.0.0
generatedTests: {}

View File

@@ -13,7 +13,7 @@ generation:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
java:
version: 0.11.3
version: 0.11.5
additionalDependencies: []
additionalPlugins: []
artifactID: plexapi

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.476.1
speakeasyVersion: 1.484.1
sources:
my-source:
sourceNamespace: my-source
@@ -8,19 +8,19 @@ sources:
- latest
plexapi:
sourceNamespace: plexapi
sourceRevisionDigest: sha256:e73707dfae50d22dab2166b1661938446b9831bcee252ecd696a1172dfd6ae2c
sourceBlobDigest: sha256:e06caa091ad527fd21714fc0d43e7ea385e181fbad8c4f60296457a89a23c696
sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae
sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9
tags:
- latest
- speakeasy-sdk-regen-1737937609
- speakeasy-sdk-regen-1738801581
targets:
plexjava:
source: plexapi
sourceNamespace: plexapi
sourceRevisionDigest: sha256:e73707dfae50d22dab2166b1661938446b9831bcee252ecd696a1172dfd6ae2c
sourceBlobDigest: sha256:e06caa091ad527fd21714fc0d43e7ea385e181fbad8c4f60296457a89a23c696
sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae
sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9
codeSamplesNamespace: code-samples-java-plexjava
codeSamplesRevisionDigest: sha256:88e5ff78d25261d63cd6b797a5176884e5606d54b7ff8bade974b8464a274a94
codeSamplesRevisionDigest: sha256:85b9a83c615e20272177b4b49152c959df250bf45bc141a4652d71090ec72db7
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest

View File

@@ -69,7 +69,7 @@ The samples below show how a published SDK artifact is used:
Gradle:
```groovy
implementation 'dev.plexapi:plexapi:0.11.3'
implementation 'dev.plexapi:plexapi:0.11.5'
```
Maven:
@@ -77,7 +77,7 @@ Maven:
<dependency>
<groupId>dev.plexapi</groupId>
<artifactId>plexapi</artifactId>
<version>0.11.3</version>
<version>0.11.5</version>
</dependency>
```
@@ -171,6 +171,8 @@ public class Application {
* [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
* [getRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
* [getSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
* [getGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
* [getCountriesLibrary](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
* [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
* [getMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
@@ -251,6 +253,10 @@ public class Application {
* [checkForUpdates](docs/sdks/updater/README.md#checkforupdates) - Checking for updates
* [applyUpdates](docs/sdks/updater/README.md#applyupdates) - Apply Updates
### [users()](docs/sdks/users/README.md)
* [getUsers](docs/sdks/users/README.md#getusers) - Get list of all connected users
### [video()](docs/sdks/video/README.md)
* [getTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item

View File

@@ -218,4 +218,24 @@ Based on:
### Generated
- [java v0.11.3] .
### Releases
- [Maven Central v0.11.3] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.11.3 - .
- [Maven Central v0.11.3] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.11.3 - .
## 2025-02-05 00:25:55
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [java v0.11.4] .
### Releases
- [Maven Central v0.11.4] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.11.4 - .
## 2025-02-06 00:26:06
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [java v0.11.5] .
### Releases
- [Maven Central v0.11.5] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.11.5 - .

View File

@@ -63,7 +63,7 @@ tasks.withType(Javadoc) {
}
group = "dev.plexapi"
version = "0.11.3"
version = "0.11.5"
sourcesJar {
archiveBaseName = "plexapi"
@@ -101,7 +101,7 @@ publishing {
maven(MavenPublication) {
groupId = 'dev.plexapi'
artifactId = 'plexapi'
version = '0.11.3'
version = '0.11.5'
from components.java

View File

@@ -624,7 +624,6 @@ actions:
import dev.plexapi.plexapi.PlexAPI;
import dev.plexapi.plexapi.models.operations.GetRecentlyAddedRequest;
import dev.plexapi.plexapi.models.operations.GetRecentlyAddedResponse;
import dev.plexapi.plexapi.models.operations.IncludeMeta;
import dev.plexapi.plexapi.models.operations.Type;
import java.lang.Exception;
@@ -640,9 +639,6 @@ actions:
.contentDirectoryID(470161L)
.type(Type.TvShow)
.sectionID(2L)
.includeMeta(IncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetRecentlyAddedResponse res = sdk.hubs().getRecentlyAdded()
@@ -1029,7 +1025,6 @@ actions:
import dev.plexapi.plexapi.models.errors.GetRecentlyAddedLibraryUnauthorized;
import dev.plexapi.plexapi.models.operations.GetRecentlyAddedLibraryRequest;
import dev.plexapi.plexapi.models.operations.GetRecentlyAddedLibraryResponse;
import dev.plexapi.plexapi.models.operations.QueryParamIncludeMeta;
import dev.plexapi.plexapi.models.operations.QueryParamType;
import java.lang.Exception;
import java.util.List;
@@ -1059,9 +1054,6 @@ actions:
16L,
17L))
.sectionID(2L)
.includeMeta(QueryParamIncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetRecentlyAddedLibraryResponse res = sdk.library().getRecentlyAddedLibrary()
@@ -1086,8 +1078,6 @@ actions:
import dev.plexapi.plexapi.models.errors.GetSearchAllLibrariesUnauthorized;
import dev.plexapi.plexapi.models.operations.GetSearchAllLibrariesRequest;
import dev.plexapi.plexapi.models.operations.GetSearchAllLibrariesResponse;
import dev.plexapi.plexapi.models.operations.QueryParamIncludeCollections;
import dev.plexapi.plexapi.models.operations.QueryParamIncludeExternalMedia;
import dev.plexapi.plexapi.models.operations.SearchTypes;
import java.lang.Exception;
import java.util.List;
@@ -1105,8 +1095,6 @@ actions:
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.searchTypes(List.of(
SearchTypes.PEOPLE))
.includeCollections(QueryParamIncludeCollections.Enable)
.includeExternalMedia(QueryParamIncludeExternalMedia.Enable)
.build();
GetSearchAllLibrariesResponse res = sdk.library().getSearchAllLibraries()
@@ -1175,8 +1163,6 @@ actions:
GetWatchListRequest req = GetWatchListRequest.builder()
.filter(Filter.AVAILABLE)
.xPlexToken("CV5xoxjTpFKUzBTShsaf")
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetWatchListResponse res = sdk.watchlist().getWatchList()
@@ -1245,6 +1231,68 @@ actions:
.sectionKey(9518)
.call();
if (res.object().isPresent()) {
// handle response
}
}
}
- target: $["paths"]["/library/sections/{sectionKey}/country"]["get"]
update:
x-codeSamples:
- lang: java
label: library
source: |-
package hello.world;
import dev.plexapi.plexapi.PlexAPI;
import dev.plexapi.plexapi.models.errors.GetCountriesLibraryBadRequest;
import dev.plexapi.plexapi.models.errors.GetCountriesLibraryUnauthorized;
import dev.plexapi.plexapi.models.operations.GetCountriesLibraryResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetCountriesLibraryBadRequest, GetCountriesLibraryUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.accessToken("<YOUR_API_KEY_HERE>")
.build();
GetCountriesLibraryResponse res = sdk.library().getCountriesLibrary()
.sectionKey(9518)
.call();
if (res.object().isPresent()) {
// handle response
}
}
}
- target: $["paths"]["/library/sections/{sectionKey}/genre"]["get"]
update:
x-codeSamples:
- lang: java
label: library
source: |-
package hello.world;
import dev.plexapi.plexapi.PlexAPI;
import dev.plexapi.plexapi.models.errors.GetGenresLibraryBadRequest;
import dev.plexapi.plexapi.models.errors.GetGenresLibraryUnauthorized;
import dev.plexapi.plexapi.models.operations.GetGenresLibraryResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetGenresLibraryBadRequest, GetGenresLibraryUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.accessToken("<YOUR_API_KEY_HERE>")
.build();
GetGenresLibraryResponse res = sdk.library().getGenresLibrary()
.sectionKey(9518)
.call();
if (res.object().isPresent()) {
// handle response
}
@@ -1325,11 +1373,9 @@ actions:
import dev.plexapi.plexapi.PlexAPI;
import dev.plexapi.plexapi.models.errors.GetLibraryItemsBadRequest;
import dev.plexapi.plexapi.models.errors.GetLibraryItemsUnauthorized;
import dev.plexapi.plexapi.models.operations.GetLibraryItemsQueryParamIncludeMeta;
import dev.plexapi.plexapi.models.operations.GetLibraryItemsQueryParamType;
import dev.plexapi.plexapi.models.operations.GetLibraryItemsRequest;
import dev.plexapi.plexapi.models.operations.GetLibraryItemsResponse;
import dev.plexapi.plexapi.models.operations.IncludeGuids;
import dev.plexapi.plexapi.models.operations.Tag;
import java.lang.Exception;
@@ -1344,11 +1390,7 @@ actions:
GetLibraryItemsRequest req = GetLibraryItemsRequest.builder()
.tag(Tag.EDITION)
.sectionKey(9518)
.includeGuids(IncludeGuids.Enable)
.type(GetLibraryItemsQueryParamType.TvShow)
.includeMeta(GetLibraryItemsQueryParamIncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetLibraryItemsResponse res = sdk.library().getLibraryItems()
@@ -1578,7 +1620,6 @@ actions:
GetPinRequest req = GetPinRequest.builder()
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.strong(false)
.clientName("Plex for Roku")
.deviceNickname("Roku 3")
.clientVersion("2.4.1")
@@ -2426,6 +2467,53 @@ actions:
}
}
}
- target: $["paths"]["/users"]["get"]
update:
x-codeSamples:
- lang: java
label: users
source: |-
package hello.world;
import dev.plexapi.plexapi.PlexAPI;
import dev.plexapi.plexapi.models.errors.GetUsersBadRequest;
import dev.plexapi.plexapi.models.errors.GetUsersUnauthorized;
import dev.plexapi.plexapi.models.operations.GetUsersRequest;
import dev.plexapi.plexapi.models.operations.GetUsersResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetUsersBadRequest, GetUsersUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.build();
GetUsersRequest req = GetUsersRequest.builder()
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.xPlexToken("CV5xoxjTpFKUzBTShsaf")
.clientName("Plex for Roku")
.deviceNickname("Roku 3")
.deviceName("Chrome")
.deviceScreenResolution("1487x1165,2560x1440")
.clientVersion("2.4.1")
.platform("Roku")
.clientFeatures("external-media,indirect-media,hub-style-list")
.model("4200X")
.xPlexSessionId("97e136ef-4ddd-4ff3-89a7-a5820c96c2ca")
.xPlexLanguage("en")
.platformVersion("4.3 build 1057")
.build();
GetUsersResponse res = sdk.users().getUsers()
.request(req)
.call();
if (res.body().isPresent()) {
// handle response
}
}
}
- target: $["paths"]["/users/signin"]["post"]
update:
x-codeSamples:
@@ -2458,7 +2546,6 @@ actions:
.requestBody(PostUsersSignInDataRequestBody.builder()
.login("username@email.com")
.password("password123")
.rememberMe(false)
.verificationCode("123456")
.build())
.build();

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetCountriesLibraryErrors](../../models/errors/GetCountriesLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetCountriesLibraryLibraryErrors](../../models/errors/GetCountriesLibraryLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetGenresLibraryErrors](../../models/errors/GetGenresLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetGenresLibraryLibraryErrors](../../models/errors/GetGenresLibraryLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,11 @@
# GetUsersBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetUsersErrors](../../models/errors/GetUsersErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetUsersErrors
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,11 @@
# GetUsersUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `errors` | List\<[GetUsersUsersErrors](../../models/errors/GetUsersUsersErrors.md)> | :heavy_minus_sign: | N/A |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetUsersUsersErrors
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *Optional\<String>* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,11 @@
# AllLibraries
Indicates if the user has access to all libraries.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# AllowCameraUpload
Indicates if the user is allowed to upload from a camera.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# AllowChannels
Indicates if the user has access to channels.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# AllowSubtitleAdmin
Indicates if the user can manage subtitles.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# AllowSync
Indicates if the user is allowed to sync media.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# AllowTuners
Indicates if the user is allowed to use tuners.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryDirectory
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- |
| `fastKey` | *String* | :heavy_check_mark: | N/A | /library/sections/2/all?country=15491 |
| `key` | *String* | :heavy_check_mark: | N/A | 15491 |
| `title` | *String* | :heavy_check_mark: | N/A | Japan |

View File

@@ -0,0 +1,22 @@
# GetCountriesLibraryMediaContainer
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `size` | *double* | :heavy_check_mark: | N/A | 50 |
| `offset` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `totalSize` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `identifier` | *String* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | false |
| `art` | *String* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
| `content` | *String* | :heavy_check_mark: | N/A | secondary |
| `mediaTagPrefix` | *String* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
| `mediaTagVersion` | *long* | :heavy_check_mark: | N/A | 1734362201 |
| `nocache` | *boolean* | :heavy_check_mark: | N/A | true |
| `thumb` | *String* | :heavy_check_mark: | N/A | /:/resources/show.png |
| `title1` | *String* | :heavy_check_mark: | N/A | TV Series |
| `title2` | *String* | :heavy_check_mark: | N/A | By Country |
| `viewGroup` | *String* | :heavy_check_mark: | N/A | secondary |
| `directory` | List\<[GetCountriesLibraryDirectory](../../models/operations/GetCountriesLibraryDirectory.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,8 @@
# GetCountriesLibraryRequest
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `sectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryResponse
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `object` | [Optional\<GetCountriesLibraryResponseBody>](../../models/operations/GetCountriesLibraryResponseBody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryResponseBody
Successful response containing media container data.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| `mediaContainer` | [Optional\<GetCountriesLibraryMediaContainer>](../../models/operations/GetCountriesLibraryMediaContainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryDirectory
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- |
| `fastKey` | *String* | :heavy_check_mark: | N/A | /library/sections/10/all?genre=89 |
| `key` | *String* | :heavy_check_mark: | N/A | 89 |
| `title` | *String* | :heavy_check_mark: | N/A | Action |
| `type` | *String* | :heavy_check_mark: | N/A | genre |

View File

@@ -0,0 +1,22 @@
# GetGenresLibraryMediaContainer
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `size` | *double* | :heavy_check_mark: | N/A | 50 |
| `offset` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `totalSize` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `identifier` | *String* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | false |
| `art` | *String* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
| `content` | *String* | :heavy_check_mark: | N/A | secondary |
| `mediaTagPrefix` | *String* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
| `mediaTagVersion` | *long* | :heavy_check_mark: | N/A | 1734362201 |
| `nocache` | *boolean* | :heavy_check_mark: | N/A | true |
| `thumb` | *String* | :heavy_check_mark: | N/A | /:/resources/show.png |
| `title1` | *String* | :heavy_check_mark: | N/A | TV Shows (Reality) |
| `title2` | *String* | :heavy_check_mark: | N/A | By Genre |
| `viewGroup` | *String* | :heavy_check_mark: | N/A | secondary |
| `directory` | List\<[GetGenresLibraryDirectory](../../models/operations/GetGenresLibraryDirectory.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,8 @@
# GetGenresLibraryRequest
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `sectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryResponse
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `object` | [Optional\<GetGenresLibraryResponseBody>](../../models/operations/GetGenresLibraryResponseBody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryResponseBody
Successful response containing media container data.
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
| `mediaContainer` | [Optional\<GetGenresLibraryMediaContainer>](../../models/operations/GetGenresLibraryMediaContainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -9,6 +9,6 @@
| `offset` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `totalSize` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | |
| `identifier` | *Optional\<String>* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
| `allowSync` | *Optional\<Boolean>* | :heavy_minus_sign: | N/A | |
| `allowSync` | *Optional\<Boolean>* | :heavy_minus_sign: | N/A | false |
| `meta` | [Optional\<Meta>](../../models/operations/Meta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
| `metadata` | List\<[GetRecentlyAddedMetadata](../../models/operations/GetRecentlyAddedMetadata.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -36,4 +36,4 @@
| `country` | List\<[GetTopWatchedContentCountry](../../models/operations/GetTopWatchedContentCountry.md)> | :heavy_minus_sign: | N/A | |
| `guids` | List\<[GetTopWatchedContentGuids](../../models/operations/GetTopWatchedContentGuids.md)> | :heavy_minus_sign: | N/A | |
| `role` | List\<[GetTopWatchedContentRole](../../models/operations/GetTopWatchedContentRole.md)> | :heavy_minus_sign: | N/A | |
| `user` | List\<[User](../../models/operations/User.md)> | :heavy_minus_sign: | N/A | |
| `user` | List\<[GetTopWatchedContentUser](../../models/operations/GetTopWatchedContentUser.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,8 @@
# GetTopWatchedContentUser
## Fields
| Field | Type | Required | Description | Example |
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
| `id` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 220 |

View File

@@ -0,0 +1,15 @@
# GetUsersMediaContainer
Container holding user and server details.
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
| `friendlyName` | *String* | :heavy_check_mark: | The friendly name of the Plex instance. | myPlex |
| `identifier` | *String* | :heavy_check_mark: | N/A | com.plexapp.plugins.myplex |
| `machineIdentifier` | *String* | :heavy_check_mark: | Unique Machine identifier of the Plex server. | 3dff4c4da3b1229a649aa574a9e2b419a684a20e |
| `totalSize` | *long* | :heavy_check_mark: | Total number of users. | 30 |
| `size` | *long* | :heavy_check_mark: | Number of users in the current response. | 30 |
| `user` | List\<[User](../../models/operations/User.md)> | :heavy_check_mark: | List of users with access to the Plex server. | |

View File

@@ -0,0 +1,20 @@
# GetUsersRequest
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `clientID` | *String* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
| `clientName` | *Optional\<String>* | :heavy_minus_sign: | The name of the client application. (Plex Web, Plex Media Server, etc.) | Plex for Roku |
| `deviceNickname` | *Optional\<String>* | :heavy_minus_sign: | A relatively friendly name for the client device | Roku 3 |
| `deviceName` | *Optional\<String>* | :heavy_minus_sign: | The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.) | Chrome |
| `deviceScreenResolution` | *Optional\<String>* | :heavy_minus_sign: | The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440) | 1487x1165,2560x1440 |
| `clientVersion` | *Optional\<String>* | :heavy_minus_sign: | The version of the client application. | 2.4.1 |
| `platform` | *Optional\<String>* | :heavy_minus_sign: | The platform of the client application. | Roku |
| `clientFeatures` | *Optional\<String>* | :heavy_minus_sign: | The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list) | external-media,indirect-media,hub-style-list |
| `model` | *Optional\<String>* | :heavy_minus_sign: | A potentially less friendly identifier for the device model | 4200X |
| `xPlexSessionId` | *Optional\<String>* | :heavy_minus_sign: | The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca) | 97e136ef-4ddd-4ff3-89a7-a5820c96c2ca |
| `xPlexLanguage` | *Optional\<String>* | :heavy_minus_sign: | The language of the client application. | en |
| `platformVersion` | *Optional\<String>* | :heavy_minus_sign: | The version of the platform | 4.3 build 1057 |
| `xPlexToken` | *String* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |

View File

@@ -0,0 +1,11 @@
# GetUsersResponse
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [HttpResponse\<InputStream>](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `body` | *Optional\<byte[]>* | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,10 @@
# GetUsersResponseBody
Successful response with media container data in XML
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| `mediaContainer` | [Optional\<GetUsersMediaContainer>](../../models/operations/GetUsersMediaContainer.md) | :heavy_minus_sign: | Container holding user and server details. |

View File

@@ -0,0 +1,16 @@
# GetUsersServer
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| `id` | *long* | :heavy_check_mark: | Unique ID of the server of the connected user | 907759180 |
| `serverId` | *long* | :heavy_check_mark: | ID of the actual Plex server. | 9999999 |
| `machineIdentifier` | *String* | :heavy_check_mark: | Machine identifier of the Plex server. | fbb8aa6be6e0c997c6268bc2b4431c8807f70a3 |
| `name` | *String* | :heavy_check_mark: | Name of the Plex server of the connected user. | ConnectedUserFlix |
| `lastSeenAt` | *long* | :heavy_check_mark: | N/A | 1556281940 |
| `numLibraries` | *long* | :heavy_check_mark: | Number of libraries in the server this user has access to. | 16 |
| `allLibraries` | [Optional\<AllLibraries>](../../models/operations/AllLibraries.md) | :heavy_minus_sign: | N/A | 1 |
| `owned` | [Optional\<Owned>](../../models/operations/Owned.md) | :heavy_minus_sign: | N/A | 1 |
| `pending` | [Optional\<Pending>](../../models/operations/Pending.md) | :heavy_minus_sign: | N/A | 1 |

View File

@@ -0,0 +1,11 @@
# Home
Indicates if the user is part of a home group.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# Owned
Indicates if the user owns the server.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# Pending
Indicates if the server is pending approval.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# Protected
Indicates whether the account is protected.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,11 @@
# Restricted
Indicates if the user has restricted access.
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -3,6 +3,25 @@
## Fields
| Field | Type | Required | Description | Example |
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
| `id` | *Optional\<Integer>* | :heavy_minus_sign: | N/A | 220 |
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
| `id` | *long* | :heavy_check_mark: | User's unique ID. | 22526914 |
| `title` | *String* | :heavy_check_mark: | User's display name. | Plex User |
| `username` | *String* | :heavy_check_mark: | User's username. | zgfuc7krcqfimrmb9lsl5j |
| `email` | *String* | :heavy_check_mark: | User's email address. | zgfuc7krcqfimrmb9lsl5j@protonmail.com |
| `recommendationsPlaylistId` | *JsonNullable\<String>* | :heavy_minus_sign: | ID of the user's recommendation playlist. | |
| `thumb` | *String* | :heavy_check_mark: | URL to the user's avatar image. | https://plex.tv/users/3346028014e93acd/avatar?c=1731605021 |
| `protected_` | [Optional\<Protected>](../../models/operations/Protected.md) | :heavy_minus_sign: | N/A | 1 |
| `home` | [Optional\<Home>](../../models/operations/Home.md) | :heavy_minus_sign: | N/A | 1 |
| `allowTuners` | [Optional\<AllowTuners>](../../models/operations/AllowTuners.md) | :heavy_minus_sign: | N/A | 1 |
| `allowSync` | [Optional\<AllowSync>](../../models/operations/AllowSync.md) | :heavy_minus_sign: | N/A | 1 |
| `allowCameraUpload` | [Optional\<AllowCameraUpload>](../../models/operations/AllowCameraUpload.md) | :heavy_minus_sign: | N/A | 1 |
| `allowChannels` | [Optional\<AllowChannels>](../../models/operations/AllowChannels.md) | :heavy_minus_sign: | N/A | 1 |
| `allowSubtitleAdmin` | [Optional\<AllowSubtitleAdmin>](../../models/operations/AllowSubtitleAdmin.md) | :heavy_minus_sign: | N/A | 1 |
| `filterAll` | *JsonNullable\<String>* | :heavy_minus_sign: | Filters applied for all content. | |
| `filterMovies` | *JsonNullable\<String>* | :heavy_minus_sign: | Filters applied for movies. | |
| `filterMusic` | *JsonNullable\<String>* | :heavy_minus_sign: | Filters applied for music. | |
| `filterPhotos` | *JsonNullable\<String>* | :heavy_minus_sign: | Filters applied for photos. | |
| `filterTelevision` | *Optional\<String>* | :heavy_minus_sign: | Filters applied for television. | |
| `restricted` | [Optional\<Restricted>](../../models/operations/Restricted.md) | :heavy_minus_sign: | N/A | 1 |
| `server` | List\<[GetUsersServer](../../models/operations/GetUsersServer.md)> | :heavy_check_mark: | List of servers owned by the user. | |

View File

@@ -204,7 +204,6 @@ public class Application {
.requestBody(PostUsersSignInDataRequestBody.builder()
.login("username@email.com")
.password("password123")
.rememberMe(false)
.verificationCode("123456")
.build())
.build();

View File

@@ -80,7 +80,6 @@ package hello.world;
import dev.plexapi.sdk.PlexAPI;
import dev.plexapi.sdk.models.operations.GetRecentlyAddedRequest;
import dev.plexapi.sdk.models.operations.GetRecentlyAddedResponse;
import dev.plexapi.sdk.models.operations.IncludeMeta;
import dev.plexapi.sdk.models.operations.Type;
import java.lang.Exception;
@@ -96,9 +95,6 @@ public class Application {
.contentDirectoryID(470161L)
.type(Type.TvShow)
.sectionID(2L)
.includeMeta(IncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetRecentlyAddedResponse res = sdk.hubs().getRecentlyAdded()

View File

@@ -16,6 +16,8 @@ API Calls interacting with Plex Media Server Libraries
* [getLibraryItems](#getlibraryitems) - Get Library Items
* [getRefreshLibraryMetadata](#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
* [getSearchLibrary](#getsearchlibrary) - Search Library
* [getGenresLibrary](#getgenreslibrary) - Get Genres of library media
* [getCountriesLibrary](#getcountrieslibrary) - Get Countries of library media
* [getSearchAllLibraries](#getsearchalllibraries) - Search All Libraries
* [getMetaDataByRatingKey](#getmetadatabyratingkey) - Get Metadata by RatingKey
* [getMetadataChildren](#getmetadatachildren) - Get Items Children
@@ -89,7 +91,6 @@ import dev.plexapi.sdk.models.errors.GetRecentlyAddedLibraryBadRequest;
import dev.plexapi.sdk.models.errors.GetRecentlyAddedLibraryUnauthorized;
import dev.plexapi.sdk.models.operations.GetRecentlyAddedLibraryRequest;
import dev.plexapi.sdk.models.operations.GetRecentlyAddedLibraryResponse;
import dev.plexapi.sdk.models.operations.QueryParamIncludeMeta;
import dev.plexapi.sdk.models.operations.QueryParamType;
import java.lang.Exception;
import java.util.List;
@@ -119,9 +120,6 @@ public class Application {
16L,
17L))
.sectionID(2L)
.includeMeta(QueryParamIncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetRecentlyAddedLibraryResponse res = sdk.library().getRecentlyAddedLibrary()
@@ -381,11 +379,9 @@ package hello.world;
import dev.plexapi.sdk.PlexAPI;
import dev.plexapi.sdk.models.errors.GetLibraryItemsBadRequest;
import dev.plexapi.sdk.models.errors.GetLibraryItemsUnauthorized;
import dev.plexapi.sdk.models.operations.GetLibraryItemsQueryParamIncludeMeta;
import dev.plexapi.sdk.models.operations.GetLibraryItemsQueryParamType;
import dev.plexapi.sdk.models.operations.GetLibraryItemsRequest;
import dev.plexapi.sdk.models.operations.GetLibraryItemsResponse;
import dev.plexapi.sdk.models.operations.IncludeGuids;
import dev.plexapi.sdk.models.operations.Tag;
import java.lang.Exception;
@@ -400,11 +396,7 @@ public class Application {
GetLibraryItemsRequest req = GetLibraryItemsRequest.builder()
.tag(Tag.EDITION)
.sectionKey(9518)
.includeGuids(IncludeGuids.Enable)
.type(GetLibraryItemsQueryParamType.TvShow)
.includeMeta(GetLibraryItemsQueryParamIncludeMeta.Enable)
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetLibraryItemsResponse res = sdk.library().getLibraryItems()
@@ -563,6 +555,112 @@ public class Application {
| models/errors/GetSearchLibraryUnauthorized | 401 | application/json |
| models/errors/SDKError | 4XX, 5XX | \*/\* |
## getGenresLibrary
Retrieves a list of all the genres that are found for the media in this library.
### Example Usage
```java
package hello.world;
import dev.plexapi.sdk.PlexAPI;
import dev.plexapi.sdk.models.errors.GetGenresLibraryBadRequest;
import dev.plexapi.sdk.models.errors.GetGenresLibraryUnauthorized;
import dev.plexapi.sdk.models.operations.GetGenresLibraryResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetGenresLibraryBadRequest, GetGenresLibraryUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.accessToken("<YOUR_API_KEY_HERE>")
.build();
GetGenresLibraryResponse res = sdk.library().getGenresLibrary()
.sectionKey(9518)
.call();
if (res.object().isPresent()) {
// handle response
}
}
}
```
### Parameters
| Parameter | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `sectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
### Response
**[GetGenresLibraryResponse](../../models/operations/GetGenresLibraryResponse.md)**
### Errors
| Error Type | Status Code | Content Type |
| ------------------------------------------ | ------------------------------------------ | ------------------------------------------ |
| models/errors/GetGenresLibraryBadRequest | 400 | application/json |
| models/errors/GetGenresLibraryUnauthorized | 401 | application/json |
| models/errors/SDKError | 4XX, 5XX | \*/\* |
## getCountriesLibrary
Retrieves a list of all the countries that are found for the media in this library.
### Example Usage
```java
package hello.world;
import dev.plexapi.sdk.PlexAPI;
import dev.plexapi.sdk.models.errors.GetCountriesLibraryBadRequest;
import dev.plexapi.sdk.models.errors.GetCountriesLibraryUnauthorized;
import dev.plexapi.sdk.models.operations.GetCountriesLibraryResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetCountriesLibraryBadRequest, GetCountriesLibraryUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.accessToken("<YOUR_API_KEY_HERE>")
.build();
GetCountriesLibraryResponse res = sdk.library().getCountriesLibrary()
.sectionKey(9518)
.call();
if (res.object().isPresent()) {
// handle response
}
}
}
```
### Parameters
| Parameter | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `sectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
### Response
**[GetCountriesLibraryResponse](../../models/operations/GetCountriesLibraryResponse.md)**
### Errors
| Error Type | Status Code | Content Type |
| --------------------------------------------- | --------------------------------------------- | --------------------------------------------- |
| models/errors/GetCountriesLibraryBadRequest | 400 | application/json |
| models/errors/GetCountriesLibraryUnauthorized | 401 | application/json |
| models/errors/SDKError | 4XX, 5XX | \*/\* |
## getSearchAllLibraries
Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type.
@@ -578,8 +676,6 @@ import dev.plexapi.sdk.models.errors.GetSearchAllLibrariesBadRequest;
import dev.plexapi.sdk.models.errors.GetSearchAllLibrariesUnauthorized;
import dev.plexapi.sdk.models.operations.GetSearchAllLibrariesRequest;
import dev.plexapi.sdk.models.operations.GetSearchAllLibrariesResponse;
import dev.plexapi.sdk.models.operations.QueryParamIncludeCollections;
import dev.plexapi.sdk.models.operations.QueryParamIncludeExternalMedia;
import dev.plexapi.sdk.models.operations.SearchTypes;
import java.lang.Exception;
import java.util.List;
@@ -597,8 +693,6 @@ public class Application {
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.searchTypes(List.of(
SearchTypes.PEOPLE))
.includeCollections(QueryParamIncludeCollections.Enable)
.includeExternalMedia(QueryParamIncludeExternalMedia.Enable)
.build();
GetSearchAllLibrariesResponse res = sdk.library().getSearchAllLibraries()

View File

@@ -299,7 +299,6 @@ public class Application {
GetPinRequest req = GetPinRequest.builder()
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.strong(false)
.clientName("Plex for Roku")
.deviceNickname("Roku 3")
.clientVersion("2.4.1")

77
docs/sdks/users/README.md Normal file
View File

@@ -0,0 +1,77 @@
# Users
(*users()*)
## Overview
### Available Operations
* [getUsers](#getusers) - Get list of all connected users
## getUsers
Get list of all users that are friends and have library access with the provided Plex authentication token
### Example Usage
```java
package hello.world;
import dev.plexapi.sdk.PlexAPI;
import dev.plexapi.sdk.models.errors.GetUsersBadRequest;
import dev.plexapi.sdk.models.errors.GetUsersUnauthorized;
import dev.plexapi.sdk.models.operations.GetUsersRequest;
import dev.plexapi.sdk.models.operations.GetUsersResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GetUsersBadRequest, GetUsersUnauthorized, Exception {
PlexAPI sdk = PlexAPI.builder()
.build();
GetUsersRequest req = GetUsersRequest.builder()
.clientID("3381b62b-9ab7-4e37-827b-203e9809eb58")
.xPlexToken("CV5xoxjTpFKUzBTShsaf")
.clientName("Plex for Roku")
.deviceNickname("Roku 3")
.deviceName("Chrome")
.deviceScreenResolution("1487x1165,2560x1440")
.clientVersion("2.4.1")
.platform("Roku")
.clientFeatures("external-media,indirect-media,hub-style-list")
.model("4200X")
.xPlexSessionId("97e136ef-4ddd-4ff3-89a7-a5820c96c2ca")
.xPlexLanguage("en")
.platformVersion("4.3 build 1057")
.build();
GetUsersResponse res = sdk.users().getUsers()
.request(req)
.call();
if (res.body().isPresent()) {
// handle response
}
}
}
```
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- |
| `request` | [GetUsersRequest](../../models/operations/GetUsersRequest.md) | :heavy_check_mark: | The request object to use for the request. |
| `serverURL` | *String* | :heavy_minus_sign: | An optional server URL to use. |
### Response
**[GetUsersResponse](../../models/operations/GetUsersResponse.md)**
### Errors
| Error Type | Status Code | Content Type |
| ---------------------------------- | ---------------------------------- | ---------------------------------- |
| models/errors/GetUsersBadRequest | 400 | application/json |
| models/errors/GetUsersUnauthorized | 401 | application/json |
| models/errors/SDKError | 4XX, 5XX | \*/\* |

View File

@@ -38,8 +38,6 @@ public class Application {
GetWatchListRequest req = GetWatchListRequest.builder()
.filter(Filter.AVAILABLE)
.xPlexToken("CV5xoxjTpFKUzBTShsaf")
.xPlexContainerStart(0)
.xPlexContainerSize(50)
.build();
GetWatchListResponse res = sdk.watchlist().getWatchList()

View File

@@ -9,8 +9,12 @@ import dev.plexapi.sdk.models.errors.DeleteLibraryBadRequest;
import dev.plexapi.sdk.models.errors.DeleteLibraryUnauthorized;
import dev.plexapi.sdk.models.errors.GetAllLibrariesBadRequest;
import dev.plexapi.sdk.models.errors.GetAllLibrariesUnauthorized;
import dev.plexapi.sdk.models.errors.GetCountriesLibraryBadRequest;
import dev.plexapi.sdk.models.errors.GetCountriesLibraryUnauthorized;
import dev.plexapi.sdk.models.errors.GetFileHashBadRequest;
import dev.plexapi.sdk.models.errors.GetFileHashUnauthorized;
import dev.plexapi.sdk.models.errors.GetGenresLibraryBadRequest;
import dev.plexapi.sdk.models.errors.GetGenresLibraryUnauthorized;
import dev.plexapi.sdk.models.errors.GetLibraryDetailsBadRequest;
import dev.plexapi.sdk.models.errors.GetLibraryDetailsUnauthorized;
import dev.plexapi.sdk.models.errors.GetLibraryItemsBadRequest;
@@ -39,9 +43,17 @@ import dev.plexapi.sdk.models.operations.Force;
import dev.plexapi.sdk.models.operations.GetAllLibrariesRequestBuilder;
import dev.plexapi.sdk.models.operations.GetAllLibrariesResponse;
import dev.plexapi.sdk.models.operations.GetAllLibrariesResponseBody;
import dev.plexapi.sdk.models.operations.GetCountriesLibraryRequest;
import dev.plexapi.sdk.models.operations.GetCountriesLibraryRequestBuilder;
import dev.plexapi.sdk.models.operations.GetCountriesLibraryResponse;
import dev.plexapi.sdk.models.operations.GetCountriesLibraryResponseBody;
import dev.plexapi.sdk.models.operations.GetFileHashRequest;
import dev.plexapi.sdk.models.operations.GetFileHashRequestBuilder;
import dev.plexapi.sdk.models.operations.GetFileHashResponse;
import dev.plexapi.sdk.models.operations.GetGenresLibraryRequest;
import dev.plexapi.sdk.models.operations.GetGenresLibraryRequestBuilder;
import dev.plexapi.sdk.models.operations.GetGenresLibraryResponse;
import dev.plexapi.sdk.models.operations.GetGenresLibraryResponseBody;
import dev.plexapi.sdk.models.operations.GetLibraryDetailsRequest;
import dev.plexapi.sdk.models.operations.GetLibraryDetailsRequestBuilder;
import dev.plexapi.sdk.models.operations.GetLibraryDetailsResponse;
@@ -113,6 +125,8 @@ public class Library implements
MethodCallGetLibraryItems,
MethodCallGetRefreshLibraryMetadata,
MethodCallGetSearchLibrary,
MethodCallGetGenresLibrary,
MethodCallGetCountriesLibrary,
MethodCallGetSearchAllLibraries,
MethodCallGetMetaDataByRatingKey,
MethodCallGetMetadataChildren,
@@ -1697,6 +1711,344 @@ public class Library implements
/**
* Get Genres of library media
* Retrieves a list of all the genres that are found for the media in this library.
*
* @return The call builder
*/
public GetGenresLibraryRequestBuilder getGenresLibrary() {
return new GetGenresLibraryRequestBuilder(this);
}
/**
* Get Genres of library media
* Retrieves a list of all the genres that are found for the media in this library.
*
* @param sectionKey The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
* @return The response from the API call
* @throws Exception if the API call fails
*/
public GetGenresLibraryResponse getGenresLibrary(
int sectionKey) throws Exception {
GetGenresLibraryRequest request =
GetGenresLibraryRequest
.builder()
.sectionKey(sectionKey)
.build();
String _baseUrl = Utils.templateUrl(
this.sdkConfiguration.serverUrl, this.sdkConfiguration.getServerVariableDefaults());
String _url = Utils.generateURL(
GetGenresLibraryRequest.class,
_baseUrl,
"/library/sections/{sectionKey}/genre",
request, null);
HTTPRequest _req = new HTTPRequest(_url, "GET");
_req.addHeader("Accept", "application/json")
.addHeader("user-agent",
SDKConfiguration.USER_AGENT);
Optional<SecuritySource> _hookSecuritySource = this.sdkConfiguration.securitySource();
Utils.configureSecurity(_req,
this.sdkConfiguration.securitySource.getSecurity());
HTTPClient _client = this.sdkConfiguration.defaultClient;
HttpRequest _r =
sdkConfiguration.hooks()
.beforeRequest(
new BeforeRequestContextImpl(
"get-genres-library",
Optional.of(List.of()),
_hookSecuritySource),
_req.build());
HttpResponse<InputStream> _httpRes;
try {
_httpRes = _client.send(_r);
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400", "401", "404", "4XX", "5XX")) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-genres-library",
Optional.of(List.of()),
_hookSecuritySource),
Optional.of(_httpRes),
Optional.empty());
} else {
_httpRes = sdkConfiguration.hooks()
.afterSuccess(
new AfterSuccessContextImpl(
"get-genres-library",
Optional.of(List.of()),
_hookSecuritySource),
_httpRes);
}
} catch (Exception _e) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-genres-library",
Optional.of(List.of()),
_hookSecuritySource),
Optional.empty(),
Optional.of(_e));
}
String _contentType = _httpRes
.headers()
.firstValue("Content-Type")
.orElse("application/octet-stream");
GetGenresLibraryResponse.Builder _resBuilder =
GetGenresLibraryResponse
.builder()
.contentType(_contentType)
.statusCode(_httpRes.statusCode())
.rawResponse(_httpRes);
GetGenresLibraryResponse _res = _resBuilder.build();
if (Utils.statusCodeMatches(_httpRes.statusCode(), "200")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetGenresLibraryResponseBody _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetGenresLibraryResponseBody>() {});
_res.withObject(Optional.ofNullable(_out));
return _res;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetGenresLibraryBadRequest _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetGenresLibraryBadRequest>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "401")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetGenresLibraryUnauthorized _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetGenresLibraryUnauthorized>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "404", "4XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "5XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected status code received: " + _httpRes.statusCode(),
Utils.extractByteArrayFromBody(_httpRes));
}
/**
* Get Countries of library media
* Retrieves a list of all the countries that are found for the media in this library.
*
* @return The call builder
*/
public GetCountriesLibraryRequestBuilder getCountriesLibrary() {
return new GetCountriesLibraryRequestBuilder(this);
}
/**
* Get Countries of library media
* Retrieves a list of all the countries that are found for the media in this library.
*
* @param sectionKey The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
* @return The response from the API call
* @throws Exception if the API call fails
*/
public GetCountriesLibraryResponse getCountriesLibrary(
int sectionKey) throws Exception {
GetCountriesLibraryRequest request =
GetCountriesLibraryRequest
.builder()
.sectionKey(sectionKey)
.build();
String _baseUrl = Utils.templateUrl(
this.sdkConfiguration.serverUrl, this.sdkConfiguration.getServerVariableDefaults());
String _url = Utils.generateURL(
GetCountriesLibraryRequest.class,
_baseUrl,
"/library/sections/{sectionKey}/country",
request, null);
HTTPRequest _req = new HTTPRequest(_url, "GET");
_req.addHeader("Accept", "application/json")
.addHeader("user-agent",
SDKConfiguration.USER_AGENT);
Optional<SecuritySource> _hookSecuritySource = this.sdkConfiguration.securitySource();
Utils.configureSecurity(_req,
this.sdkConfiguration.securitySource.getSecurity());
HTTPClient _client = this.sdkConfiguration.defaultClient;
HttpRequest _r =
sdkConfiguration.hooks()
.beforeRequest(
new BeforeRequestContextImpl(
"get-countries-library",
Optional.of(List.of()),
_hookSecuritySource),
_req.build());
HttpResponse<InputStream> _httpRes;
try {
_httpRes = _client.send(_r);
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400", "401", "404", "4XX", "5XX")) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-countries-library",
Optional.of(List.of()),
_hookSecuritySource),
Optional.of(_httpRes),
Optional.empty());
} else {
_httpRes = sdkConfiguration.hooks()
.afterSuccess(
new AfterSuccessContextImpl(
"get-countries-library",
Optional.of(List.of()),
_hookSecuritySource),
_httpRes);
}
} catch (Exception _e) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-countries-library",
Optional.of(List.of()),
_hookSecuritySource),
Optional.empty(),
Optional.of(_e));
}
String _contentType = _httpRes
.headers()
.firstValue("Content-Type")
.orElse("application/octet-stream");
GetCountriesLibraryResponse.Builder _resBuilder =
GetCountriesLibraryResponse
.builder()
.contentType(_contentType)
.statusCode(_httpRes.statusCode())
.rawResponse(_httpRes);
GetCountriesLibraryResponse _res = _resBuilder.build();
if (Utils.statusCodeMatches(_httpRes.statusCode(), "200")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetCountriesLibraryResponseBody _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetCountriesLibraryResponseBody>() {});
_res.withObject(Optional.ofNullable(_out));
return _res;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetCountriesLibraryBadRequest _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetCountriesLibraryBadRequest>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "401")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetCountriesLibraryUnauthorized _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetCountriesLibraryUnauthorized>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "404", "4XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "5XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected status code received: " + _httpRes.statusCode(),
Utils.extractByteArrayFromBody(_httpRes));
}
/**
* Search All Libraries
* Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type.

View File

@@ -161,6 +161,8 @@ public class PlexAPI {
*/
private final Updater updater;
private final Users users;
/**
* Operations against the Plex Media Server System.
*
@@ -299,6 +301,10 @@ public class PlexAPI {
return updater;
}
public Users users() {
return users;
}
private final SDKConfiguration sdkConfiguration;
/**
@@ -518,5 +524,6 @@ public class PlexAPI {
this.statistics = new Statistics(sdkConfiguration);
this.sessions = new Sessions(sdkConfiguration);
this.updater = new Updater(sdkConfiguration);
this.users = new Users(sdkConfiguration);
this.sdkConfiguration.initialize();
}}

View File

@@ -43,8 +43,8 @@ class SDKConfiguration {
} };
private static final String LANGUAGE = "java";
public static final String OPENAPI_DOC_VERSION = "0.0.3";
public static final String SDK_VERSION = "0.11.3";
public static final String GEN_VERSION = "2.495.1";
public static final String SDK_VERSION = "0.11.5";
public static final String GEN_VERSION = "2.503.2";
private static final String BASE_PACKAGE = "dev.plexapi.sdk";
public static final String USER_AGENT =
String.format("speakeasy-sdk/%s %s %s %s %s",

View File

@@ -526,7 +526,7 @@ public class Updater implements
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "500", "5XX")) {
if (Utils.statusCodeMatches(_httpRes.statusCode(), "4XX")) {
// no content
throw new SDKError(
_httpRes,
@@ -534,7 +534,7 @@ public class Updater implements
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "4XX")) {
if (Utils.statusCodeMatches(_httpRes.statusCode(), "500", "5XX")) {
// no content
throw new SDKError(
_httpRes,

View File

@@ -0,0 +1,212 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk;
import com.fasterxml.jackson.core.type.TypeReference;
import dev.plexapi.sdk.models.errors.GetUsersBadRequest;
import dev.plexapi.sdk.models.errors.GetUsersUnauthorized;
import dev.plexapi.sdk.models.errors.SDKError;
import dev.plexapi.sdk.models.operations.GetUsersRequest;
import dev.plexapi.sdk.models.operations.GetUsersRequestBuilder;
import dev.plexapi.sdk.models.operations.GetUsersResponse;
import dev.plexapi.sdk.models.operations.SDKMethodInterfaces.*;
import dev.plexapi.sdk.utils.HTTPClient;
import dev.plexapi.sdk.utils.HTTPRequest;
import dev.plexapi.sdk.utils.Hook.AfterErrorContextImpl;
import dev.plexapi.sdk.utils.Hook.AfterSuccessContextImpl;
import dev.plexapi.sdk.utils.Hook.BeforeRequestContextImpl;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Exception;
import java.lang.String;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Optional;
public class Users implements
MethodCallGetUsers {
/**
* GET_USERS_SERVERS contains the list of server urls available to the SDK.
*/
public static final String[] GET_USERS_SERVERS = {
"https://plex.tv/api",
};
private final SDKConfiguration sdkConfiguration;
Users(SDKConfiguration sdkConfiguration) {
this.sdkConfiguration = sdkConfiguration;
}
/**
* Get list of all connected users
* Get list of all users that are friends and have library access with the provided Plex authentication token
* @return The call builder
*/
public GetUsersRequestBuilder getUsers() {
return new GetUsersRequestBuilder(this);
}
/**
* Get list of all connected users
* Get list of all users that are friends and have library access with the provided Plex authentication token
* @param request The request object containing all of the parameters for the API call.
* @return The response from the API call
* @throws Exception if the API call fails
*/
public GetUsersResponse getUsers(
GetUsersRequest request) throws Exception {
return getUsers(request, Optional.empty());
}
/**
* Get list of all connected users
* Get list of all users that are friends and have library access with the provided Plex authentication token
* @param request The request object containing all of the parameters for the API call.
* @param serverURL Overrides the server URL.
* @return The response from the API call
* @throws Exception if the API call fails
*/
public GetUsersResponse getUsers(
GetUsersRequest request,
Optional<String> serverURL) throws Exception {
String _baseUrl = Utils.templateUrl(GET_USERS_SERVERS[0], new HashMap<String, String>());
if (serverURL.isPresent() && !serverURL.get().isBlank()) {
_baseUrl = serverURL.get();
}
String _url = Utils.generateURL(
_baseUrl,
"/users");
HTTPRequest _req = new HTTPRequest(_url, "GET");
_req.addHeader("Accept", "application/xml")
.addHeader("user-agent",
SDKConfiguration.USER_AGENT);
_req.addHeaders(Utils.getHeadersFromMetadata(request, null));
Optional<SecuritySource> _hookSecuritySource = Optional.empty();
HTTPClient _client = this.sdkConfiguration.defaultClient;
HttpRequest _r =
sdkConfiguration.hooks()
.beforeRequest(
new BeforeRequestContextImpl(
"get-users",
Optional.of(List.of()),
_hookSecuritySource),
_req.build());
HttpResponse<InputStream> _httpRes;
try {
_httpRes = _client.send(_r);
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400", "401", "4XX", "5XX")) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-users",
Optional.of(List.of()),
_hookSecuritySource),
Optional.of(_httpRes),
Optional.empty());
} else {
_httpRes = sdkConfiguration.hooks()
.afterSuccess(
new AfterSuccessContextImpl(
"get-users",
Optional.of(List.of()),
_hookSecuritySource),
_httpRes);
}
} catch (Exception _e) {
_httpRes = sdkConfiguration.hooks()
.afterError(
new AfterErrorContextImpl(
"get-users",
Optional.of(List.of()),
_hookSecuritySource),
Optional.empty(),
Optional.of(_e));
}
String _contentType = _httpRes
.headers()
.firstValue("Content-Type")
.orElse("application/octet-stream");
GetUsersResponse.Builder _resBuilder =
GetUsersResponse
.builder()
.contentType(_contentType)
.statusCode(_httpRes.statusCode())
.rawResponse(_httpRes);
GetUsersResponse _res = _resBuilder.build();
if (Utils.statusCodeMatches(_httpRes.statusCode(), "200")) {
if (Utils.contentTypeMatches(_contentType, "application/xml")) {
return _res;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "400")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetUsersBadRequest _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetUsersBadRequest>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "401")) {
if (Utils.contentTypeMatches(_contentType, "application/json")) {
GetUsersUnauthorized _out = Utils.mapper().readValue(
Utils.toUtf8AndClose(_httpRes.body()),
new TypeReference<GetUsersUnauthorized>() {});
_out.withRawResponse(Optional.ofNullable(_httpRes));
throw _out;
} else {
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected content-type received: " + _contentType,
Utils.extractByteArrayFromBody(_httpRes));
}
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "4XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
if (Utils.statusCodeMatches(_httpRes.statusCode(), "5XX")) {
// no content
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"API error occurred",
Utils.extractByteArrayFromBody(_httpRes));
}
throw new SDKError(
_httpRes,
_httpRes.statusCode(),
"Unexpected status code received: " + _httpRes.statusCode(),
Utils.extractByteArrayFromBody(_httpRes));
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetCountriesLibraryBadRequest - Bad Request - A parameter was not specified, or was specified incorrectly.
*/
@SuppressWarnings("serial")
public class GetCountriesLibraryBadRequest extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetCountriesLibraryErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetCountriesLibraryBadRequest(
@JsonProperty("errors") Optional<? extends List<GetCountriesLibraryErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetCountriesLibraryBadRequest() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetCountriesLibraryErrors>> errors(){
return (Optional<List<GetCountriesLibraryErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryBadRequest withErrors(List<GetCountriesLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetCountriesLibraryBadRequest withErrors(Optional<? extends List<GetCountriesLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetCountriesLibraryBadRequest withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetCountriesLibraryBadRequest withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryBadRequest other = (GetCountriesLibraryBadRequest) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryBadRequest.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetCountriesLibraryErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetCountriesLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetCountriesLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetCountriesLibraryBadRequest build() {
return new GetCountriesLibraryBadRequest(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetCountriesLibraryErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetCountriesLibraryErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetCountriesLibraryErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetCountriesLibraryErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetCountriesLibraryErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetCountriesLibraryErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetCountriesLibraryErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetCountriesLibraryErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryErrors other = (GetCountriesLibraryErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetCountriesLibraryErrors build() {
return new GetCountriesLibraryErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetCountriesLibraryLibraryErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetCountriesLibraryLibraryErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetCountriesLibraryLibraryErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryLibraryErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetCountriesLibraryLibraryErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetCountriesLibraryLibraryErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetCountriesLibraryLibraryErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetCountriesLibraryLibraryErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetCountriesLibraryLibraryErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryLibraryErrors other = (GetCountriesLibraryLibraryErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryLibraryErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetCountriesLibraryLibraryErrors build() {
return new GetCountriesLibraryLibraryErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetCountriesLibraryUnauthorized - Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
*/
@SuppressWarnings("serial")
public class GetCountriesLibraryUnauthorized extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetCountriesLibraryLibraryErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetCountriesLibraryUnauthorized(
@JsonProperty("errors") Optional<? extends List<GetCountriesLibraryLibraryErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetCountriesLibraryUnauthorized() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetCountriesLibraryLibraryErrors>> errors(){
return (Optional<List<GetCountriesLibraryLibraryErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryUnauthorized withErrors(List<GetCountriesLibraryLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetCountriesLibraryUnauthorized withErrors(Optional<? extends List<GetCountriesLibraryLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetCountriesLibraryUnauthorized withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetCountriesLibraryUnauthorized withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryUnauthorized other = (GetCountriesLibraryUnauthorized) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryUnauthorized.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetCountriesLibraryLibraryErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetCountriesLibraryLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetCountriesLibraryLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetCountriesLibraryUnauthorized build() {
return new GetCountriesLibraryUnauthorized(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetGenresLibraryBadRequest - Bad Request - A parameter was not specified, or was specified incorrectly.
*/
@SuppressWarnings("serial")
public class GetGenresLibraryBadRequest extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetGenresLibraryErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetGenresLibraryBadRequest(
@JsonProperty("errors") Optional<? extends List<GetGenresLibraryErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetGenresLibraryBadRequest() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetGenresLibraryErrors>> errors(){
return (Optional<List<GetGenresLibraryErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryBadRequest withErrors(List<GetGenresLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetGenresLibraryBadRequest withErrors(Optional<? extends List<GetGenresLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetGenresLibraryBadRequest withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetGenresLibraryBadRequest withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryBadRequest other = (GetGenresLibraryBadRequest) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryBadRequest.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetGenresLibraryErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetGenresLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetGenresLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetGenresLibraryBadRequest build() {
return new GetGenresLibraryBadRequest(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetGenresLibraryErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetGenresLibraryErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetGenresLibraryErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetGenresLibraryErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetGenresLibraryErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetGenresLibraryErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetGenresLibraryErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetGenresLibraryErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryErrors other = (GetGenresLibraryErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetGenresLibraryErrors build() {
return new GetGenresLibraryErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetGenresLibraryLibraryErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetGenresLibraryLibraryErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetGenresLibraryLibraryErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryLibraryErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetGenresLibraryLibraryErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetGenresLibraryLibraryErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetGenresLibraryLibraryErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetGenresLibraryLibraryErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetGenresLibraryLibraryErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryLibraryErrors other = (GetGenresLibraryLibraryErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryLibraryErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetGenresLibraryLibraryErrors build() {
return new GetGenresLibraryLibraryErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetGenresLibraryUnauthorized - Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
*/
@SuppressWarnings("serial")
public class GetGenresLibraryUnauthorized extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetGenresLibraryLibraryErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetGenresLibraryUnauthorized(
@JsonProperty("errors") Optional<? extends List<GetGenresLibraryLibraryErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetGenresLibraryUnauthorized() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetGenresLibraryLibraryErrors>> errors(){
return (Optional<List<GetGenresLibraryLibraryErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryUnauthorized withErrors(List<GetGenresLibraryLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetGenresLibraryUnauthorized withErrors(Optional<? extends List<GetGenresLibraryLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetGenresLibraryUnauthorized withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetGenresLibraryUnauthorized withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryUnauthorized other = (GetGenresLibraryUnauthorized) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryUnauthorized.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetGenresLibraryLibraryErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetGenresLibraryLibraryErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetGenresLibraryLibraryErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetGenresLibraryUnauthorized build() {
return new GetGenresLibraryUnauthorized(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetUsersBadRequest - Bad Request - A parameter was not specified, or was specified incorrectly.
*/
@SuppressWarnings("serial")
public class GetUsersBadRequest extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetUsersErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetUsersBadRequest(
@JsonProperty("errors") Optional<? extends List<GetUsersErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetUsersBadRequest() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetUsersErrors>> errors(){
return (Optional<List<GetUsersErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetUsersBadRequest withErrors(List<GetUsersErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetUsersBadRequest withErrors(Optional<? extends List<GetUsersErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetUsersBadRequest withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetUsersBadRequest withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersBadRequest other = (GetUsersBadRequest) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetUsersBadRequest.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetUsersErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetUsersErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetUsersErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetUsersBadRequest build() {
return new GetUsersBadRequest(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetUsersErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetUsersErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetUsersErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetUsersErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetUsersErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetUsersErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetUsersErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetUsersErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetUsersErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersErrors other = (GetUsersErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetUsersErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetUsersErrors build() {
return new GetUsersErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,173 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
/**
* GetUsersUnauthorized - Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
*/
@SuppressWarnings("serial")
public class GetUsersUnauthorized extends RuntimeException {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("errors")
private Optional<? extends List<GetUsersUsersErrors>> errors;
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("RawResponse")
private Optional<? extends HttpResponse<InputStream>> rawResponse;
@JsonCreator
public GetUsersUnauthorized(
@JsonProperty("errors") Optional<? extends List<GetUsersUsersErrors>> errors,
@JsonProperty("RawResponse") Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(errors, "errors");
Utils.checkNotNull(rawResponse, "rawResponse");
this.errors = errors;
this.rawResponse = rawResponse;
}
public GetUsersUnauthorized() {
this(Optional.empty(), Optional.empty());
}
@SuppressWarnings("unchecked")
public Optional<List<GetUsersUsersErrors>> errors(){
return (Optional<List<GetUsersUsersErrors>>) errors;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@SuppressWarnings("unchecked")
public Optional<HttpResponse<InputStream>> rawResponse(){
return (Optional<HttpResponse<InputStream>>) rawResponse;
}
public final static Builder builder() {
return new Builder();
}
public GetUsersUnauthorized withErrors(List<GetUsersUsersErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public GetUsersUnauthorized withErrors(Optional<? extends List<GetUsersUsersErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetUsersUnauthorized withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetUsersUnauthorized withRawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersUnauthorized other = (GetUsersUnauthorized) o;
return
Objects.deepEquals(this.errors, other.errors) &&
Objects.deepEquals(this.rawResponse, other.rawResponse);
}
@Override
public int hashCode() {
return java.util.Objects.hash(
errors,
rawResponse);
}
@Override
public String toString() {
return Utils.toString(GetUsersUnauthorized.class,
"errors", errors,
"rawResponse", rawResponse);
}
public final static class Builder {
private Optional<? extends List<GetUsersUsersErrors>> errors = Optional.empty();
private Optional<? extends HttpResponse<InputStream>> rawResponse;
private Builder() {
// force use of static builder() method
}
public Builder errors(List<GetUsersUsersErrors> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = Optional.ofNullable(errors);
return this;
}
public Builder errors(Optional<? extends List<GetUsersUsersErrors>> errors) {
Utils.checkNotNull(errors, "errors");
this.errors = errors;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = Optional.ofNullable(rawResponse);
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(Optional<? extends HttpResponse<InputStream>> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetUsersUnauthorized build() {
return new GetUsersUnauthorized(
errors,
rawResponse);
}
}
}

View File

@@ -0,0 +1,194 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.errors;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetUsersUsersErrors {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("code")
private Optional<Integer> code;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("message")
private Optional<String> message;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
private Optional<Integer> status;
@JsonCreator
public GetUsersUsersErrors(
@JsonProperty("code") Optional<Integer> code,
@JsonProperty("message") Optional<String> message,
@JsonProperty("status") Optional<Integer> status) {
Utils.checkNotNull(code, "code");
Utils.checkNotNull(message, "message");
Utils.checkNotNull(status, "status");
this.code = code;
this.message = message;
this.status = status;
}
public GetUsersUsersErrors() {
this(Optional.empty(), Optional.empty(), Optional.empty());
}
@JsonIgnore
public Optional<Integer> code() {
return code;
}
@JsonIgnore
public Optional<String> message() {
return message;
}
@JsonIgnore
public Optional<Integer> status() {
return status;
}
public final static Builder builder() {
return new Builder();
}
public GetUsersUsersErrors withCode(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public GetUsersUsersErrors withCode(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public GetUsersUsersErrors withMessage(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public GetUsersUsersErrors withMessage(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public GetUsersUsersErrors withStatus(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public GetUsersUsersErrors withStatus(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersUsersErrors other = (GetUsersUsersErrors) o;
return
Objects.deepEquals(this.code, other.code) &&
Objects.deepEquals(this.message, other.message) &&
Objects.deepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Objects.hash(
code,
message,
status);
}
@Override
public String toString() {
return Utils.toString(GetUsersUsersErrors.class,
"code", code,
"message", message,
"status", status);
}
public final static class Builder {
private Optional<Integer> code = Optional.empty();
private Optional<String> message = Optional.empty();
private Optional<Integer> status = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder code(int code) {
Utils.checkNotNull(code, "code");
this.code = Optional.ofNullable(code);
return this;
}
public Builder code(Optional<Integer> code) {
Utils.checkNotNull(code, "code");
this.code = code;
return this;
}
public Builder message(String message) {
Utils.checkNotNull(message, "message");
this.message = Optional.ofNullable(message);
return this;
}
public Builder message(Optional<String> message) {
Utils.checkNotNull(message, "message");
this.message = message;
return this;
}
public Builder status(int status) {
Utils.checkNotNull(status, "status");
this.status = Optional.ofNullable(status);
return this;
}
public Builder status(Optional<Integer> status) {
Utils.checkNotNull(status, "status");
this.status = status;
return this;
}
public GetUsersUsersErrors build() {
return new GetUsersUsersErrors(
code,
message,
status);
}
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllLibraries - Indicates if the user has access to all libraries.
*/
public enum AllLibraries {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllLibraries(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllLibraries> fromValue(int value) {
for (AllLibraries o: AllLibraries.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllowCameraUpload - Indicates if the user is allowed to upload from a camera.
*/
public enum AllowCameraUpload {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllowCameraUpload(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllowCameraUpload> fromValue(int value) {
for (AllowCameraUpload o: AllowCameraUpload.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllowChannels - Indicates if the user has access to channels.
*/
public enum AllowChannels {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllowChannels(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllowChannels> fromValue(int value) {
for (AllowChannels o: AllowChannels.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllowSubtitleAdmin - Indicates if the user can manage subtitles.
*/
public enum AllowSubtitleAdmin {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllowSubtitleAdmin(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllowSubtitleAdmin> fromValue(int value) {
for (AllowSubtitleAdmin o: AllowSubtitleAdmin.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllowSync - Indicates if the user is allowed to sync media.
*/
public enum AllowSync {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllowSync(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllowSync> fromValue(int value) {
for (AllowSync o: AllowSync.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* AllowTuners - Indicates if the user is allowed to use tuners.
*/
public enum AllowTuners {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private AllowTuners(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<AllowTuners> fromValue(int value) {
for (AllowTuners o: AllowTuners.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,147 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
public class GetCountriesLibraryDirectory {
@JsonProperty("fastKey")
private String fastKey;
@JsonProperty("key")
private String key;
@JsonProperty("title")
private String title;
@JsonCreator
public GetCountriesLibraryDirectory(
@JsonProperty("fastKey") String fastKey,
@JsonProperty("key") String key,
@JsonProperty("title") String title) {
Utils.checkNotNull(fastKey, "fastKey");
Utils.checkNotNull(key, "key");
Utils.checkNotNull(title, "title");
this.fastKey = fastKey;
this.key = key;
this.title = title;
}
@JsonIgnore
public String fastKey() {
return fastKey;
}
@JsonIgnore
public String key() {
return key;
}
@JsonIgnore
public String title() {
return title;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryDirectory withFastKey(String fastKey) {
Utils.checkNotNull(fastKey, "fastKey");
this.fastKey = fastKey;
return this;
}
public GetCountriesLibraryDirectory withKey(String key) {
Utils.checkNotNull(key, "key");
this.key = key;
return this;
}
public GetCountriesLibraryDirectory withTitle(String title) {
Utils.checkNotNull(title, "title");
this.title = title;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryDirectory other = (GetCountriesLibraryDirectory) o;
return
Objects.deepEquals(this.fastKey, other.fastKey) &&
Objects.deepEquals(this.key, other.key) &&
Objects.deepEquals(this.title, other.title);
}
@Override
public int hashCode() {
return Objects.hash(
fastKey,
key,
title);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryDirectory.class,
"fastKey", fastKey,
"key", key,
"title", title);
}
public final static class Builder {
private String fastKey;
private String key;
private String title;
private Builder() {
// force use of static builder() method
}
public Builder fastKey(String fastKey) {
Utils.checkNotNull(fastKey, "fastKey");
this.fastKey = fastKey;
return this;
}
public Builder key(String key) {
Utils.checkNotNull(key, "key");
this.key = key;
return this;
}
public Builder title(String title) {
Utils.checkNotNull(title, "title");
this.title = title;
return this;
}
public GetCountriesLibraryDirectory build() {
return new GetCountriesLibraryDirectory(
fastKey,
key,
title);
}
}
}

View File

@@ -0,0 +1,560 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Boolean;
import java.lang.Double;
import java.lang.Integer;
import java.lang.Long;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
public class GetCountriesLibraryMediaContainer {
@JsonProperty("size")
private double size;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("offset")
private Optional<Integer> offset;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("totalSize")
private Optional<Integer> totalSize;
@JsonProperty("identifier")
private String identifier;
@JsonProperty("allowSync")
private boolean allowSync;
@JsonProperty("art")
private String art;
@JsonProperty("content")
private String content;
@JsonProperty("mediaTagPrefix")
private String mediaTagPrefix;
@JsonProperty("mediaTagVersion")
private long mediaTagVersion;
@JsonProperty("nocache")
private boolean nocache;
@JsonProperty("thumb")
private String thumb;
@JsonProperty("title1")
private String title1;
@JsonProperty("title2")
private String title2;
@JsonProperty("viewGroup")
private String viewGroup;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("Directory")
private Optional<? extends List<GetCountriesLibraryDirectory>> directory;
@JsonCreator
public GetCountriesLibraryMediaContainer(
@JsonProperty("size") double size,
@JsonProperty("offset") Optional<Integer> offset,
@JsonProperty("totalSize") Optional<Integer> totalSize,
@JsonProperty("identifier") String identifier,
@JsonProperty("allowSync") boolean allowSync,
@JsonProperty("art") String art,
@JsonProperty("content") String content,
@JsonProperty("mediaTagPrefix") String mediaTagPrefix,
@JsonProperty("mediaTagVersion") long mediaTagVersion,
@JsonProperty("nocache") boolean nocache,
@JsonProperty("thumb") String thumb,
@JsonProperty("title1") String title1,
@JsonProperty("title2") String title2,
@JsonProperty("viewGroup") String viewGroup,
@JsonProperty("Directory") Optional<? extends List<GetCountriesLibraryDirectory>> directory) {
Utils.checkNotNull(size, "size");
Utils.checkNotNull(offset, "offset");
Utils.checkNotNull(totalSize, "totalSize");
Utils.checkNotNull(identifier, "identifier");
Utils.checkNotNull(allowSync, "allowSync");
Utils.checkNotNull(art, "art");
Utils.checkNotNull(content, "content");
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
Utils.checkNotNull(nocache, "nocache");
Utils.checkNotNull(thumb, "thumb");
Utils.checkNotNull(title1, "title1");
Utils.checkNotNull(title2, "title2");
Utils.checkNotNull(viewGroup, "viewGroup");
Utils.checkNotNull(directory, "directory");
this.size = size;
this.offset = offset;
this.totalSize = totalSize;
this.identifier = identifier;
this.allowSync = allowSync;
this.art = art;
this.content = content;
this.mediaTagPrefix = mediaTagPrefix;
this.mediaTagVersion = mediaTagVersion;
this.nocache = nocache;
this.thumb = thumb;
this.title1 = title1;
this.title2 = title2;
this.viewGroup = viewGroup;
this.directory = directory;
}
public GetCountriesLibraryMediaContainer(
double size,
String identifier,
boolean allowSync,
String art,
String content,
String mediaTagPrefix,
long mediaTagVersion,
boolean nocache,
String thumb,
String title1,
String title2,
String viewGroup) {
this(size, Optional.empty(), Optional.empty(), identifier, allowSync, art, content, mediaTagPrefix, mediaTagVersion, nocache, thumb, title1, title2, viewGroup, Optional.empty());
}
@JsonIgnore
public double size() {
return size;
}
@JsonIgnore
public Optional<Integer> offset() {
return offset;
}
@JsonIgnore
public Optional<Integer> totalSize() {
return totalSize;
}
@JsonIgnore
public String identifier() {
return identifier;
}
@JsonIgnore
public boolean allowSync() {
return allowSync;
}
@JsonIgnore
public String art() {
return art;
}
@JsonIgnore
public String content() {
return content;
}
@JsonIgnore
public String mediaTagPrefix() {
return mediaTagPrefix;
}
@JsonIgnore
public long mediaTagVersion() {
return mediaTagVersion;
}
@JsonIgnore
public boolean nocache() {
return nocache;
}
@JsonIgnore
public String thumb() {
return thumb;
}
@JsonIgnore
public String title1() {
return title1;
}
@JsonIgnore
public String title2() {
return title2;
}
@JsonIgnore
public String viewGroup() {
return viewGroup;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<List<GetCountriesLibraryDirectory>> directory() {
return (Optional<List<GetCountriesLibraryDirectory>>) directory;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryMediaContainer withSize(double size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
public GetCountriesLibraryMediaContainer withOffset(int offset) {
Utils.checkNotNull(offset, "offset");
this.offset = Optional.ofNullable(offset);
return this;
}
public GetCountriesLibraryMediaContainer withOffset(Optional<Integer> offset) {
Utils.checkNotNull(offset, "offset");
this.offset = offset;
return this;
}
public GetCountriesLibraryMediaContainer withTotalSize(int totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = Optional.ofNullable(totalSize);
return this;
}
public GetCountriesLibraryMediaContainer withTotalSize(Optional<Integer> totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
public GetCountriesLibraryMediaContainer withIdentifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
public GetCountriesLibraryMediaContainer withAllowSync(boolean allowSync) {
Utils.checkNotNull(allowSync, "allowSync");
this.allowSync = allowSync;
return this;
}
public GetCountriesLibraryMediaContainer withArt(String art) {
Utils.checkNotNull(art, "art");
this.art = art;
return this;
}
public GetCountriesLibraryMediaContainer withContent(String content) {
Utils.checkNotNull(content, "content");
this.content = content;
return this;
}
public GetCountriesLibraryMediaContainer withMediaTagPrefix(String mediaTagPrefix) {
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
this.mediaTagPrefix = mediaTagPrefix;
return this;
}
public GetCountriesLibraryMediaContainer withMediaTagVersion(long mediaTagVersion) {
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
this.mediaTagVersion = mediaTagVersion;
return this;
}
public GetCountriesLibraryMediaContainer withNocache(boolean nocache) {
Utils.checkNotNull(nocache, "nocache");
this.nocache = nocache;
return this;
}
public GetCountriesLibraryMediaContainer withThumb(String thumb) {
Utils.checkNotNull(thumb, "thumb");
this.thumb = thumb;
return this;
}
public GetCountriesLibraryMediaContainer withTitle1(String title1) {
Utils.checkNotNull(title1, "title1");
this.title1 = title1;
return this;
}
public GetCountriesLibraryMediaContainer withTitle2(String title2) {
Utils.checkNotNull(title2, "title2");
this.title2 = title2;
return this;
}
public GetCountriesLibraryMediaContainer withViewGroup(String viewGroup) {
Utils.checkNotNull(viewGroup, "viewGroup");
this.viewGroup = viewGroup;
return this;
}
public GetCountriesLibraryMediaContainer withDirectory(List<GetCountriesLibraryDirectory> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = Optional.ofNullable(directory);
return this;
}
public GetCountriesLibraryMediaContainer withDirectory(Optional<? extends List<GetCountriesLibraryDirectory>> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = directory;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryMediaContainer other = (GetCountriesLibraryMediaContainer) o;
return
Objects.deepEquals(this.size, other.size) &&
Objects.deepEquals(this.offset, other.offset) &&
Objects.deepEquals(this.totalSize, other.totalSize) &&
Objects.deepEquals(this.identifier, other.identifier) &&
Objects.deepEquals(this.allowSync, other.allowSync) &&
Objects.deepEquals(this.art, other.art) &&
Objects.deepEquals(this.content, other.content) &&
Objects.deepEquals(this.mediaTagPrefix, other.mediaTagPrefix) &&
Objects.deepEquals(this.mediaTagVersion, other.mediaTagVersion) &&
Objects.deepEquals(this.nocache, other.nocache) &&
Objects.deepEquals(this.thumb, other.thumb) &&
Objects.deepEquals(this.title1, other.title1) &&
Objects.deepEquals(this.title2, other.title2) &&
Objects.deepEquals(this.viewGroup, other.viewGroup) &&
Objects.deepEquals(this.directory, other.directory);
}
@Override
public int hashCode() {
return Objects.hash(
size,
offset,
totalSize,
identifier,
allowSync,
art,
content,
mediaTagPrefix,
mediaTagVersion,
nocache,
thumb,
title1,
title2,
viewGroup,
directory);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryMediaContainer.class,
"size", size,
"offset", offset,
"totalSize", totalSize,
"identifier", identifier,
"allowSync", allowSync,
"art", art,
"content", content,
"mediaTagPrefix", mediaTagPrefix,
"mediaTagVersion", mediaTagVersion,
"nocache", nocache,
"thumb", thumb,
"title1", title1,
"title2", title2,
"viewGroup", viewGroup,
"directory", directory);
}
public final static class Builder {
private Double size;
private Optional<Integer> offset = Optional.empty();
private Optional<Integer> totalSize = Optional.empty();
private String identifier;
private Boolean allowSync;
private String art;
private String content;
private String mediaTagPrefix;
private Long mediaTagVersion;
private Boolean nocache;
private String thumb;
private String title1;
private String title2;
private String viewGroup;
private Optional<? extends List<GetCountriesLibraryDirectory>> directory = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder size(double size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
public Builder offset(int offset) {
Utils.checkNotNull(offset, "offset");
this.offset = Optional.ofNullable(offset);
return this;
}
public Builder offset(Optional<Integer> offset) {
Utils.checkNotNull(offset, "offset");
this.offset = offset;
return this;
}
public Builder totalSize(int totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = Optional.ofNullable(totalSize);
return this;
}
public Builder totalSize(Optional<Integer> totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
public Builder identifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
public Builder allowSync(boolean allowSync) {
Utils.checkNotNull(allowSync, "allowSync");
this.allowSync = allowSync;
return this;
}
public Builder art(String art) {
Utils.checkNotNull(art, "art");
this.art = art;
return this;
}
public Builder content(String content) {
Utils.checkNotNull(content, "content");
this.content = content;
return this;
}
public Builder mediaTagPrefix(String mediaTagPrefix) {
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
this.mediaTagPrefix = mediaTagPrefix;
return this;
}
public Builder mediaTagVersion(long mediaTagVersion) {
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
this.mediaTagVersion = mediaTagVersion;
return this;
}
public Builder nocache(boolean nocache) {
Utils.checkNotNull(nocache, "nocache");
this.nocache = nocache;
return this;
}
public Builder thumb(String thumb) {
Utils.checkNotNull(thumb, "thumb");
this.thumb = thumb;
return this;
}
public Builder title1(String title1) {
Utils.checkNotNull(title1, "title1");
this.title1 = title1;
return this;
}
public Builder title2(String title2) {
Utils.checkNotNull(title2, "title2");
this.title2 = title2;
return this;
}
public Builder viewGroup(String viewGroup) {
Utils.checkNotNull(viewGroup, "viewGroup");
this.viewGroup = viewGroup;
return this;
}
public Builder directory(List<GetCountriesLibraryDirectory> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = Optional.ofNullable(directory);
return this;
}
public Builder directory(Optional<? extends List<GetCountriesLibraryDirectory>> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = directory;
return this;
}
public GetCountriesLibraryMediaContainer build() {
return new GetCountriesLibraryMediaContainer(
size,
offset,
totalSize,
identifier,
allowSync,
art,
content,
mediaTagPrefix,
mediaTagVersion,
nocache,
thumb,
title1,
title2,
viewGroup,
directory);
}
}
}

View File

@@ -0,0 +1,110 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.SpeakeasyMetadata;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
public class GetCountriesLibraryRequest {
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
@SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionKey")
private int sectionKey;
@JsonCreator
public GetCountriesLibraryRequest(
int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
@JsonIgnore
public int sectionKey() {
return sectionKey;
}
public final static Builder builder() {
return new Builder();
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
public GetCountriesLibraryRequest withSectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryRequest other = (GetCountriesLibraryRequest) o;
return
Objects.deepEquals(this.sectionKey, other.sectionKey);
}
@Override
public int hashCode() {
return Objects.hash(
sectionKey);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryRequest.class,
"sectionKey", sectionKey);
}
public final static class Builder {
private Integer sectionKey;
private Builder() {
// force use of static builder() method
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
public Builder sectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
public GetCountriesLibraryRequest build() {
return new GetCountriesLibraryRequest(
sectionKey);
}
}
}

View File

@@ -0,0 +1,30 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
public class GetCountriesLibraryRequestBuilder {
private Integer sectionKey;
private final SDKMethodInterfaces.MethodCallGetCountriesLibrary sdk;
public GetCountriesLibraryRequestBuilder(SDKMethodInterfaces.MethodCallGetCountriesLibrary sdk) {
this.sdk = sdk;
}
public GetCountriesLibraryRequestBuilder sectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
public GetCountriesLibraryResponse call() throws Exception {
return sdk.getCountriesLibrary(
sectionKey);
}
}

View File

@@ -0,0 +1,251 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.Response;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.Objects;
import java.util.Optional;
public class GetCountriesLibraryResponse implements Response {
/**
* HTTP response content type for this operation
*/
private String contentType;
/**
* HTTP response status code for this operation
*/
private int statusCode;
/**
* Raw HTTP response; suitable for custom response parsing
*/
private HttpResponse<InputStream> rawResponse;
/**
* Successful response containing media container data.
*/
private Optional<? extends GetCountriesLibraryResponseBody> object;
@JsonCreator
public GetCountriesLibraryResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse,
Optional<? extends GetCountriesLibraryResponseBody> object) {
Utils.checkNotNull(contentType, "contentType");
Utils.checkNotNull(statusCode, "statusCode");
Utils.checkNotNull(rawResponse, "rawResponse");
Utils.checkNotNull(object, "object");
this.contentType = contentType;
this.statusCode = statusCode;
this.rawResponse = rawResponse;
this.object = object;
}
public GetCountriesLibraryResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse) {
this(contentType, statusCode, rawResponse, Optional.empty());
}
/**
* HTTP response content type for this operation
*/
@JsonIgnore
public String contentType() {
return contentType;
}
/**
* HTTP response status code for this operation
*/
@JsonIgnore
public int statusCode() {
return statusCode;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonIgnore
public HttpResponse<InputStream> rawResponse() {
return rawResponse;
}
/**
* Successful response containing media container data.
*/
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<GetCountriesLibraryResponseBody> object() {
return (Optional<GetCountriesLibraryResponseBody>) object;
}
public final static Builder builder() {
return new Builder();
}
/**
* HTTP response content type for this operation
*/
public GetCountriesLibraryResponse withContentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public GetCountriesLibraryResponse withStatusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetCountriesLibraryResponse withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
/**
* Successful response containing media container data.
*/
public GetCountriesLibraryResponse withObject(GetCountriesLibraryResponseBody object) {
Utils.checkNotNull(object, "object");
this.object = Optional.ofNullable(object);
return this;
}
/**
* Successful response containing media container data.
*/
public GetCountriesLibraryResponse withObject(Optional<? extends GetCountriesLibraryResponseBody> object) {
Utils.checkNotNull(object, "object");
this.object = object;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryResponse other = (GetCountriesLibraryResponse) o;
return
Objects.deepEquals(this.contentType, other.contentType) &&
Objects.deepEquals(this.statusCode, other.statusCode) &&
Objects.deepEquals(this.rawResponse, other.rawResponse) &&
Objects.deepEquals(this.object, other.object);
}
@Override
public int hashCode() {
return Objects.hash(
contentType,
statusCode,
rawResponse,
object);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryResponse.class,
"contentType", contentType,
"statusCode", statusCode,
"rawResponse", rawResponse,
"object", object);
}
public final static class Builder {
private String contentType;
private Integer statusCode;
private HttpResponse<InputStream> rawResponse;
private Optional<? extends GetCountriesLibraryResponseBody> object = Optional.empty();
private Builder() {
// force use of static builder() method
}
/**
* HTTP response content type for this operation
*/
public Builder contentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public Builder statusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
/**
* Successful response containing media container data.
*/
public Builder object(GetCountriesLibraryResponseBody object) {
Utils.checkNotNull(object, "object");
this.object = Optional.ofNullable(object);
return this;
}
/**
* Successful response containing media container data.
*/
public Builder object(Optional<? extends GetCountriesLibraryResponseBody> object) {
Utils.checkNotNull(object, "object");
this.object = object;
return this;
}
public GetCountriesLibraryResponse build() {
return new GetCountriesLibraryResponse(
contentType,
statusCode,
rawResponse,
object);
}
}
}

View File

@@ -0,0 +1,114 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.Objects;
import java.util.Optional;
/**
* GetCountriesLibraryResponseBody - Successful response containing media container data.
*/
public class GetCountriesLibraryResponseBody {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("MediaContainer")
private Optional<? extends GetCountriesLibraryMediaContainer> mediaContainer;
@JsonCreator
public GetCountriesLibraryResponseBody(
@JsonProperty("MediaContainer") Optional<? extends GetCountriesLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
}
public GetCountriesLibraryResponseBody() {
this(Optional.empty());
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<GetCountriesLibraryMediaContainer> mediaContainer() {
return (Optional<GetCountriesLibraryMediaContainer>) mediaContainer;
}
public final static Builder builder() {
return new Builder();
}
public GetCountriesLibraryResponseBody withMediaContainer(GetCountriesLibraryMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
public GetCountriesLibraryResponseBody withMediaContainer(Optional<? extends GetCountriesLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetCountriesLibraryResponseBody other = (GetCountriesLibraryResponseBody) o;
return
Objects.deepEquals(this.mediaContainer, other.mediaContainer);
}
@Override
public int hashCode() {
return Objects.hash(
mediaContainer);
}
@Override
public String toString() {
return Utils.toString(GetCountriesLibraryResponseBody.class,
"mediaContainer", mediaContainer);
}
public final static class Builder {
private Optional<? extends GetCountriesLibraryMediaContainer> mediaContainer = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder mediaContainer(GetCountriesLibraryMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
public Builder mediaContainer(Optional<? extends GetCountriesLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
public GetCountriesLibraryResponseBody build() {
return new GetCountriesLibraryResponseBody(
mediaContainer);
}
}
}

View File

@@ -0,0 +1,176 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
public class GetGenresLibraryDirectory {
@JsonProperty("fastKey")
private String fastKey;
@JsonProperty("key")
private String key;
@JsonProperty("title")
private String title;
@JsonProperty("type")
private String type;
@JsonCreator
public GetGenresLibraryDirectory(
@JsonProperty("fastKey") String fastKey,
@JsonProperty("key") String key,
@JsonProperty("title") String title,
@JsonProperty("type") String type) {
Utils.checkNotNull(fastKey, "fastKey");
Utils.checkNotNull(key, "key");
Utils.checkNotNull(title, "title");
Utils.checkNotNull(type, "type");
this.fastKey = fastKey;
this.key = key;
this.title = title;
this.type = type;
}
@JsonIgnore
public String fastKey() {
return fastKey;
}
@JsonIgnore
public String key() {
return key;
}
@JsonIgnore
public String title() {
return title;
}
@JsonIgnore
public String type() {
return type;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryDirectory withFastKey(String fastKey) {
Utils.checkNotNull(fastKey, "fastKey");
this.fastKey = fastKey;
return this;
}
public GetGenresLibraryDirectory withKey(String key) {
Utils.checkNotNull(key, "key");
this.key = key;
return this;
}
public GetGenresLibraryDirectory withTitle(String title) {
Utils.checkNotNull(title, "title");
this.title = title;
return this;
}
public GetGenresLibraryDirectory withType(String type) {
Utils.checkNotNull(type, "type");
this.type = type;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryDirectory other = (GetGenresLibraryDirectory) o;
return
Objects.deepEquals(this.fastKey, other.fastKey) &&
Objects.deepEquals(this.key, other.key) &&
Objects.deepEquals(this.title, other.title) &&
Objects.deepEquals(this.type, other.type);
}
@Override
public int hashCode() {
return Objects.hash(
fastKey,
key,
title,
type);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryDirectory.class,
"fastKey", fastKey,
"key", key,
"title", title,
"type", type);
}
public final static class Builder {
private String fastKey;
private String key;
private String title;
private String type;
private Builder() {
// force use of static builder() method
}
public Builder fastKey(String fastKey) {
Utils.checkNotNull(fastKey, "fastKey");
this.fastKey = fastKey;
return this;
}
public Builder key(String key) {
Utils.checkNotNull(key, "key");
this.key = key;
return this;
}
public Builder title(String title) {
Utils.checkNotNull(title, "title");
this.title = title;
return this;
}
public Builder type(String type) {
Utils.checkNotNull(type, "type");
this.type = type;
return this;
}
public GetGenresLibraryDirectory build() {
return new GetGenresLibraryDirectory(
fastKey,
key,
title,
type);
}
}
}

View File

@@ -0,0 +1,560 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Boolean;
import java.lang.Double;
import java.lang.Integer;
import java.lang.Long;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
public class GetGenresLibraryMediaContainer {
@JsonProperty("size")
private double size;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("offset")
private Optional<Integer> offset;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("totalSize")
private Optional<Integer> totalSize;
@JsonProperty("identifier")
private String identifier;
@JsonProperty("allowSync")
private boolean allowSync;
@JsonProperty("art")
private String art;
@JsonProperty("content")
private String content;
@JsonProperty("mediaTagPrefix")
private String mediaTagPrefix;
@JsonProperty("mediaTagVersion")
private long mediaTagVersion;
@JsonProperty("nocache")
private boolean nocache;
@JsonProperty("thumb")
private String thumb;
@JsonProperty("title1")
private String title1;
@JsonProperty("title2")
private String title2;
@JsonProperty("viewGroup")
private String viewGroup;
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("Directory")
private Optional<? extends List<GetGenresLibraryDirectory>> directory;
@JsonCreator
public GetGenresLibraryMediaContainer(
@JsonProperty("size") double size,
@JsonProperty("offset") Optional<Integer> offset,
@JsonProperty("totalSize") Optional<Integer> totalSize,
@JsonProperty("identifier") String identifier,
@JsonProperty("allowSync") boolean allowSync,
@JsonProperty("art") String art,
@JsonProperty("content") String content,
@JsonProperty("mediaTagPrefix") String mediaTagPrefix,
@JsonProperty("mediaTagVersion") long mediaTagVersion,
@JsonProperty("nocache") boolean nocache,
@JsonProperty("thumb") String thumb,
@JsonProperty("title1") String title1,
@JsonProperty("title2") String title2,
@JsonProperty("viewGroup") String viewGroup,
@JsonProperty("Directory") Optional<? extends List<GetGenresLibraryDirectory>> directory) {
Utils.checkNotNull(size, "size");
Utils.checkNotNull(offset, "offset");
Utils.checkNotNull(totalSize, "totalSize");
Utils.checkNotNull(identifier, "identifier");
Utils.checkNotNull(allowSync, "allowSync");
Utils.checkNotNull(art, "art");
Utils.checkNotNull(content, "content");
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
Utils.checkNotNull(nocache, "nocache");
Utils.checkNotNull(thumb, "thumb");
Utils.checkNotNull(title1, "title1");
Utils.checkNotNull(title2, "title2");
Utils.checkNotNull(viewGroup, "viewGroup");
Utils.checkNotNull(directory, "directory");
this.size = size;
this.offset = offset;
this.totalSize = totalSize;
this.identifier = identifier;
this.allowSync = allowSync;
this.art = art;
this.content = content;
this.mediaTagPrefix = mediaTagPrefix;
this.mediaTagVersion = mediaTagVersion;
this.nocache = nocache;
this.thumb = thumb;
this.title1 = title1;
this.title2 = title2;
this.viewGroup = viewGroup;
this.directory = directory;
}
public GetGenresLibraryMediaContainer(
double size,
String identifier,
boolean allowSync,
String art,
String content,
String mediaTagPrefix,
long mediaTagVersion,
boolean nocache,
String thumb,
String title1,
String title2,
String viewGroup) {
this(size, Optional.empty(), Optional.empty(), identifier, allowSync, art, content, mediaTagPrefix, mediaTagVersion, nocache, thumb, title1, title2, viewGroup, Optional.empty());
}
@JsonIgnore
public double size() {
return size;
}
@JsonIgnore
public Optional<Integer> offset() {
return offset;
}
@JsonIgnore
public Optional<Integer> totalSize() {
return totalSize;
}
@JsonIgnore
public String identifier() {
return identifier;
}
@JsonIgnore
public boolean allowSync() {
return allowSync;
}
@JsonIgnore
public String art() {
return art;
}
@JsonIgnore
public String content() {
return content;
}
@JsonIgnore
public String mediaTagPrefix() {
return mediaTagPrefix;
}
@JsonIgnore
public long mediaTagVersion() {
return mediaTagVersion;
}
@JsonIgnore
public boolean nocache() {
return nocache;
}
@JsonIgnore
public String thumb() {
return thumb;
}
@JsonIgnore
public String title1() {
return title1;
}
@JsonIgnore
public String title2() {
return title2;
}
@JsonIgnore
public String viewGroup() {
return viewGroup;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<List<GetGenresLibraryDirectory>> directory() {
return (Optional<List<GetGenresLibraryDirectory>>) directory;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryMediaContainer withSize(double size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
public GetGenresLibraryMediaContainer withOffset(int offset) {
Utils.checkNotNull(offset, "offset");
this.offset = Optional.ofNullable(offset);
return this;
}
public GetGenresLibraryMediaContainer withOffset(Optional<Integer> offset) {
Utils.checkNotNull(offset, "offset");
this.offset = offset;
return this;
}
public GetGenresLibraryMediaContainer withTotalSize(int totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = Optional.ofNullable(totalSize);
return this;
}
public GetGenresLibraryMediaContainer withTotalSize(Optional<Integer> totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
public GetGenresLibraryMediaContainer withIdentifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
public GetGenresLibraryMediaContainer withAllowSync(boolean allowSync) {
Utils.checkNotNull(allowSync, "allowSync");
this.allowSync = allowSync;
return this;
}
public GetGenresLibraryMediaContainer withArt(String art) {
Utils.checkNotNull(art, "art");
this.art = art;
return this;
}
public GetGenresLibraryMediaContainer withContent(String content) {
Utils.checkNotNull(content, "content");
this.content = content;
return this;
}
public GetGenresLibraryMediaContainer withMediaTagPrefix(String mediaTagPrefix) {
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
this.mediaTagPrefix = mediaTagPrefix;
return this;
}
public GetGenresLibraryMediaContainer withMediaTagVersion(long mediaTagVersion) {
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
this.mediaTagVersion = mediaTagVersion;
return this;
}
public GetGenresLibraryMediaContainer withNocache(boolean nocache) {
Utils.checkNotNull(nocache, "nocache");
this.nocache = nocache;
return this;
}
public GetGenresLibraryMediaContainer withThumb(String thumb) {
Utils.checkNotNull(thumb, "thumb");
this.thumb = thumb;
return this;
}
public GetGenresLibraryMediaContainer withTitle1(String title1) {
Utils.checkNotNull(title1, "title1");
this.title1 = title1;
return this;
}
public GetGenresLibraryMediaContainer withTitle2(String title2) {
Utils.checkNotNull(title2, "title2");
this.title2 = title2;
return this;
}
public GetGenresLibraryMediaContainer withViewGroup(String viewGroup) {
Utils.checkNotNull(viewGroup, "viewGroup");
this.viewGroup = viewGroup;
return this;
}
public GetGenresLibraryMediaContainer withDirectory(List<GetGenresLibraryDirectory> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = Optional.ofNullable(directory);
return this;
}
public GetGenresLibraryMediaContainer withDirectory(Optional<? extends List<GetGenresLibraryDirectory>> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = directory;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryMediaContainer other = (GetGenresLibraryMediaContainer) o;
return
Objects.deepEquals(this.size, other.size) &&
Objects.deepEquals(this.offset, other.offset) &&
Objects.deepEquals(this.totalSize, other.totalSize) &&
Objects.deepEquals(this.identifier, other.identifier) &&
Objects.deepEquals(this.allowSync, other.allowSync) &&
Objects.deepEquals(this.art, other.art) &&
Objects.deepEquals(this.content, other.content) &&
Objects.deepEquals(this.mediaTagPrefix, other.mediaTagPrefix) &&
Objects.deepEquals(this.mediaTagVersion, other.mediaTagVersion) &&
Objects.deepEquals(this.nocache, other.nocache) &&
Objects.deepEquals(this.thumb, other.thumb) &&
Objects.deepEquals(this.title1, other.title1) &&
Objects.deepEquals(this.title2, other.title2) &&
Objects.deepEquals(this.viewGroup, other.viewGroup) &&
Objects.deepEquals(this.directory, other.directory);
}
@Override
public int hashCode() {
return Objects.hash(
size,
offset,
totalSize,
identifier,
allowSync,
art,
content,
mediaTagPrefix,
mediaTagVersion,
nocache,
thumb,
title1,
title2,
viewGroup,
directory);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryMediaContainer.class,
"size", size,
"offset", offset,
"totalSize", totalSize,
"identifier", identifier,
"allowSync", allowSync,
"art", art,
"content", content,
"mediaTagPrefix", mediaTagPrefix,
"mediaTagVersion", mediaTagVersion,
"nocache", nocache,
"thumb", thumb,
"title1", title1,
"title2", title2,
"viewGroup", viewGroup,
"directory", directory);
}
public final static class Builder {
private Double size;
private Optional<Integer> offset = Optional.empty();
private Optional<Integer> totalSize = Optional.empty();
private String identifier;
private Boolean allowSync;
private String art;
private String content;
private String mediaTagPrefix;
private Long mediaTagVersion;
private Boolean nocache;
private String thumb;
private String title1;
private String title2;
private String viewGroup;
private Optional<? extends List<GetGenresLibraryDirectory>> directory = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder size(double size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
public Builder offset(int offset) {
Utils.checkNotNull(offset, "offset");
this.offset = Optional.ofNullable(offset);
return this;
}
public Builder offset(Optional<Integer> offset) {
Utils.checkNotNull(offset, "offset");
this.offset = offset;
return this;
}
public Builder totalSize(int totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = Optional.ofNullable(totalSize);
return this;
}
public Builder totalSize(Optional<Integer> totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
public Builder identifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
public Builder allowSync(boolean allowSync) {
Utils.checkNotNull(allowSync, "allowSync");
this.allowSync = allowSync;
return this;
}
public Builder art(String art) {
Utils.checkNotNull(art, "art");
this.art = art;
return this;
}
public Builder content(String content) {
Utils.checkNotNull(content, "content");
this.content = content;
return this;
}
public Builder mediaTagPrefix(String mediaTagPrefix) {
Utils.checkNotNull(mediaTagPrefix, "mediaTagPrefix");
this.mediaTagPrefix = mediaTagPrefix;
return this;
}
public Builder mediaTagVersion(long mediaTagVersion) {
Utils.checkNotNull(mediaTagVersion, "mediaTagVersion");
this.mediaTagVersion = mediaTagVersion;
return this;
}
public Builder nocache(boolean nocache) {
Utils.checkNotNull(nocache, "nocache");
this.nocache = nocache;
return this;
}
public Builder thumb(String thumb) {
Utils.checkNotNull(thumb, "thumb");
this.thumb = thumb;
return this;
}
public Builder title1(String title1) {
Utils.checkNotNull(title1, "title1");
this.title1 = title1;
return this;
}
public Builder title2(String title2) {
Utils.checkNotNull(title2, "title2");
this.title2 = title2;
return this;
}
public Builder viewGroup(String viewGroup) {
Utils.checkNotNull(viewGroup, "viewGroup");
this.viewGroup = viewGroup;
return this;
}
public Builder directory(List<GetGenresLibraryDirectory> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = Optional.ofNullable(directory);
return this;
}
public Builder directory(Optional<? extends List<GetGenresLibraryDirectory>> directory) {
Utils.checkNotNull(directory, "directory");
this.directory = directory;
return this;
}
public GetGenresLibraryMediaContainer build() {
return new GetGenresLibraryMediaContainer(
size,
offset,
totalSize,
identifier,
allowSync,
art,
content,
mediaTagPrefix,
mediaTagVersion,
nocache,
thumb,
title1,
title2,
viewGroup,
directory);
}
}
}

View File

@@ -0,0 +1,110 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.SpeakeasyMetadata;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
public class GetGenresLibraryRequest {
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
@SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionKey")
private int sectionKey;
@JsonCreator
public GetGenresLibraryRequest(
int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
@JsonIgnore
public int sectionKey() {
return sectionKey;
}
public final static Builder builder() {
return new Builder();
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
public GetGenresLibraryRequest withSectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryRequest other = (GetGenresLibraryRequest) o;
return
Objects.deepEquals(this.sectionKey, other.sectionKey);
}
@Override
public int hashCode() {
return Objects.hash(
sectionKey);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryRequest.class,
"sectionKey", sectionKey);
}
public final static class Builder {
private Integer sectionKey;
private Builder() {
// force use of static builder() method
}
/**
* The unique key of the Plex library.
* Note: This is unique in the context of the Plex server.
*
*/
public Builder sectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
public GetGenresLibraryRequest build() {
return new GetGenresLibraryRequest(
sectionKey);
}
}
}

View File

@@ -0,0 +1,30 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
public class GetGenresLibraryRequestBuilder {
private Integer sectionKey;
private final SDKMethodInterfaces.MethodCallGetGenresLibrary sdk;
public GetGenresLibraryRequestBuilder(SDKMethodInterfaces.MethodCallGetGenresLibrary sdk) {
this.sdk = sdk;
}
public GetGenresLibraryRequestBuilder sectionKey(int sectionKey) {
Utils.checkNotNull(sectionKey, "sectionKey");
this.sectionKey = sectionKey;
return this;
}
public GetGenresLibraryResponse call() throws Exception {
return sdk.getGenresLibrary(
sectionKey);
}
}

View File

@@ -0,0 +1,251 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.Response;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.Objects;
import java.util.Optional;
public class GetGenresLibraryResponse implements Response {
/**
* HTTP response content type for this operation
*/
private String contentType;
/**
* HTTP response status code for this operation
*/
private int statusCode;
/**
* Raw HTTP response; suitable for custom response parsing
*/
private HttpResponse<InputStream> rawResponse;
/**
* Successful response containing media container data.
*/
private Optional<? extends GetGenresLibraryResponseBody> object;
@JsonCreator
public GetGenresLibraryResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse,
Optional<? extends GetGenresLibraryResponseBody> object) {
Utils.checkNotNull(contentType, "contentType");
Utils.checkNotNull(statusCode, "statusCode");
Utils.checkNotNull(rawResponse, "rawResponse");
Utils.checkNotNull(object, "object");
this.contentType = contentType;
this.statusCode = statusCode;
this.rawResponse = rawResponse;
this.object = object;
}
public GetGenresLibraryResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse) {
this(contentType, statusCode, rawResponse, Optional.empty());
}
/**
* HTTP response content type for this operation
*/
@JsonIgnore
public String contentType() {
return contentType;
}
/**
* HTTP response status code for this operation
*/
@JsonIgnore
public int statusCode() {
return statusCode;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonIgnore
public HttpResponse<InputStream> rawResponse() {
return rawResponse;
}
/**
* Successful response containing media container data.
*/
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<GetGenresLibraryResponseBody> object() {
return (Optional<GetGenresLibraryResponseBody>) object;
}
public final static Builder builder() {
return new Builder();
}
/**
* HTTP response content type for this operation
*/
public GetGenresLibraryResponse withContentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public GetGenresLibraryResponse withStatusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetGenresLibraryResponse withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
/**
* Successful response containing media container data.
*/
public GetGenresLibraryResponse withObject(GetGenresLibraryResponseBody object) {
Utils.checkNotNull(object, "object");
this.object = Optional.ofNullable(object);
return this;
}
/**
* Successful response containing media container data.
*/
public GetGenresLibraryResponse withObject(Optional<? extends GetGenresLibraryResponseBody> object) {
Utils.checkNotNull(object, "object");
this.object = object;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryResponse other = (GetGenresLibraryResponse) o;
return
Objects.deepEquals(this.contentType, other.contentType) &&
Objects.deepEquals(this.statusCode, other.statusCode) &&
Objects.deepEquals(this.rawResponse, other.rawResponse) &&
Objects.deepEquals(this.object, other.object);
}
@Override
public int hashCode() {
return Objects.hash(
contentType,
statusCode,
rawResponse,
object);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryResponse.class,
"contentType", contentType,
"statusCode", statusCode,
"rawResponse", rawResponse,
"object", object);
}
public final static class Builder {
private String contentType;
private Integer statusCode;
private HttpResponse<InputStream> rawResponse;
private Optional<? extends GetGenresLibraryResponseBody> object = Optional.empty();
private Builder() {
// force use of static builder() method
}
/**
* HTTP response content type for this operation
*/
public Builder contentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public Builder statusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
/**
* Successful response containing media container data.
*/
public Builder object(GetGenresLibraryResponseBody object) {
Utils.checkNotNull(object, "object");
this.object = Optional.ofNullable(object);
return this;
}
/**
* Successful response containing media container data.
*/
public Builder object(Optional<? extends GetGenresLibraryResponseBody> object) {
Utils.checkNotNull(object, "object");
this.object = object;
return this;
}
public GetGenresLibraryResponse build() {
return new GetGenresLibraryResponse(
contentType,
statusCode,
rawResponse,
object);
}
}
}

View File

@@ -0,0 +1,114 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.Objects;
import java.util.Optional;
/**
* GetGenresLibraryResponseBody - Successful response containing media container data.
*/
public class GetGenresLibraryResponseBody {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("MediaContainer")
private Optional<? extends GetGenresLibraryMediaContainer> mediaContainer;
@JsonCreator
public GetGenresLibraryResponseBody(
@JsonProperty("MediaContainer") Optional<? extends GetGenresLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
}
public GetGenresLibraryResponseBody() {
this(Optional.empty());
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<GetGenresLibraryMediaContainer> mediaContainer() {
return (Optional<GetGenresLibraryMediaContainer>) mediaContainer;
}
public final static Builder builder() {
return new Builder();
}
public GetGenresLibraryResponseBody withMediaContainer(GetGenresLibraryMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
public GetGenresLibraryResponseBody withMediaContainer(Optional<? extends GetGenresLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetGenresLibraryResponseBody other = (GetGenresLibraryResponseBody) o;
return
Objects.deepEquals(this.mediaContainer, other.mediaContainer);
}
@Override
public int hashCode() {
return Objects.hash(
mediaContainer);
}
@Override
public String toString() {
return Utils.toString(GetGenresLibraryResponseBody.class,
"mediaContainer", mediaContainer);
}
public final static class Builder {
private Optional<? extends GetGenresLibraryMediaContainer> mediaContainer = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder mediaContainer(GetGenresLibraryMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
public Builder mediaContainer(Optional<? extends GetGenresLibraryMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
public GetGenresLibraryResponseBody build() {
return new GetGenresLibraryResponseBody(
mediaContainer);
}
}
}

View File

@@ -151,7 +151,7 @@ public class GetTopWatchedContentMetadata {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("User")
private Optional<? extends List<User>> user;
private Optional<? extends List<GetTopWatchedContentUser>> user;
@JsonCreator
public GetTopWatchedContentMetadata(
@@ -186,7 +186,7 @@ public class GetTopWatchedContentMetadata {
@JsonProperty("Country") Optional<? extends List<GetTopWatchedContentCountry>> country,
@JsonProperty("Guid") Optional<? extends List<GetTopWatchedContentGuids>> guids,
@JsonProperty("Role") Optional<? extends List<GetTopWatchedContentRole>> role,
@JsonProperty("User") Optional<? extends List<User>> user) {
@JsonProperty("User") Optional<? extends List<GetTopWatchedContentUser>> user) {
Utils.checkNotNull(ratingKey, "ratingKey");
Utils.checkNotNull(key, "key");
Utils.checkNotNull(guid, "guid");
@@ -418,8 +418,8 @@ public class GetTopWatchedContentMetadata {
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<List<User>> user() {
return (Optional<List<User>>) user;
public Optional<List<GetTopWatchedContentUser>> user() {
return (Optional<List<GetTopWatchedContentUser>>) user;
}
public final static Builder builder() {
@@ -798,13 +798,13 @@ public class GetTopWatchedContentMetadata {
return this;
}
public GetTopWatchedContentMetadata withUser(List<User> user) {
public GetTopWatchedContentMetadata withUser(List<GetTopWatchedContentUser> user) {
Utils.checkNotNull(user, "user");
this.user = Optional.ofNullable(user);
return this;
}
public GetTopWatchedContentMetadata withUser(Optional<? extends List<User>> user) {
public GetTopWatchedContentMetadata withUser(Optional<? extends List<GetTopWatchedContentUser>> user) {
Utils.checkNotNull(user, "user");
this.user = user;
return this;
@@ -992,7 +992,7 @@ public class GetTopWatchedContentMetadata {
private Optional<? extends List<GetTopWatchedContentRole>> role = Optional.empty();
private Optional<? extends List<User>> user = Optional.empty();
private Optional<? extends List<GetTopWatchedContentUser>> user = Optional.empty();
private Builder() {
// force use of static builder() method
@@ -1370,13 +1370,13 @@ public class GetTopWatchedContentMetadata {
return this;
}
public Builder user(List<User> user) {
public Builder user(List<GetTopWatchedContentUser> user) {
Utils.checkNotNull(user, "user");
this.user = Optional.ofNullable(user);
return this;
}
public Builder user(Optional<? extends List<User>> user) {
public Builder user(Optional<? extends List<GetTopWatchedContentUser>> user) {
Utils.checkNotNull(user, "user");
this.user = user;
return this;

View File

@@ -0,0 +1,110 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetTopWatchedContentUser {
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("id")
private Optional<Integer> id;
@JsonCreator
public GetTopWatchedContentUser(
@JsonProperty("id") Optional<Integer> id) {
Utils.checkNotNull(id, "id");
this.id = id;
}
public GetTopWatchedContentUser() {
this(Optional.empty());
}
@JsonIgnore
public Optional<Integer> id() {
return id;
}
public final static Builder builder() {
return new Builder();
}
public GetTopWatchedContentUser withId(int id) {
Utils.checkNotNull(id, "id");
this.id = Optional.ofNullable(id);
return this;
}
public GetTopWatchedContentUser withId(Optional<Integer> id) {
Utils.checkNotNull(id, "id");
this.id = id;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetTopWatchedContentUser other = (GetTopWatchedContentUser) o;
return
Objects.deepEquals(this.id, other.id);
}
@Override
public int hashCode() {
return Objects.hash(
id);
}
@Override
public String toString() {
return Utils.toString(GetTopWatchedContentUser.class,
"id", id);
}
public final static class Builder {
private Optional<Integer> id = Optional.empty();
private Builder() {
// force use of static builder() method
}
public Builder id(int id) {
Utils.checkNotNull(id, "id");
this.id = Optional.ofNullable(id);
return this;
}
public Builder id(Optional<Integer> id) {
Utils.checkNotNull(id, "id");
this.id = id;
return this;
}
public GetTopWatchedContentUser build() {
return new GetTopWatchedContentUser(
id);
}
}
}

View File

@@ -0,0 +1,292 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Long;
import java.lang.Override;
import java.lang.String;
import java.util.List;
import java.util.Objects;
/**
* GetUsersMediaContainer - Container holding user and server details.
*/
public class GetUsersMediaContainer {
/**
* The friendly name of the Plex instance.
*/
private String friendlyName;
private String identifier;
/**
* Unique Machine identifier of the Plex server.
*/
private String machineIdentifier;
/**
* Total number of users.
*/
private long totalSize;
/**
* Number of users in the current response.
*/
private long size;
/**
* List of users with access to the Plex server.
*/
private List<User> user;
@JsonCreator
public GetUsersMediaContainer(
String friendlyName,
String identifier,
String machineIdentifier,
long totalSize,
long size,
List<User> user) {
Utils.checkNotNull(friendlyName, "friendlyName");
Utils.checkNotNull(identifier, "identifier");
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
Utils.checkNotNull(totalSize, "totalSize");
Utils.checkNotNull(size, "size");
Utils.checkNotNull(user, "user");
this.friendlyName = friendlyName;
this.identifier = identifier;
this.machineIdentifier = machineIdentifier;
this.totalSize = totalSize;
this.size = size;
this.user = user;
}
/**
* The friendly name of the Plex instance.
*/
@JsonIgnore
public String friendlyName() {
return friendlyName;
}
@JsonIgnore
public String identifier() {
return identifier;
}
/**
* Unique Machine identifier of the Plex server.
*/
@JsonIgnore
public String machineIdentifier() {
return machineIdentifier;
}
/**
* Total number of users.
*/
@JsonIgnore
public long totalSize() {
return totalSize;
}
/**
* Number of users in the current response.
*/
@JsonIgnore
public long size() {
return size;
}
/**
* List of users with access to the Plex server.
*/
@JsonIgnore
public List<User> user() {
return user;
}
public final static Builder builder() {
return new Builder();
}
/**
* The friendly name of the Plex instance.
*/
public GetUsersMediaContainer withFriendlyName(String friendlyName) {
Utils.checkNotNull(friendlyName, "friendlyName");
this.friendlyName = friendlyName;
return this;
}
public GetUsersMediaContainer withIdentifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
/**
* Unique Machine identifier of the Plex server.
*/
public GetUsersMediaContainer withMachineIdentifier(String machineIdentifier) {
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
this.machineIdentifier = machineIdentifier;
return this;
}
/**
* Total number of users.
*/
public GetUsersMediaContainer withTotalSize(long totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
/**
* Number of users in the current response.
*/
public GetUsersMediaContainer withSize(long size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
/**
* List of users with access to the Plex server.
*/
public GetUsersMediaContainer withUser(List<User> user) {
Utils.checkNotNull(user, "user");
this.user = user;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersMediaContainer other = (GetUsersMediaContainer) o;
return
Objects.deepEquals(this.friendlyName, other.friendlyName) &&
Objects.deepEquals(this.identifier, other.identifier) &&
Objects.deepEquals(this.machineIdentifier, other.machineIdentifier) &&
Objects.deepEquals(this.totalSize, other.totalSize) &&
Objects.deepEquals(this.size, other.size) &&
Objects.deepEquals(this.user, other.user);
}
@Override
public int hashCode() {
return Objects.hash(
friendlyName,
identifier,
machineIdentifier,
totalSize,
size,
user);
}
@Override
public String toString() {
return Utils.toString(GetUsersMediaContainer.class,
"friendlyName", friendlyName,
"identifier", identifier,
"machineIdentifier", machineIdentifier,
"totalSize", totalSize,
"size", size,
"user", user);
}
public final static class Builder {
private String friendlyName;
private String identifier;
private String machineIdentifier;
private Long totalSize;
private Long size;
private List<User> user;
private Builder() {
// force use of static builder() method
}
/**
* The friendly name of the Plex instance.
*/
public Builder friendlyName(String friendlyName) {
Utils.checkNotNull(friendlyName, "friendlyName");
this.friendlyName = friendlyName;
return this;
}
public Builder identifier(String identifier) {
Utils.checkNotNull(identifier, "identifier");
this.identifier = identifier;
return this;
}
/**
* Unique Machine identifier of the Plex server.
*/
public Builder machineIdentifier(String machineIdentifier) {
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
this.machineIdentifier = machineIdentifier;
return this;
}
/**
* Total number of users.
*/
public Builder totalSize(long totalSize) {
Utils.checkNotNull(totalSize, "totalSize");
this.totalSize = totalSize;
return this;
}
/**
* Number of users in the current response.
*/
public Builder size(long size) {
Utils.checkNotNull(size, "size");
this.size = size;
return this;
}
/**
* List of users with access to the Plex server.
*/
public Builder user(List<User> user) {
Utils.checkNotNull(user, "user");
this.user = user;
return this;
}
public GetUsersMediaContainer build() {
return new GetUsersMediaContainer(
friendlyName,
identifier,
machineIdentifier,
totalSize,
size,
user);
}
}
}

View File

@@ -0,0 +1,798 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.SpeakeasyMetadata;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
public class GetUsersRequest {
/**
* An opaque identifier unique to the client (UUID, serial number, or other unique device ID)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Identifier")
private String clientID;
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Product")
private Optional<String> clientName;
/**
* A relatively friendly name for the client device
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device")
private Optional<String> deviceNickname;
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Name")
private Optional<String> deviceName;
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Screen-Resolution")
private Optional<String> deviceScreenResolution;
/**
* The version of the client application.
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Version")
private Optional<String> clientVersion;
/**
* The platform of the client application.
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform")
private Optional<String> platform;
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Features")
private Optional<String> clientFeatures;
/**
* A potentially less friendly identifier for the device model
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Model")
private Optional<String> model;
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Session-Id")
private Optional<String> xPlexSessionId;
/**
* The language of the client application.
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Language")
private Optional<String> xPlexLanguage;
/**
* The version of the platform
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform-Version")
private Optional<String> platformVersion;
/**
* An authentication token, obtained from plex.tv
*/
@SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Token")
private String xPlexToken;
@JsonCreator
public GetUsersRequest(
String clientID,
Optional<String> clientName,
Optional<String> deviceNickname,
Optional<String> deviceName,
Optional<String> deviceScreenResolution,
Optional<String> clientVersion,
Optional<String> platform,
Optional<String> clientFeatures,
Optional<String> model,
Optional<String> xPlexSessionId,
Optional<String> xPlexLanguage,
Optional<String> platformVersion,
String xPlexToken) {
Utils.checkNotNull(clientID, "clientID");
Utils.checkNotNull(clientName, "clientName");
Utils.checkNotNull(deviceNickname, "deviceNickname");
Utils.checkNotNull(deviceName, "deviceName");
Utils.checkNotNull(deviceScreenResolution, "deviceScreenResolution");
Utils.checkNotNull(clientVersion, "clientVersion");
Utils.checkNotNull(platform, "platform");
Utils.checkNotNull(clientFeatures, "clientFeatures");
Utils.checkNotNull(model, "model");
Utils.checkNotNull(xPlexSessionId, "xPlexSessionId");
Utils.checkNotNull(xPlexLanguage, "xPlexLanguage");
Utils.checkNotNull(platformVersion, "platformVersion");
Utils.checkNotNull(xPlexToken, "xPlexToken");
this.clientID = clientID;
this.clientName = clientName;
this.deviceNickname = deviceNickname;
this.deviceName = deviceName;
this.deviceScreenResolution = deviceScreenResolution;
this.clientVersion = clientVersion;
this.platform = platform;
this.clientFeatures = clientFeatures;
this.model = model;
this.xPlexSessionId = xPlexSessionId;
this.xPlexLanguage = xPlexLanguage;
this.platformVersion = platformVersion;
this.xPlexToken = xPlexToken;
}
public GetUsersRequest(
String clientID,
String xPlexToken) {
this(clientID, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), xPlexToken);
}
/**
* An opaque identifier unique to the client (UUID, serial number, or other unique device ID)
*/
@JsonIgnore
public String clientID() {
return clientID;
}
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
@JsonIgnore
public Optional<String> clientName() {
return clientName;
}
/**
* A relatively friendly name for the client device
*/
@JsonIgnore
public Optional<String> deviceNickname() {
return deviceNickname;
}
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
@JsonIgnore
public Optional<String> deviceName() {
return deviceName;
}
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
@JsonIgnore
public Optional<String> deviceScreenResolution() {
return deviceScreenResolution;
}
/**
* The version of the client application.
*/
@JsonIgnore
public Optional<String> clientVersion() {
return clientVersion;
}
/**
* The platform of the client application.
*/
@JsonIgnore
public Optional<String> platform() {
return platform;
}
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
@JsonIgnore
public Optional<String> clientFeatures() {
return clientFeatures;
}
/**
* A potentially less friendly identifier for the device model
*/
@JsonIgnore
public Optional<String> model() {
return model;
}
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
@JsonIgnore
public Optional<String> xPlexSessionId() {
return xPlexSessionId;
}
/**
* The language of the client application.
*/
@JsonIgnore
public Optional<String> xPlexLanguage() {
return xPlexLanguage;
}
/**
* The version of the platform
*/
@JsonIgnore
public Optional<String> platformVersion() {
return platformVersion;
}
/**
* An authentication token, obtained from plex.tv
*/
@JsonIgnore
public String xPlexToken() {
return xPlexToken;
}
public final static Builder builder() {
return new Builder();
}
/**
* An opaque identifier unique to the client (UUID, serial number, or other unique device ID)
*/
public GetUsersRequest withClientID(String clientID) {
Utils.checkNotNull(clientID, "clientID");
this.clientID = clientID;
return this;
}
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
public GetUsersRequest withClientName(String clientName) {
Utils.checkNotNull(clientName, "clientName");
this.clientName = Optional.ofNullable(clientName);
return this;
}
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
public GetUsersRequest withClientName(Optional<String> clientName) {
Utils.checkNotNull(clientName, "clientName");
this.clientName = clientName;
return this;
}
/**
* A relatively friendly name for the client device
*/
public GetUsersRequest withDeviceNickname(String deviceNickname) {
Utils.checkNotNull(deviceNickname, "deviceNickname");
this.deviceNickname = Optional.ofNullable(deviceNickname);
return this;
}
/**
* A relatively friendly name for the client device
*/
public GetUsersRequest withDeviceNickname(Optional<String> deviceNickname) {
Utils.checkNotNull(deviceNickname, "deviceNickname");
this.deviceNickname = deviceNickname;
return this;
}
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
public GetUsersRequest withDeviceName(String deviceName) {
Utils.checkNotNull(deviceName, "deviceName");
this.deviceName = Optional.ofNullable(deviceName);
return this;
}
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
public GetUsersRequest withDeviceName(Optional<String> deviceName) {
Utils.checkNotNull(deviceName, "deviceName");
this.deviceName = deviceName;
return this;
}
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
public GetUsersRequest withDeviceScreenResolution(String deviceScreenResolution) {
Utils.checkNotNull(deviceScreenResolution, "deviceScreenResolution");
this.deviceScreenResolution = Optional.ofNullable(deviceScreenResolution);
return this;
}
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
public GetUsersRequest withDeviceScreenResolution(Optional<String> deviceScreenResolution) {
Utils.checkNotNull(deviceScreenResolution, "deviceScreenResolution");
this.deviceScreenResolution = deviceScreenResolution;
return this;
}
/**
* The version of the client application.
*/
public GetUsersRequest withClientVersion(String clientVersion) {
Utils.checkNotNull(clientVersion, "clientVersion");
this.clientVersion = Optional.ofNullable(clientVersion);
return this;
}
/**
* The version of the client application.
*/
public GetUsersRequest withClientVersion(Optional<String> clientVersion) {
Utils.checkNotNull(clientVersion, "clientVersion");
this.clientVersion = clientVersion;
return this;
}
/**
* The platform of the client application.
*/
public GetUsersRequest withPlatform(String platform) {
Utils.checkNotNull(platform, "platform");
this.platform = Optional.ofNullable(platform);
return this;
}
/**
* The platform of the client application.
*/
public GetUsersRequest withPlatform(Optional<String> platform) {
Utils.checkNotNull(platform, "platform");
this.platform = platform;
return this;
}
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
public GetUsersRequest withClientFeatures(String clientFeatures) {
Utils.checkNotNull(clientFeatures, "clientFeatures");
this.clientFeatures = Optional.ofNullable(clientFeatures);
return this;
}
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
public GetUsersRequest withClientFeatures(Optional<String> clientFeatures) {
Utils.checkNotNull(clientFeatures, "clientFeatures");
this.clientFeatures = clientFeatures;
return this;
}
/**
* A potentially less friendly identifier for the device model
*/
public GetUsersRequest withModel(String model) {
Utils.checkNotNull(model, "model");
this.model = Optional.ofNullable(model);
return this;
}
/**
* A potentially less friendly identifier for the device model
*/
public GetUsersRequest withModel(Optional<String> model) {
Utils.checkNotNull(model, "model");
this.model = model;
return this;
}
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
public GetUsersRequest withXPlexSessionId(String xPlexSessionId) {
Utils.checkNotNull(xPlexSessionId, "xPlexSessionId");
this.xPlexSessionId = Optional.ofNullable(xPlexSessionId);
return this;
}
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
public GetUsersRequest withXPlexSessionId(Optional<String> xPlexSessionId) {
Utils.checkNotNull(xPlexSessionId, "xPlexSessionId");
this.xPlexSessionId = xPlexSessionId;
return this;
}
/**
* The language of the client application.
*/
public GetUsersRequest withXPlexLanguage(String xPlexLanguage) {
Utils.checkNotNull(xPlexLanguage, "xPlexLanguage");
this.xPlexLanguage = Optional.ofNullable(xPlexLanguage);
return this;
}
/**
* The language of the client application.
*/
public GetUsersRequest withXPlexLanguage(Optional<String> xPlexLanguage) {
Utils.checkNotNull(xPlexLanguage, "xPlexLanguage");
this.xPlexLanguage = xPlexLanguage;
return this;
}
/**
* The version of the platform
*/
public GetUsersRequest withPlatformVersion(String platformVersion) {
Utils.checkNotNull(platformVersion, "platformVersion");
this.platformVersion = Optional.ofNullable(platformVersion);
return this;
}
/**
* The version of the platform
*/
public GetUsersRequest withPlatformVersion(Optional<String> platformVersion) {
Utils.checkNotNull(platformVersion, "platformVersion");
this.platformVersion = platformVersion;
return this;
}
/**
* An authentication token, obtained from plex.tv
*/
public GetUsersRequest withXPlexToken(String xPlexToken) {
Utils.checkNotNull(xPlexToken, "xPlexToken");
this.xPlexToken = xPlexToken;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersRequest other = (GetUsersRequest) o;
return
Objects.deepEquals(this.clientID, other.clientID) &&
Objects.deepEquals(this.clientName, other.clientName) &&
Objects.deepEquals(this.deviceNickname, other.deviceNickname) &&
Objects.deepEquals(this.deviceName, other.deviceName) &&
Objects.deepEquals(this.deviceScreenResolution, other.deviceScreenResolution) &&
Objects.deepEquals(this.clientVersion, other.clientVersion) &&
Objects.deepEquals(this.platform, other.platform) &&
Objects.deepEquals(this.clientFeatures, other.clientFeatures) &&
Objects.deepEquals(this.model, other.model) &&
Objects.deepEquals(this.xPlexSessionId, other.xPlexSessionId) &&
Objects.deepEquals(this.xPlexLanguage, other.xPlexLanguage) &&
Objects.deepEquals(this.platformVersion, other.platformVersion) &&
Objects.deepEquals(this.xPlexToken, other.xPlexToken);
}
@Override
public int hashCode() {
return Objects.hash(
clientID,
clientName,
deviceNickname,
deviceName,
deviceScreenResolution,
clientVersion,
platform,
clientFeatures,
model,
xPlexSessionId,
xPlexLanguage,
platformVersion,
xPlexToken);
}
@Override
public String toString() {
return Utils.toString(GetUsersRequest.class,
"clientID", clientID,
"clientName", clientName,
"deviceNickname", deviceNickname,
"deviceName", deviceName,
"deviceScreenResolution", deviceScreenResolution,
"clientVersion", clientVersion,
"platform", platform,
"clientFeatures", clientFeatures,
"model", model,
"xPlexSessionId", xPlexSessionId,
"xPlexLanguage", xPlexLanguage,
"platformVersion", platformVersion,
"xPlexToken", xPlexToken);
}
public final static class Builder {
private String clientID;
private Optional<String> clientName = Optional.empty();
private Optional<String> deviceNickname = Optional.empty();
private Optional<String> deviceName = Optional.empty();
private Optional<String> deviceScreenResolution = Optional.empty();
private Optional<String> clientVersion = Optional.empty();
private Optional<String> platform = Optional.empty();
private Optional<String> clientFeatures = Optional.empty();
private Optional<String> model = Optional.empty();
private Optional<String> xPlexSessionId = Optional.empty();
private Optional<String> xPlexLanguage = Optional.empty();
private Optional<String> platformVersion = Optional.empty();
private String xPlexToken;
private Builder() {
// force use of static builder() method
}
/**
* An opaque identifier unique to the client (UUID, serial number, or other unique device ID)
*/
public Builder clientID(String clientID) {
Utils.checkNotNull(clientID, "clientID");
this.clientID = clientID;
return this;
}
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
public Builder clientName(String clientName) {
Utils.checkNotNull(clientName, "clientName");
this.clientName = Optional.ofNullable(clientName);
return this;
}
/**
* The name of the client application. (Plex Web, Plex Media Server, etc.)
*/
public Builder clientName(Optional<String> clientName) {
Utils.checkNotNull(clientName, "clientName");
this.clientName = clientName;
return this;
}
/**
* A relatively friendly name for the client device
*/
public Builder deviceNickname(String deviceNickname) {
Utils.checkNotNull(deviceNickname, "deviceNickname");
this.deviceNickname = Optional.ofNullable(deviceNickname);
return this;
}
/**
* A relatively friendly name for the client device
*/
public Builder deviceNickname(Optional<String> deviceNickname) {
Utils.checkNotNull(deviceNickname, "deviceNickname");
this.deviceNickname = deviceNickname;
return this;
}
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
public Builder deviceName(String deviceName) {
Utils.checkNotNull(deviceName, "deviceName");
this.deviceName = Optional.ofNullable(deviceName);
return this;
}
/**
* The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.)
*/
public Builder deviceName(Optional<String> deviceName) {
Utils.checkNotNull(deviceName, "deviceName");
this.deviceName = deviceName;
return this;
}
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
public Builder deviceScreenResolution(String deviceScreenResolution) {
Utils.checkNotNull(deviceScreenResolution, "deviceScreenResolution");
this.deviceScreenResolution = Optional.ofNullable(deviceScreenResolution);
return this;
}
/**
* The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440)
*/
public Builder deviceScreenResolution(Optional<String> deviceScreenResolution) {
Utils.checkNotNull(deviceScreenResolution, "deviceScreenResolution");
this.deviceScreenResolution = deviceScreenResolution;
return this;
}
/**
* The version of the client application.
*/
public Builder clientVersion(String clientVersion) {
Utils.checkNotNull(clientVersion, "clientVersion");
this.clientVersion = Optional.ofNullable(clientVersion);
return this;
}
/**
* The version of the client application.
*/
public Builder clientVersion(Optional<String> clientVersion) {
Utils.checkNotNull(clientVersion, "clientVersion");
this.clientVersion = clientVersion;
return this;
}
/**
* The platform of the client application.
*/
public Builder platform(String platform) {
Utils.checkNotNull(platform, "platform");
this.platform = Optional.ofNullable(platform);
return this;
}
/**
* The platform of the client application.
*/
public Builder platform(Optional<String> platform) {
Utils.checkNotNull(platform, "platform");
this.platform = platform;
return this;
}
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
public Builder clientFeatures(String clientFeatures) {
Utils.checkNotNull(clientFeatures, "clientFeatures");
this.clientFeatures = Optional.ofNullable(clientFeatures);
return this;
}
/**
* The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list)
*/
public Builder clientFeatures(Optional<String> clientFeatures) {
Utils.checkNotNull(clientFeatures, "clientFeatures");
this.clientFeatures = clientFeatures;
return this;
}
/**
* A potentially less friendly identifier for the device model
*/
public Builder model(String model) {
Utils.checkNotNull(model, "model");
this.model = Optional.ofNullable(model);
return this;
}
/**
* A potentially less friendly identifier for the device model
*/
public Builder model(Optional<String> model) {
Utils.checkNotNull(model, "model");
this.model = model;
return this;
}
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
public Builder xPlexSessionId(String xPlexSessionId) {
Utils.checkNotNull(xPlexSessionId, "xPlexSessionId");
this.xPlexSessionId = Optional.ofNullable(xPlexSessionId);
return this;
}
/**
* The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca)
*/
public Builder xPlexSessionId(Optional<String> xPlexSessionId) {
Utils.checkNotNull(xPlexSessionId, "xPlexSessionId");
this.xPlexSessionId = xPlexSessionId;
return this;
}
/**
* The language of the client application.
*/
public Builder xPlexLanguage(String xPlexLanguage) {
Utils.checkNotNull(xPlexLanguage, "xPlexLanguage");
this.xPlexLanguage = Optional.ofNullable(xPlexLanguage);
return this;
}
/**
* The language of the client application.
*/
public Builder xPlexLanguage(Optional<String> xPlexLanguage) {
Utils.checkNotNull(xPlexLanguage, "xPlexLanguage");
this.xPlexLanguage = xPlexLanguage;
return this;
}
/**
* The version of the platform
*/
public Builder platformVersion(String platformVersion) {
Utils.checkNotNull(platformVersion, "platformVersion");
this.platformVersion = Optional.ofNullable(platformVersion);
return this;
}
/**
* The version of the platform
*/
public Builder platformVersion(Optional<String> platformVersion) {
Utils.checkNotNull(platformVersion, "platformVersion");
this.platformVersion = platformVersion;
return this;
}
/**
* An authentication token, obtained from plex.tv
*/
public Builder xPlexToken(String xPlexToken) {
Utils.checkNotNull(xPlexToken, "xPlexToken");
this.xPlexToken = xPlexToken;
return this;
}
public GetUsersRequest build() {
return new GetUsersRequest(
clientID,
clientName,
deviceNickname,
deviceName,
deviceScreenResolution,
clientVersion,
platform,
clientFeatures,
model,
xPlexSessionId,
xPlexLanguage,
platformVersion,
xPlexToken);
}
}
}

View File

@@ -0,0 +1,45 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import dev.plexapi.sdk.utils.Utils;
import java.lang.String;
import java.util.Optional;
public class GetUsersRequestBuilder {
private GetUsersRequest request;
private Optional<String> serverURL = Optional.empty();
private final SDKMethodInterfaces.MethodCallGetUsers sdk;
public GetUsersRequestBuilder(SDKMethodInterfaces.MethodCallGetUsers sdk) {
this.sdk = sdk;
}
public GetUsersRequestBuilder request(GetUsersRequest request) {
Utils.checkNotNull(request, "request");
this.request = request;
return this;
}
public GetUsersRequestBuilder serverURL(String serverURL) {
Utils.checkNotNull(serverURL, "serverURL");
this.serverURL = Optional.of(serverURL);
return this;
}
public GetUsersRequestBuilder serverURL(Optional<String> serverURL) {
Utils.checkNotNull(serverURL, "serverURL");
this.serverURL = serverURL;
return this;
}
public GetUsersResponse call() throws Exception {
return sdk.getUsers(
request,
serverURL);
}
}

View File

@@ -0,0 +1,233 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.Response;
import dev.plexapi.sdk.utils.Utils;
import java.io.InputStream;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.net.http.HttpResponse;
import java.util.Objects;
import java.util.Optional;
public class GetUsersResponse implements Response {
/**
* HTTP response content type for this operation
*/
private String contentType;
/**
* HTTP response status code for this operation
*/
private int statusCode;
/**
* Raw HTTP response; suitable for custom response parsing
*/
private HttpResponse<InputStream> rawResponse;
private Optional<? extends byte[]> body;
@JsonCreator
public GetUsersResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse,
Optional<? extends byte[]> body) {
Utils.checkNotNull(contentType, "contentType");
Utils.checkNotNull(statusCode, "statusCode");
Utils.checkNotNull(rawResponse, "rawResponse");
Utils.checkNotNull(body, "body");
this.contentType = contentType;
this.statusCode = statusCode;
this.rawResponse = rawResponse;
this.body = body;
}
public GetUsersResponse(
String contentType,
int statusCode,
HttpResponse<InputStream> rawResponse) {
this(contentType, statusCode, rawResponse, Optional.empty());
}
/**
* HTTP response content type for this operation
*/
@JsonIgnore
public String contentType() {
return contentType;
}
/**
* HTTP response status code for this operation
*/
@JsonIgnore
public int statusCode() {
return statusCode;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
@JsonIgnore
public HttpResponse<InputStream> rawResponse() {
return rawResponse;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<byte[]> body() {
return (Optional<byte[]>) body;
}
public final static Builder builder() {
return new Builder();
}
/**
* HTTP response content type for this operation
*/
public GetUsersResponse withContentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public GetUsersResponse withStatusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public GetUsersResponse withRawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public GetUsersResponse withBody(byte[] body) {
Utils.checkNotNull(body, "body");
this.body = Optional.ofNullable(body);
return this;
}
public GetUsersResponse withBody(Optional<? extends byte[]> body) {
Utils.checkNotNull(body, "body");
this.body = body;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersResponse other = (GetUsersResponse) o;
return
Objects.deepEquals(this.contentType, other.contentType) &&
Objects.deepEquals(this.statusCode, other.statusCode) &&
Objects.deepEquals(this.rawResponse, other.rawResponse) &&
Objects.deepEquals(this.body, other.body);
}
@Override
public int hashCode() {
return Objects.hash(
contentType,
statusCode,
rawResponse,
body);
}
@Override
public String toString() {
return Utils.toString(GetUsersResponse.class,
"contentType", contentType,
"statusCode", statusCode,
"rawResponse", rawResponse,
"body", body);
}
public final static class Builder {
private String contentType;
private Integer statusCode;
private HttpResponse<InputStream> rawResponse;
private Optional<? extends byte[]> body = Optional.empty();
private Builder() {
// force use of static builder() method
}
/**
* HTTP response content type for this operation
*/
public Builder contentType(String contentType) {
Utils.checkNotNull(contentType, "contentType");
this.contentType = contentType;
return this;
}
/**
* HTTP response status code for this operation
*/
public Builder statusCode(int statusCode) {
Utils.checkNotNull(statusCode, "statusCode");
this.statusCode = statusCode;
return this;
}
/**
* Raw HTTP response; suitable for custom response parsing
*/
public Builder rawResponse(HttpResponse<InputStream> rawResponse) {
Utils.checkNotNull(rawResponse, "rawResponse");
this.rawResponse = rawResponse;
return this;
}
public Builder body(byte[] body) {
Utils.checkNotNull(body, "body");
this.body = Optional.ofNullable(body);
return this;
}
public Builder body(Optional<? extends byte[]> body) {
Utils.checkNotNull(body, "body");
this.body = body;
return this;
}
public GetUsersResponse build() {
return new GetUsersResponse(
contentType,
statusCode,
rawResponse,
body);
}
}
}

View File

@@ -0,0 +1,127 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.Objects;
import java.util.Optional;
/**
* GetUsersResponseBody - Successful response with media container data in XML
*/
public class GetUsersResponseBody {
/**
* Container holding user and server details.
*/
private Optional<? extends GetUsersMediaContainer> mediaContainer;
@JsonCreator
public GetUsersResponseBody(
Optional<? extends GetUsersMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
}
public GetUsersResponseBody() {
this(Optional.empty());
}
/**
* Container holding user and server details.
*/
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<GetUsersMediaContainer> mediaContainer() {
return (Optional<GetUsersMediaContainer>) mediaContainer;
}
public final static Builder builder() {
return new Builder();
}
/**
* Container holding user and server details.
*/
public GetUsersResponseBody withMediaContainer(GetUsersMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
/**
* Container holding user and server details.
*/
public GetUsersResponseBody withMediaContainer(Optional<? extends GetUsersMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersResponseBody other = (GetUsersResponseBody) o;
return
Objects.deepEquals(this.mediaContainer, other.mediaContainer);
}
@Override
public int hashCode() {
return Objects.hash(
mediaContainer);
}
@Override
public String toString() {
return Utils.toString(GetUsersResponseBody.class,
"mediaContainer", mediaContainer);
}
public final static class Builder {
private Optional<? extends GetUsersMediaContainer> mediaContainer = Optional.empty();
private Builder() {
// force use of static builder() method
}
/**
* Container holding user and server details.
*/
public Builder mediaContainer(GetUsersMediaContainer mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = Optional.ofNullable(mediaContainer);
return this;
}
/**
* Container holding user and server details.
*/
public Builder mediaContainer(Optional<? extends GetUsersMediaContainer> mediaContainer) {
Utils.checkNotNull(mediaContainer, "mediaContainer");
this.mediaContainer = mediaContainer;
return this;
}
public GetUsersResponseBody build() {
return new GetUsersResponseBody(
mediaContainer);
}
}
}

View File

@@ -0,0 +1,451 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.core.type.TypeReference;
import dev.plexapi.sdk.utils.LazySingletonValue;
import dev.plexapi.sdk.utils.Utils;
import java.lang.Long;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.Objects;
import java.util.Optional;
public class GetUsersServer {
/**
* Unique ID of the server of the connected user
*/
private long id;
/**
* ID of the actual Plex server.
*/
private long serverId;
/**
* Machine identifier of the Plex server.
*/
private String machineIdentifier;
/**
* Name of the Plex server of the connected user.
*/
private String name;
private long lastSeenAt;
/**
* Number of libraries in the server this user has access to.
*/
private long numLibraries;
private Optional<? extends AllLibraries> allLibraries;
private Optional<? extends Owned> owned;
private Optional<? extends Pending> pending;
@JsonCreator
public GetUsersServer(
long id,
long serverId,
String machineIdentifier,
String name,
long lastSeenAt,
long numLibraries,
Optional<? extends AllLibraries> allLibraries,
Optional<? extends Owned> owned,
Optional<? extends Pending> pending) {
Utils.checkNotNull(id, "id");
Utils.checkNotNull(serverId, "serverId");
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
Utils.checkNotNull(name, "name");
Utils.checkNotNull(lastSeenAt, "lastSeenAt");
Utils.checkNotNull(numLibraries, "numLibraries");
Utils.checkNotNull(allLibraries, "allLibraries");
Utils.checkNotNull(owned, "owned");
Utils.checkNotNull(pending, "pending");
this.id = id;
this.serverId = serverId;
this.machineIdentifier = machineIdentifier;
this.name = name;
this.lastSeenAt = lastSeenAt;
this.numLibraries = numLibraries;
this.allLibraries = allLibraries;
this.owned = owned;
this.pending = pending;
}
public GetUsersServer(
long id,
long serverId,
String machineIdentifier,
String name,
long lastSeenAt,
long numLibraries) {
this(id, serverId, machineIdentifier, name, lastSeenAt, numLibraries, Optional.empty(), Optional.empty(), Optional.empty());
}
/**
* Unique ID of the server of the connected user
*/
@JsonIgnore
public long id() {
return id;
}
/**
* ID of the actual Plex server.
*/
@JsonIgnore
public long serverId() {
return serverId;
}
/**
* Machine identifier of the Plex server.
*/
@JsonIgnore
public String machineIdentifier() {
return machineIdentifier;
}
/**
* Name of the Plex server of the connected user.
*/
@JsonIgnore
public String name() {
return name;
}
@JsonIgnore
public long lastSeenAt() {
return lastSeenAt;
}
/**
* Number of libraries in the server this user has access to.
*/
@JsonIgnore
public long numLibraries() {
return numLibraries;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<AllLibraries> allLibraries() {
return (Optional<AllLibraries>) allLibraries;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<Owned> owned() {
return (Optional<Owned>) owned;
}
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional<Pending> pending() {
return (Optional<Pending>) pending;
}
public final static Builder builder() {
return new Builder();
}
/**
* Unique ID of the server of the connected user
*/
public GetUsersServer withId(long id) {
Utils.checkNotNull(id, "id");
this.id = id;
return this;
}
/**
* ID of the actual Plex server.
*/
public GetUsersServer withServerId(long serverId) {
Utils.checkNotNull(serverId, "serverId");
this.serverId = serverId;
return this;
}
/**
* Machine identifier of the Plex server.
*/
public GetUsersServer withMachineIdentifier(String machineIdentifier) {
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
this.machineIdentifier = machineIdentifier;
return this;
}
/**
* Name of the Plex server of the connected user.
*/
public GetUsersServer withName(String name) {
Utils.checkNotNull(name, "name");
this.name = name;
return this;
}
public GetUsersServer withLastSeenAt(long lastSeenAt) {
Utils.checkNotNull(lastSeenAt, "lastSeenAt");
this.lastSeenAt = lastSeenAt;
return this;
}
/**
* Number of libraries in the server this user has access to.
*/
public GetUsersServer withNumLibraries(long numLibraries) {
Utils.checkNotNull(numLibraries, "numLibraries");
this.numLibraries = numLibraries;
return this;
}
public GetUsersServer withAllLibraries(AllLibraries allLibraries) {
Utils.checkNotNull(allLibraries, "allLibraries");
this.allLibraries = Optional.ofNullable(allLibraries);
return this;
}
public GetUsersServer withAllLibraries(Optional<? extends AllLibraries> allLibraries) {
Utils.checkNotNull(allLibraries, "allLibraries");
this.allLibraries = allLibraries;
return this;
}
public GetUsersServer withOwned(Owned owned) {
Utils.checkNotNull(owned, "owned");
this.owned = Optional.ofNullable(owned);
return this;
}
public GetUsersServer withOwned(Optional<? extends Owned> owned) {
Utils.checkNotNull(owned, "owned");
this.owned = owned;
return this;
}
public GetUsersServer withPending(Pending pending) {
Utils.checkNotNull(pending, "pending");
this.pending = Optional.ofNullable(pending);
return this;
}
public GetUsersServer withPending(Optional<? extends Pending> pending) {
Utils.checkNotNull(pending, "pending");
this.pending = pending;
return this;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
GetUsersServer other = (GetUsersServer) o;
return
Objects.deepEquals(this.id, other.id) &&
Objects.deepEquals(this.serverId, other.serverId) &&
Objects.deepEquals(this.machineIdentifier, other.machineIdentifier) &&
Objects.deepEquals(this.name, other.name) &&
Objects.deepEquals(this.lastSeenAt, other.lastSeenAt) &&
Objects.deepEquals(this.numLibraries, other.numLibraries) &&
Objects.deepEquals(this.allLibraries, other.allLibraries) &&
Objects.deepEquals(this.owned, other.owned) &&
Objects.deepEquals(this.pending, other.pending);
}
@Override
public int hashCode() {
return Objects.hash(
id,
serverId,
machineIdentifier,
name,
lastSeenAt,
numLibraries,
allLibraries,
owned,
pending);
}
@Override
public String toString() {
return Utils.toString(GetUsersServer.class,
"id", id,
"serverId", serverId,
"machineIdentifier", machineIdentifier,
"name", name,
"lastSeenAt", lastSeenAt,
"numLibraries", numLibraries,
"allLibraries", allLibraries,
"owned", owned,
"pending", pending);
}
public final static class Builder {
private Long id;
private Long serverId;
private String machineIdentifier;
private String name;
private Long lastSeenAt;
private Long numLibraries;
private Optional<? extends AllLibraries> allLibraries;
private Optional<? extends Owned> owned;
private Optional<? extends Pending> pending;
private Builder() {
// force use of static builder() method
}
/**
* Unique ID of the server of the connected user
*/
public Builder id(long id) {
Utils.checkNotNull(id, "id");
this.id = id;
return this;
}
/**
* ID of the actual Plex server.
*/
public Builder serverId(long serverId) {
Utils.checkNotNull(serverId, "serverId");
this.serverId = serverId;
return this;
}
/**
* Machine identifier of the Plex server.
*/
public Builder machineIdentifier(String machineIdentifier) {
Utils.checkNotNull(machineIdentifier, "machineIdentifier");
this.machineIdentifier = machineIdentifier;
return this;
}
/**
* Name of the Plex server of the connected user.
*/
public Builder name(String name) {
Utils.checkNotNull(name, "name");
this.name = name;
return this;
}
public Builder lastSeenAt(long lastSeenAt) {
Utils.checkNotNull(lastSeenAt, "lastSeenAt");
this.lastSeenAt = lastSeenAt;
return this;
}
/**
* Number of libraries in the server this user has access to.
*/
public Builder numLibraries(long numLibraries) {
Utils.checkNotNull(numLibraries, "numLibraries");
this.numLibraries = numLibraries;
return this;
}
public Builder allLibraries(AllLibraries allLibraries) {
Utils.checkNotNull(allLibraries, "allLibraries");
this.allLibraries = Optional.ofNullable(allLibraries);
return this;
}
public Builder allLibraries(Optional<? extends AllLibraries> allLibraries) {
Utils.checkNotNull(allLibraries, "allLibraries");
this.allLibraries = allLibraries;
return this;
}
public Builder owned(Owned owned) {
Utils.checkNotNull(owned, "owned");
this.owned = Optional.ofNullable(owned);
return this;
}
public Builder owned(Optional<? extends Owned> owned) {
Utils.checkNotNull(owned, "owned");
this.owned = owned;
return this;
}
public Builder pending(Pending pending) {
Utils.checkNotNull(pending, "pending");
this.pending = Optional.ofNullable(pending);
return this;
}
public Builder pending(Optional<? extends Pending> pending) {
Utils.checkNotNull(pending, "pending");
this.pending = pending;
return this;
}
public GetUsersServer build() {
if (allLibraries == null) {
allLibraries = _SINGLETON_VALUE_AllLibraries.value();
}
if (owned == null) {
owned = _SINGLETON_VALUE_Owned.value();
}
if (pending == null) {
pending = _SINGLETON_VALUE_Pending.value();
} return new GetUsersServer(
id,
serverId,
machineIdentifier,
name,
lastSeenAt,
numLibraries,
allLibraries,
owned,
pending);
}
private static final LazySingletonValue<Optional<? extends AllLibraries>> _SINGLETON_VALUE_AllLibraries =
new LazySingletonValue<>(
"allLibraries",
"0",
new TypeReference<Optional<? extends AllLibraries>>() {});
private static final LazySingletonValue<Optional<? extends Owned>> _SINGLETON_VALUE_Owned =
new LazySingletonValue<>(
"owned",
"0",
new TypeReference<Optional<? extends Owned>>() {});
private static final LazySingletonValue<Optional<? extends Pending>> _SINGLETON_VALUE_Pending =
new LazySingletonValue<>(
"pending",
"0",
new TypeReference<Optional<? extends Pending>>() {});
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* Home - Indicates if the user is part of a home group.
*/
public enum Home {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private Home(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<Home> fromValue(int value) {
for (Home o: Home.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

View File

@@ -0,0 +1,37 @@
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
import java.util.Optional;
/**
* Owned - Indicates if the user owns the server.
*/
public enum Owned {
Disable(0),
Enable(1);
@JsonValue
private final int value;
private Owned(int value) {
this.value = value;
}
public int value() {
return value;
}
public static Optional<Owned> fromValue(int value) {
for (Owned o: Owned.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
}
return Optional.empty();
}
}

Some files were not shown because too many files have changed in this diff Show More