From 187d45860af77db0a350779669ce8e4f5352d02e Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 9 Apr 2024 08:18:45 +0200 Subject: [PATCH] V14: Add cancellation tokens to all endpoints (#15984) * Add CancellationToken to controllers * Fix GetManagementApiUrl * Forgotten Item and Tree controllers * Document Blueprint and Version endpoints * Fix merge conflict * Cleanup --------- Co-authored-by: Elitsa --- .../Controllers/AuditLog/ByKeyAuditLogController.cs | 2 +- .../Controllers/AuditLog/ByTypeAuditLogController.cs | 2 +- .../Controllers/AuditLog/CurrentUserAuditLogController.cs | 2 +- .../Controllers/BackOfficeLoginController.cs | 2 +- .../Controllers/Culture/AllCultureController.cs | 2 +- .../Controllers/DataType/ByKeyDataTypeController.cs | 2 +- .../DataType/ConfigurationDataTypeController.cs | 2 +- .../Controllers/DataType/CopyDataTypeController.cs | 2 +- .../Controllers/DataType/CreateDataTypeController.cs | 2 +- .../Controllers/DataType/DeleteDataTypeController.cs | 2 +- .../DataType/Filter/FilterDataTypeFilterController.cs | 1 + .../DataType/Folder/ByKeyDataTypeFolderController.cs | 2 +- .../DataType/Folder/CreateDataTypeFolderController.cs | 2 +- .../DataType/Folder/DeleteDataTypeFolderController.cs | 2 +- .../DataType/Folder/UpdateDataTypeFolderController.cs | 5 ++++- .../Controllers/DataType/IsUsedDataTypeController.cs | 2 +- .../DataType/Item/ItemDatatypeItemController.cs | 4 +++- .../DataType/Item/SearchDataTypeItemController.cs | 2 +- .../Controllers/DataType/MoveDataTypeController.cs | 2 +- .../Controllers/DataType/ReferencesDataTypeController.cs | 2 +- .../DataType/Tree/AncestorsDataTypeTreeController.cs | 2 +- .../DataType/Tree/ChildrenDataTypeTreeController.cs | 2 +- .../DataType/Tree/RootDataTypeTreeController.cs | 2 +- .../Controllers/DataType/UpdateDataTypeController.cs | 2 +- .../Controllers/Dictionary/AllDictionaryController.cs | 6 +++++- .../Controllers/Dictionary/ByKeyDictionaryController.cs | 2 +- .../Controllers/Dictionary/CreateDictionaryController.cs | 6 ++++-- .../Controllers/Dictionary/DeleteDictionaryController.cs | 2 +- .../Controllers/Dictionary/ExportDictionaryController.cs | 2 +- .../Controllers/Dictionary/ImportDictionaryController.cs | 4 +++- .../Dictionary/Item/ItemDictionaryItemController.cs | 4 +++- .../Controllers/Dictionary/MoveDictionaryController.cs | 5 ++++- .../Dictionary/Tree/AncestorsDictionaryTreeController.cs | 2 +- .../Dictionary/Tree/ChildrenDictionaryTreeController.cs | 2 +- .../Dictionary/Tree/RootDictionaryTreeController.cs | 2 +- .../Controllers/Dictionary/UpdateDictionaryController.cs | 7 +++++-- .../Controllers/Document/ByKeyDocumentController.cs | 2 +- .../Collection/ByKeyDocumentCollectionController.cs | 1 + .../Document/ConfigurationDocumentController.cs | 2 +- .../Controllers/Document/CopyDocumentController.cs | 5 ++++- .../Controllers/Document/CreateDocumentController.cs | 4 +++- .../Document/CreatePublicAccessDocumentController.cs | 5 ++++- .../Controllers/Document/DeleteDocumentController.cs | 2 +- .../Document/DeletePublicAccessDocumentController.cs | 2 +- .../Controllers/Document/DomainsController.cs | 2 +- .../Document/GetPublicAccessDocumentController.cs | 2 +- .../Document/Item/ItemDocumentItemController.cs | 4 +++- .../Document/Item/SearchDocumentItemController.cs | 2 +- .../Controllers/Document/MoveDocumentController.cs | 2 +- .../Document/MoveToRecycleBinDocumentController.cs | 2 +- .../Controllers/Document/NotificationsController.cs | 2 +- .../Controllers/Document/PublishDocumentController.cs | 2 +- .../Document/PublishDocumentWithDescendantsController.cs | 2 +- .../RecycleBin/ChildrenDocumentRecycleBinController.cs | 6 +++++- .../RecycleBin/DeleteDocumentRecycleBinController.cs | 2 +- .../RecycleBin/EmptyDocumentRecycleBinController.cs | 2 +- .../OriginalParentDocumentRecycleBinController.cs | 2 +- .../RecycleBin/RestoreDocumentRecycleBinController.cs | 2 +- .../RecycleBin/RootDocumentRecycleBinController.cs | 5 ++++- .../References/AreReferencedDocumentController.cs | 6 +++++- .../Document/References/ReferencedByDocumentController.cs | 1 + .../References/ReferencedDescendantsDocumentController.cs | 6 +++++- .../Controllers/Document/SortDocumentController.cs | 2 +- .../Document/Tree/AncestorsDocumentTreeController.cs | 2 +- .../Document/Tree/ChildrenDocumentTreeController.cs | 2 +- .../Document/Tree/RootDocumentTreeController.cs | 6 +++++- .../Controllers/Document/UnpublishDocumentController.cs | 2 +- .../Controllers/Document/UpdateDocumentController.cs | 5 ++++- .../Controllers/Document/UpdateDomainsController.cs | 5 ++++- .../Controllers/Document/UpdateNotificationsController.cs | 2 +- .../Document/UpdatePublicAccessDocumentController.cs | 2 +- .../Document/ValidateCreateDocumentController.cs | 2 +- .../Document/ValidateUpdateDocumentController.cs | 2 +- .../DocumentBlueprint/ByKeyDocumentBlueprintController.cs | 2 +- .../CreateDocumentBlueprintController.cs | 2 +- .../CreateDocumentBlueprintFromDocumentController.cs | 2 +- .../DeleteDocumentBlueprintController.cs | 2 +- .../Item/ItemDocumentBlueprintController.cs | 4 +++- .../Tree/RootDocumentBlueprintTreeController.cs | 6 +++++- .../UpdateDocumentBlueprintController.cs | 2 +- .../DocumentType/AllowedAtRootDocumentTypeController.cs | 2 +- .../DocumentType/AllowedChildrenDocumentTypeController.cs | 6 +++++- .../AvailableCompositionDocumentTypeController.cs | 4 +++- .../DocumentType/ByKeyDocumentTypeController.cs | 2 +- .../CompositionReferenceDocumentTypeController.cs | 2 +- .../DocumentType/ConfigurationDocumentTypeController.cs | 2 +- .../DocumentType/CopyDocumentTypeController.cs | 5 ++++- .../DocumentType/CreateDocumentTypeController.cs | 4 +++- .../DocumentType/DeleteDocumentTypeController.cs | 2 +- .../Folder/ByKeyDocumentTypeFolderController.cs | 2 +- .../Folder/CreateDocumentTypeFolderController.cs | 4 +++- .../Folder/DeleteDocumentTypeFolderController.cs | 2 +- .../Folder/UpdateDocumentTypeFolderController.cs | 5 ++++- .../DocumentType/Item/ItemDocumentTypeItemController.cs | 4 +++- .../DocumentType/Item/SearchDocumentTypeItemController.cs | 2 +- .../DocumentType/MoveDocumentTypeController.cs | 5 ++++- .../Tree/AncestorsDocumentTypeTreeController.cs | 2 +- .../Tree/ChildrenDocumentTypeTreeController.cs | 7 ++++++- .../DocumentType/Tree/RootDocumentTypeTreeController.cs | 6 +++++- .../DocumentType/UpdateDocumentTypeController.cs | 5 ++++- .../DocumentVersion/AllDocumentVersionController.cs | 7 ++++++- .../DocumentVersion/ByKeyDocumentVersionController.cs | 2 +- .../DocumentVersion/RollbackDocumentVersionController.cs | 2 +- .../UpdatePreventCleanupDocumentVersionController.cs | 2 +- .../Controllers/DynamicRoot/GetDynamicRootController.cs | 2 +- .../Controllers/DynamicRoot/GetQueryStepsController.cs | 2 +- .../HealthCheck/ExecuteActionHealthCheckController.cs | 4 +++- .../HealthCheck/Group/AllHealthCheckGroupController.cs | 5 ++++- .../HealthCheck/Group/ByNameHealthCheckGroupController.cs | 4 +++- .../HealthCheck/Group/CheckHealthCheckGroupController.cs | 4 +++- .../Controllers/Help/GetHelpController.cs | 8 +++++++- .../Controllers/Indexer/AllIndexerController.cs | 5 ++++- .../Controllers/Indexer/DetailsIndexerController.cs | 2 +- .../Controllers/Indexer/RebuildIndexerController.cs | 2 +- .../Controllers/Install/SettingsInstallController.cs | 2 +- .../Controllers/Install/SetupInstallController.cs | 2 +- .../Install/ValidateDatabaseInstallController.cs | 4 +++- .../Controllers/Language/AllLanguageController.cs | 5 ++++- .../Controllers/Language/ByIsoCodeLanguageController.cs | 2 +- .../Controllers/Language/CreateLanguageController.cs | 4 +++- .../Controllers/Language/DeleteLanguageController.cs | 2 +- .../Language/Item/ItemsLanguageEntityController.cs | 4 +++- .../Controllers/Language/UpdateLanguageController.cs | 5 ++++- .../Controllers/LogViewer/AllLogViewerController.cs | 1 + .../LogViewer/AllMessageTemplateLogViewerController.cs | 1 + .../LogViewer/AllSinkLevelLogViewerController.cs | 5 ++++- .../LogViewer/LogLevelCountLogViewerController.cs | 5 ++++- .../SavedSearch/AllSavedSearchLogViewerController.cs | 5 ++++- .../SavedSearch/ByNameSavedSearchLogViewerController.cs | 4 +++- .../SavedSearch/CreateSavedSearchLogViewerController.cs | 2 +- .../SavedSearch/DeleteSavedSearchLogViewerController.cs | 2 +- .../LogViewer/ValidateLogFileSizeLogViewerController.cs | 5 ++++- .../Controllers/Media/ByKeyMediaController.cs | 2 +- .../Media/Collection/ByKeyMediaCollectionController.cs | 1 + .../Controllers/Media/ConfigurationMediaController.cs | 2 +- .../Controllers/Media/CreateMediaController.cs | 4 +++- .../Controllers/Media/DeleteMediaController.cs | 2 +- .../Controllers/Media/Item/ItemMediaItemController.cs | 4 +++- .../Controllers/Media/Item/SearchMediaItemController.cs | 2 +- .../Controllers/Media/MoveMediaController.cs | 5 ++++- .../Controllers/Media/MoveToRecycleBinMediaController.cs | 2 +- .../Media/RecycleBin/ChildrenMediaRecycleBinController.cs | 6 +++++- .../Media/RecycleBin/DeleteMediaRecycleBinController.cs | 2 +- .../Media/RecycleBin/EmptyMediaRecycleBinController.cs | 2 +- .../RecycleBin/OriginalParentMediaRecycleBinController.cs | 4 +++- .../Media/RecycleBin/RestoreMediaRecycleBinController.cs | 5 ++++- .../Media/RecycleBin/RootMediaRecycleBinController.cs | 5 ++++- .../Media/References/AreReferencedMediaController.cs | 6 +++++- .../Media/References/ReferencedByMediaController.cs | 1 + .../References/ReferencedDescendantsMediaController.cs | 6 +++++- .../Controllers/Media/SortMediaController.cs | 2 +- .../Media/Tree/AncestorsMediaTreeController.cs | 4 +++- .../Controllers/Media/Tree/ChildrenMediaTreeController.cs | 7 ++++++- .../Controllers/Media/Tree/RootMediaTreeController.cs | 6 +++++- .../Controllers/Media/UpdateMediaController.cs | 5 ++++- .../Controllers/Media/ValidateCreateMediaController.cs | 2 +- .../Controllers/Media/ValidateUpdateMediaController.cs | 2 +- .../MediaType/AllowedAtRootMediaTypeController.cs | 2 +- .../MediaType/AllowedChildrenMediaTypeController.cs | 6 +++++- .../MediaType/AvailableCompositionMediaTypeController.cs | 4 +++- .../Controllers/MediaType/ByKeyMediaTypeController.cs | 2 +- .../MediaType/CompositionReferenceMediaTypeController.cs | 2 +- .../Controllers/MediaType/CopyMediaTypeController.cs | 5 ++++- .../Controllers/MediaType/CreateMediaTypeController.cs | 4 +++- .../Controllers/MediaType/DeleteMediaTypeController.cs | 2 +- .../MediaType/Folder/ByKeyMediaTypeFolderController.cs | 2 +- .../MediaType/Folder/CreateMediaTypeFolderController.cs | 4 +++- .../MediaType/Folder/DeleteMediaTypeFolderController.cs | 3 ++- .../MediaType/Folder/UpdateMediaTypeFolderController.cs | 5 ++++- .../MediaType/Item/ItemMediaTypeItemController.cs | 4 +++- .../MediaType/Item/SearchMediaTypeItemController.cs | 2 +- .../Controllers/MediaType/MoveMediaTypeController.cs | 5 ++++- .../MediaType/Tree/AncestorsMediaTypeTreeController.cs | 4 +++- .../MediaType/Tree/ChildrenMediaTypeTreeController.cs | 7 ++++++- .../MediaType/Tree/RootMediaTypeTreeController.cs | 6 +++++- .../Controllers/MediaType/UpdateMediaTypeController.cs | 5 ++++- .../Controllers/Member/ByKeyMemberController.cs | 2 +- .../Controllers/Member/ConfigurationMemberController.cs | 2 +- .../Controllers/Member/CreateMemberController.cs | 2 +- .../Controllers/Member/DeleteMemberController.cs | 2 +- .../Member/Filter/FilterMemberFilterController.cs | 1 + .../Controllers/Member/Item/ItemMemberItemController.cs | 4 +++- .../Controllers/Member/Item/SearchMemberItemController.cs | 2 +- .../Controllers/Member/UpdateMemberController.cs | 5 ++++- .../Controllers/Member/ValidateCreateMemberController.cs | 4 +++- .../Controllers/Member/ValidateUpdateMemberController.cs | 5 ++++- .../Controllers/MemberGroup/AllMemberGroupController.cs | 5 ++++- .../Controllers/MemberGroup/ByKeyMemberGroupController.cs | 2 +- .../MemberGroup/CreateMemberGroupController.cs | 2 +- .../MemberGroup/DeleteMemberGroupController.cs | 2 +- .../MemberGroup/Item/ItemMemberGroupItemController.cs | 4 +++- .../MemberGroup/Tree/RootMemberGroupTreeController.cs | 5 ++++- .../MemberGroup/UpdateMemberGroupController.cs | 5 ++++- .../AvailableCompositionMemberTypeController.cs | 4 +++- .../Controllers/MemberType/ByKeyMemberTypeController.cs | 2 +- .../CompositionReferenceMemberTypeController.cs | 2 +- .../Controllers/MemberType/CopyMemberTypeController.cs | 2 +- .../Controllers/MemberType/CreateMemberTypeController.cs | 4 +++- .../Controllers/MemberType/DeleteMemberTypeController.cs | 2 +- .../MemberType/Item/ItemMemberTypeItemController.cs | 4 +++- .../MemberType/Item/SearchMemberTypeItemController.cs | 2 +- .../MemberType/Tree/RootMemberTypeTreeController.cs | 5 ++++- .../Controllers/MemberType/UpdateMemberTypeController.cs | 5 ++++- .../ModelsBuilder/BuildModelsBuilderController.cs | 2 +- .../ModelsBuilder/GetModelsBuilderController.cs | 3 ++- .../ModelsBuilder/StatusModelsBuilderController.cs | 2 +- .../ObjectTypes/AllowedObjectTypesController.cs | 2 +- .../Package/AllMigrationStatusPackageController.cs | 5 ++++- .../Controllers/Package/AllPackageManifestController.cs | 2 +- .../Controllers/Package/ConfigurationPackageController.cs | 2 +- .../Package/Created/AllCreatedPackageController.cs | 5 ++++- .../Package/Created/ByKeyCreatedPackageController.cs | 2 +- .../Package/Created/CreateCreatedPackageController.cs | 4 +++- .../Package/Created/DeleteCreatedPackageController.cs | 2 +- .../Package/Created/DownloadCreatedPackageController.cs | 2 +- .../Package/Created/UpdateCreatedPackageController.cs | 5 ++++- .../Package/PublicPackageManifestController.cs | 2 +- .../Controllers/Package/RunMigrationPackageController.cs | 2 +- .../PartialView/ByPathPartialViewController.cs | 2 +- .../PartialView/CreatePartialViewController.cs | 4 +++- .../PartialView/DeletePartialViewController.cs | 2 +- .../Folder/ByPathPartialViewFolderController.cs | 2 +- .../Folder/CreatePartialViewFolderController.cs | 4 +++- .../Folder/DeletePartialViewFolderController.cs | 4 +++- .../PartialView/Item/ItemPartialViewItemController.cs | 4 +++- .../PartialView/RenamePartialViewController.cs | 5 ++++- .../Controllers/PartialView/Snippet/ByIdController.cs | 4 +++- .../Controllers/PartialView/Snippet/GetAllController.cs | 2 +- .../Tree/AncestorsPartialViewTreeController.cs | 4 +++- .../PartialView/Tree/ChildrenPartialViewTreeController.cs | 6 +++++- .../PartialView/Tree/RootPartialViewTreeController.cs | 5 ++++- .../PartialView/UpdatePartialViewController.cs | 5 ++++- .../Controllers/Preview/EndPreviewController.cs | 2 +- .../Controllers/Preview/EnterPreviewController.cs | 2 +- .../Controllers/Profiling/GetStatusProfilingController.cs | 2 +- .../Profiling/UpdateStatusProfilingController.cs | 4 +++- .../PropertyType/IsUsedPropertyTypeController.cs | 2 +- .../PublishedCache/CollectPublishedCacheController.cs | 2 +- .../PublishedCache/RebuildPublishedCacheController.cs | 2 +- .../PublishedCache/ReloadPublishedCacheController.cs | 2 +- .../PublishedCache/StatusPublishedCacheController.cs | 2 +- .../ByKeyRedirectUrlManagementController.cs | 6 +++++- .../DeleteByKeyRedirectUrlManagementController.cs | 2 +- .../GetAllRedirectUrlManagementController.cs | 6 +++++- .../GetStatusRedirectUrlManagementController.cs | 2 +- .../SetStatusRedirectUrlManagementController.cs | 2 +- .../Relation/ByRelationTypeKeyRelationController.cs | 6 +++++- .../Controllers/RelationType/AllRelationTypeController.cs | 5 ++++- .../RelationType/ByKeyRelationTypeController.cs | 2 +- .../RelationType/Item/ItemRelationTypeItemController.cs | 4 +++- .../Controllers/Script/ByPathScriptController.cs | 2 +- .../Controllers/Script/CreateScriptController.cs | 2 +- .../Controllers/Script/DeleteScriptController.cs | 2 +- .../Script/Folder/ByPathScriptFolderController.cs | 2 +- .../Script/Folder/CreateScriptFolderController.cs | 4 +++- .../Script/Folder/DeleteScriptFolderController.cs | 2 +- .../Controllers/Script/Item/ItemScriptItemController.cs | 4 +++- .../Controllers/Script/RenameScriptController.cs | 5 ++++- .../Script/Tree/AncestorsScriptTreeController.cs | 4 +++- .../Script/Tree/ChildrenScriptTreeController.cs | 6 +++++- .../Controllers/Script/Tree/RootScriptTreeController.cs | 5 ++++- .../Controllers/Script/UpdateScriptController.cs | 5 ++++- .../Controllers/Searcher/AllSearcherController.cs | 5 ++++- .../Controllers/Searcher/QuerySearcherController.cs | 7 ++++++- .../Controllers/Security/BackOfficeController.cs | 8 ++++---- .../Controllers/Security/BackOfficeDefaultController.cs | 2 +- .../Security/ConfigurationSecurityController.cs | 2 +- .../Controllers/Security/ResetPasswordController.cs | 2 +- .../Controllers/Security/ResetPasswordTokenController.cs | 2 +- .../Security/VerifyResetPasswordTokenController.cs | 4 +++- .../Controllers/Server/ConfigurationServerController.cs | 2 +- .../Controllers/Server/InformationServerController.cs | 2 +- .../Controllers/Server/StatusServerController.cs | 2 +- .../Controllers/Server/TroubleshootingServerController.cs | 2 +- .../StaticFile/Item/ItemStaticFileItemController.cs | 4 +++- .../StaticFile/Tree/AncestorsStaticFileTreeController.cs | 4 +++- .../StaticFile/Tree/ChildrenStaticFileTreeController.cs | 6 +++++- .../StaticFile/Tree/RootStaticFileTreeController.cs | 5 ++++- .../Controllers/Stylesheet/ByPathStylesheetController.cs | 2 +- .../Controllers/Stylesheet/CreateStylesheetController.cs | 4 +++- .../Controllers/Stylesheet/DeleteStylesheetController.cs | 2 +- .../Stylesheet/Folder/ByPathStylesheetFolderController.cs | 2 +- .../Stylesheet/Folder/CreateStylesheetFolderController.cs | 4 +++- .../Stylesheet/Folder/DeleteStylesheetFolderController.cs | 2 +- .../Stylesheet/Item/ItemStylesheetItemController.cs | 4 +++- .../Controllers/Stylesheet/RenameStylesheetController.cs | 5 ++++- .../Stylesheet/Tree/AncestorsStylesheetTreeController.cs | 4 +++- .../Stylesheet/Tree/ChildrenStylesheetTreeController.cs | 6 +++++- .../Stylesheet/Tree/RootStylesheetTreeController.cs | 5 ++++- .../Controllers/Stylesheet/UpdateStylesheetController.cs | 5 ++++- .../Controllers/Tag/ByQueryTagController.cs | 8 +++++++- .../Controllers/Telemetry/AllTelemetryController.cs | 5 ++++- .../Controllers/Telemetry/GetTelemetryController.cs | 3 ++- .../Controllers/Telemetry/SetTelemetryController.cs | 4 +++- .../Controllers/Template/ByKeyTemplateController.cs | 2 +- .../Template/ConfigurationTemplateController.cs | 2 +- .../Controllers/Template/CreateTemplateController.cs | 2 +- .../Controllers/Template/DeleteTemplateController.cs | 2 +- .../Template/Item/ItemTemplateItemController.cs | 4 +++- .../Template/Item/SearchTemplateItemController.cs | 2 +- .../Template/Query/ExecuteTemplateQueryController.cs | 4 +++- .../Template/Query/SettingsTemplateQueryController.cs | 2 +- .../Template/Tree/AncestorsTemplateTreeController.cs | 4 +++- .../Template/Tree/ChildrenTemplateTreeController.cs | 6 +++++- .../Template/Tree/RootTemplateTreeController.cs | 5 ++++- .../Controllers/Template/UpdateTemplateController.cs | 5 ++++- .../TemporaryFile/ByKeyTemporaryFileController.cs | 2 +- .../TemporaryFile/ConfigurationTemporaryFileController.cs | 2 +- .../TemporaryFile/CreateTemporaryFileController.cs | 4 +++- .../TemporaryFile/DeleteTemporaryFileController.cs | 2 +- .../Controllers/Tour/GetTourController.cs | 2 +- .../Controllers/Tour/SetTourController.cs | 2 +- .../Controllers/Upgrade/AuthorizeUpgradeController.cs | 2 +- .../Controllers/Upgrade/SettingsUpgradeController.cs | 2 +- .../Controllers/User/BulkDeleteUserController.cs | 2 +- .../Controllers/User/ByKeyUserController.cs | 2 +- .../Controllers/User/ChangePasswordUserController.cs | 5 ++++- .../Controllers/User/ClearAvatarUserController.cs | 2 +- .../Controllers/User/ConfigurationUserController.cs | 3 ++- .../User/CreateInitialPasswordUserController.cs | 4 +++- .../Controllers/User/CreateUserController.cs | 2 +- .../User/Current/ChangePasswordCurrentUserController.cs | 4 +++- .../User/Current/ConfigurationCurrentUserController.cs | 2 +- .../DisableTwoFactorProviderCurrentUserController.cs | 5 ++++- .../EnableTwoFactorProviderCurrentUserController.cs | 5 ++++- .../Controllers/User/Current/GetCurrentUserController.cs | 2 +- .../GetDocumentPermissionsCurrentUserController.cs | 4 +++- .../User/Current/GetLinkedLoginsCurrentUserController.cs | 2 +- .../Current/GetMediaPermissionsCurrentUserController.cs | 4 +++- .../User/Current/GetPermissionsCurrentUserController.cs | 4 +++- .../GetTwoFactorSetupForProviderCurrentUserController.cs | 2 +- .../ListTwoFactorProvidersCurrentUserController.cs | 2 +- .../User/Current/SetAvatarCurrentUserController.cs | 2 +- .../Controllers/User/DeleteUserController.cs | 2 +- .../User/DisableTwoFactorProviderUserController.cs | 5 ++++- .../Controllers/User/DisableUserController.cs | 2 +- .../Controllers/User/EnableUserController.cs | 2 +- .../Controllers/User/Filter/FilterUserFilterController.cs | 1 + .../Controllers/User/GetAllUserController.cs | 2 +- .../Controllers/User/InviteUsersController.cs | 2 +- .../Controllers/User/Item/ItemUserItemController.cs | 2 +- .../User/ListTwoFactorProvidersUserController.cs | 2 +- .../Controllers/User/ResendInviteUserController.cs | 4 +++- .../Controllers/User/ResetPasswordUserController.cs | 2 +- .../Controllers/User/SetAvatarUserController.cs | 2 +- .../Controllers/User/UnlockUserController.cs | 2 +- .../Controllers/User/UpdateUserController.cs | 2 +- .../Controllers/User/UpdateUserGroupsUserController.cs | 4 +++- .../Controllers/User/VerifyInviteUserController.cs | 2 +- .../UserGroup/AddUsersToUserGroupController.cs | 2 +- .../UserGroup/BulkDeleteUserGroupsController.cs | 2 +- .../Controllers/UserGroup/ByKeyUserGroupController.cs | 2 +- .../Controllers/UserGroup/CreateUserGroupController.cs | 2 +- .../Controllers/UserGroup/DeleteUserGroupController.cs | 2 +- .../Controllers/UserGroup/GetAllUserGroupController.cs | 5 ++++- .../UserGroup/Item/ItemUserGroupItemController.cs | 4 +++- .../UserGroup/RemoveUsersFromUserGroupController.cs | 2 +- .../Controllers/UserGroup/UpdateUserGroupController.cs | 5 ++++- .../Controllers/Webhook/AllWebhookController.cs | 5 ++++- .../Controllers/Webhook/ByKeyWebhookController.cs | 3 +-- .../Controllers/Webhook/CreateWebhookController.cs | 4 +++- .../Controllers/Webhook/DeleteWebhookController.cs | 2 +- .../Webhook/Item/ItemsWebhookEntityController.cs | 4 +++- .../Controllers/Webhook/UpdateWebhookController.cs | 5 ++++- .../ManagementApi/ManagementApiTest.cs | 8 ++++---- .../Policies/ByKeyAuditLogControllerTests.cs | 2 +- .../ManagementApi/Preview/EndPreviewTests.cs | 3 +-- .../ManagementApi/Preview/EnterPreviewTests.cs | 2 +- .../TestServerTest/UmbracoTestServerTestBase.cs | 8 ++++++++ 369 files changed, 830 insertions(+), 369 deletions(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByKeyAuditLogController.cs b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByKeyAuditLogController.cs index 5fd59656ab..ca8e7c32a3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByKeyAuditLogController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByKeyAuditLogController.cs @@ -28,7 +28,7 @@ public class ByKeyAuditLogController : AuditLogControllerBase [HttpGet("{id:guid}")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task ByKey(Guid id, Direction orderDirection = Direction.Descending, DateTime? sinceDate = null, int skip = 0, int take = 100) + public async Task ByKey(CancellationToken cancellationToken, Guid id, Direction orderDirection = Direction.Descending, DateTime? sinceDate = null, int skip = 0, int take = 100) { PagedModel result = await _auditService.GetItemsByKeyAsync(id, skip, take, orderDirection, sinceDate); IEnumerable mapped = _auditLogPresentationFactory.CreateAuditLogViewModel(result.Items); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByTypeAuditLogController.cs b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByTypeAuditLogController.cs index 0f6625df73..d2dd392bba 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByTypeAuditLogController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/ByTypeAuditLogController.cs @@ -24,7 +24,7 @@ public class ByTypeAuditLogController : AuditLogControllerBase [HttpGet("type/{logType}")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task ByType(AuditType logType, DateTime? sinceDate = null, int skip = 0, int take = 100) + public async Task ByType(CancellationToken cancellationToken, AuditType logType, DateTime? sinceDate = null, int skip = 0, int take = 100) { IAuditItem[] result = _auditService.GetLogs(logType, sinceDate).ToArray(); IEnumerable mapped = _auditLogPresentationFactory.CreateAuditLogViewModel(result.Skip(skip).Take(take)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/CurrentUserAuditLogController.cs b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/CurrentUserAuditLogController.cs index 0867e0796c..4172a4e857 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/CurrentUserAuditLogController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/AuditLog/CurrentUserAuditLogController.cs @@ -32,7 +32,7 @@ public class CurrentUserAuditLogController : AuditLogControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task CurrentUser(Direction orderDirection = Direction.Descending, DateTime? sinceDate = null, int skip = 0, int take = 100) + public async Task CurrentUser(CancellationToken cancellationToken, Direction orderDirection = Direction.Descending, DateTime? sinceDate = null, int skip = 0, int take = 100) { // FIXME: Pull out current backoffice user when its implemented. // var userId = _backOfficeSecurityAccessor.BackOfficeSecurity?.GetUserId().Result ?? -1; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/BackOfficeLoginController.cs b/src/Umbraco.Cms.Api.Management/Controllers/BackOfficeLoginController.cs index df6d8b80f8..9cb134e9a9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/BackOfficeLoginController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/BackOfficeLoginController.cs @@ -38,7 +38,7 @@ public class BackOfficeLoginController : Controller } // GET - public IActionResult Index(BackOfficeLoginModel model) + public IActionResult Index(CancellationToken cancellationToken, BackOfficeLoginModel model) { if (string.IsNullOrEmpty(model.UmbracoUrl)) { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index c1105c7391..76c2a493da 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -22,7 +22,7 @@ public class AllCultureController : CultureControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task> GetAll(int skip = 0, int take = 100) + public async Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { CultureInfo[] all = CultureInfo.GetCultures(CultureTypes.AllCultures) .DistinctBy(x => x.Name) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs index 6c4842ff3e..5418f78a49 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs @@ -24,7 +24,7 @@ public class ByKeyDataTypeController : DataTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DataTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IDataType? dataType = await _dataTypeService.GetAsync(id); if (dataType == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs index fb6c4f871a..3f6f7c54fe 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs @@ -18,7 +18,7 @@ public class ConfigurationDataTypeController : DataTypeControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DatatypeConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { var responseModel = new DatatypeConfigurationResponseModel { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs index 8d59bb3a1f..2bafe73532 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs @@ -26,7 +26,7 @@ public class CopyDataTypeController : DataTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Copy(Guid id, CopyDataTypeRequestModel copyDataTypeRequestModel) + public async Task Copy(CancellationToken cancellationToken, Guid id, CopyDataTypeRequestModel copyDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); if (source is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs index acc75af1ed..9275e25001 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs @@ -30,7 +30,7 @@ public class CreateDataTypeController : DataTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateDataTypeRequestModel createDataTypeRequestModel) + public async Task Create(CancellationToken cancellationToken, CreateDataTypeRequestModel createDataTypeRequestModel) { var attempt = await _dataTypePresentationFactory.CreateAsync(createDataTypeRequestModel); if (!attempt.Success) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs index ee55587af8..aed80dc5fe 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs @@ -26,7 +26,7 @@ public class DeleteDataTypeController : DataTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _dataTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs index 7248028a2e..5b73c79664 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs @@ -27,6 +27,7 @@ public class FilterDataTypeFilterController : DataTypeFilterControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task Filter( + CancellationToken cancellationToken, int skip = 0, int take = 100, string name = "", diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs index a0e4a28122..50f71f7a08 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs @@ -21,5 +21,5 @@ public class ByKeyDataTypeFolderController : DataTypeFolderControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) => await GetFolderAsync(id); + public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs index a6063f0689..9de5288300 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs @@ -22,7 +22,7 @@ public class CreateDataTypeFolderController : DataTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateFolderRequestModel createFolderRequestModel) + public async Task Create(CancellationToken cancellationToken, CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, controller => nameof(controller.ByKey)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs index a9d3e7c64f..5b9848d609 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs @@ -21,5 +21,5 @@ public class DeleteDataTypeFolderController : DataTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) => await DeleteFolderAsync(id); + public async Task Delete(CancellationToken cancellationToken, Guid id) => await DeleteFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs index c0d9f1cf00..fa3eba2feb 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs @@ -22,6 +22,9 @@ public class UpdateDataTypeFolderController : DataTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateFolderResponseModel updateFolderResponseModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateFolderResponseModel updateFolderResponseModel) => await UpdateFolderAsync(id, updateFolderResponseModel); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs index fa51377904..0a9a048389 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs @@ -21,7 +21,7 @@ public class IsUsedDataTypeController : DataTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(bool), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task IsUsed(Guid id) + public async Task IsUsed(CancellationToken cancellationToken, Guid id) { Attempt result = await _dataTypeUsageService.HasSavedValuesAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs index ac0b5a330a..d7fb1d743b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs @@ -23,7 +23,9 @@ public class ItemDatatypeItemController : DatatypeItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { var dataTypes = new List(); foreach (Guid id in ids) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs index 793f7d54c8..ad84e5c5a4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs @@ -26,7 +26,7 @@ public class SearchDataTypeItemController : DatatypeItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.DataType, query, skip, take); if (searchResult.Items.Any() is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs index 8d4e4606d7..bec84124b5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs @@ -26,7 +26,7 @@ public class MoveDataTypeController : DataTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveDataTypeRequestModel moveDataTypeRequestModel) + public async Task Move(CancellationToken cancellationToken, Guid id, MoveDataTypeRequestModel moveDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); if (source is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs index 81cbe51303..c25586e93c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs @@ -25,7 +25,7 @@ public class ReferencesDataTypeController : DataTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DataTypeReferenceResponseModel[]), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task References(Guid id) + public async Task References(CancellationToken cancellationToken, Guid id) { Attempt>, DataTypeOperationStatus> result = await _dataTypeService.GetReferencesAsync(id); if (result.Success == false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs index 1bb501bb12..d93b76718d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs @@ -17,6 +17,6 @@ public class AncestorsDataTypeTreeController : DataTypeTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs index dd000c7b5d..cd9f4171cd 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs @@ -18,7 +18,7 @@ public class ChildrenDataTypeTreeController : DataTypeTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetChildren(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs index b46793087d..0554bff8e5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs @@ -19,7 +19,7 @@ public class RootDataTypeTreeController : DataTypeTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs index ecf7ffac5b..71afc06b26 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs @@ -30,7 +30,7 @@ public class UpdateDataTypeController : DataTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateDataTypeRequestModel updateDataTypeViewModel) + public async Task Update(CancellationToken cancellationToken, Guid id, UpdateDataTypeRequestModel updateDataTypeViewModel) { IDataType? current = await _dataTypeService.GetAsync(id); if (current == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/AllDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/AllDictionaryController.cs index f3384b6f0a..b40db7607a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/AllDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/AllDictionaryController.cs @@ -25,7 +25,11 @@ public class AllDictionaryController : DictionaryControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(string? filter = null, int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + string? filter = null, + int skip = 0, + int take = 100) { // unfortunately we can't paginate here...we'll have to get all and paginate in memory IDictionaryItem[] items = (await _dictionaryItemService.GetDescendantsAsync(Constants.System.RootKey, filter)).ToArray(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ByKeyDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ByKeyDictionaryController.cs index c61de71a37..b28db0cc82 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ByKeyDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ByKeyDictionaryController.cs @@ -24,7 +24,7 @@ public class ByKeyDictionaryController : DictionaryControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DictionaryItemResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IDictionaryItem? dictionary = await _dictionaryItemService.GetAsync(id); if (dictionary == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/CreateDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/CreateDictionaryController.cs index aa8a561ac5..a67723e0a2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/CreateDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/CreateDictionaryController.cs @@ -41,11 +41,13 @@ public class CreateDictionaryController : DictionaryControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status409Conflict)] - public async Task Create(CreateDictionaryItemRequestModel createDictionaryItemRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateDictionaryItemRequestModel createDictionaryItemRequestModel) { IDictionaryItem created = await _dictionaryPresentationFactory.MapCreateModelToDictionaryItemAsync(createDictionaryItemRequestModel); - AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( + AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, new DictionaryPermissionResource(createDictionaryItemRequestModel.Translations.Select(t => t.IsoCode)), AuthorizationPolicies.DictionaryPermissionByResource); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/DeleteDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/DeleteDictionaryController.cs index 34922245bd..b426ff1daa 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/DeleteDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/DeleteDictionaryController.cs @@ -26,7 +26,7 @@ public class DeleteDictionaryController : DictionaryControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _dictionaryItemService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ExportDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ExportDictionaryController.cs index 7b8701c7f5..07af84742c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ExportDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ExportDictionaryController.cs @@ -26,7 +26,7 @@ public class ExportDictionaryController : DictionaryControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FileContentResult), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Export(Guid id, bool includeChildren = false) + public async Task Export(CancellationToken cancellationToken, Guid id, bool includeChildren = false) { IDictionaryItem? dictionaryItem = await _dictionaryItemService.GetAsync(id); if (dictionaryItem is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ImportDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ImportDictionaryController.cs index a61248fb8d..4f4954b87c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ImportDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/ImportDictionaryController.cs @@ -30,7 +30,9 @@ public class ImportDictionaryController : DictionaryControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Import(ImportDictionaryRequestModel importDictionaryRequestModel) + public async Task Import( + CancellationToken cancellationToken, + ImportDictionaryRequestModel importDictionaryRequestModel) { Attempt result = await _dictionaryItemImportService .ImportDictionaryItemFromUdtFileAsync( diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Item/ItemDictionaryItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Item/ItemDictionaryItemController.cs index 59588346d3..bdb3f0e637 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Item/ItemDictionaryItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Item/ItemDictionaryItemController.cs @@ -23,7 +23,9 @@ public class ItemDictionaryItemController : DictionaryItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable dictionaryItems = await _dictionaryItemService.GetManyAsync(ids.ToArray()); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/MoveDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/MoveDictionaryController.cs index 241d5b47c7..6821d8242d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/MoveDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/MoveDictionaryController.cs @@ -27,7 +27,10 @@ public class MoveDictionaryController : DictionaryControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveDictionaryRequestModel moveDictionaryRequestModel) + public async Task Move( + CancellationToken cancellationToken, + Guid id, + MoveDictionaryRequestModel moveDictionaryRequestModel) { IDictionaryItem? source = await _dictionaryItemService.GetAsync(id); if (source == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/AncestorsDictionaryTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/AncestorsDictionaryTreeController.cs index ad15c0c9ad..2c17199602 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/AncestorsDictionaryTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/AncestorsDictionaryTreeController.cs @@ -17,6 +17,6 @@ public class AncestorsDictionaryTreeController : DictionaryTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs index 8bf1d6ba14..59b23ff801 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs @@ -19,7 +19,7 @@ public class ChildrenDictionaryTreeController : DictionaryTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100) + public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100) { PagedModel paginatedItems = await DictionaryItemService.GetPagedAsync(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs index 40596122da..a6d65ed764 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs @@ -19,7 +19,7 @@ public class RootDictionaryTreeController : DictionaryTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100) { PagedModel paginatedItems = await DictionaryItemService.GetPagedAsync(null, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/UpdateDictionaryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/UpdateDictionaryController.cs index fa3990149d..aaade24f36 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/UpdateDictionaryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Dictionary/UpdateDictionaryController.cs @@ -41,7 +41,10 @@ public class UpdateDictionaryController : DictionaryControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateDictionaryItemRequestModel updateDictionaryItemRequestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateDictionaryItemRequestModel updateDictionaryItemRequestModel) { IDictionaryItem? current = await _dictionaryItemService.GetAsync(id); if (current == null) @@ -49,7 +52,7 @@ public class UpdateDictionaryController : DictionaryControllerBase return DictionaryItemNotFound(); } - AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( + AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, new DictionaryPermissionResource(updateDictionaryItemRequestModel.Translations.Select(t => t.IsoCode)), AuthorizationPolicies.DictionaryPermissionByResource); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/ByKeyDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/ByKeyDocumentController.cs index 2d562a7390..b805633b66 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/ByKeyDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/ByKeyDocumentController.cs @@ -35,7 +35,7 @@ public class ByKeyDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DocumentResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Collection/ByKeyDocumentCollectionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Collection/ByKeyDocumentCollectionController.cs index 8fbc432b09..526d5a0272 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Collection/ByKeyDocumentCollectionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Collection/ByKeyDocumentCollectionController.cs @@ -34,6 +34,7 @@ public class ByKeyDocumentCollectionController : DocumentCollectionControllerBas [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] public async Task ByKey( + CancellationToken cancellationToken, Guid id, Guid? dataTypeId = null, string orderBy = "updateDate", diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/ConfigurationDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/ConfigurationDocumentController.cs index 9c8d83d8e2..f50bc96262 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/ConfigurationDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/ConfigurationDocumentController.cs @@ -18,7 +18,7 @@ public class ConfigurationDocumentController : DocumentControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DocumentConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { DocumentConfigurationResponseModel responseModel = _configurationPresentationFactory.CreateDocumentConfigurationResponseModel(); return Task.FromResult(Ok(responseModel)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/CopyDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/CopyDocumentController.cs index 5fdc8c02f1..7300e6f88a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/CopyDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/CopyDocumentController.cs @@ -37,7 +37,10 @@ public class CopyDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Copy(Guid id, CopyDocumentRequestModel copyDocumentRequestModel) + public async Task Copy( + CancellationToken cancellationToken, + Guid id, + CopyDocumentRequestModel copyDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/CreateDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/CreateDocumentController.cs index 042b030438..f295a85b9d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/CreateDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/CreateDocumentController.cs @@ -36,7 +36,9 @@ public class CreateDocumentController : CreateDocumentControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateDocumentRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateDocumentRequestModel requestModel) => await HandleRequest(requestModel, async () => { ContentCreateModel model = _documentEditingPresentationFactory.MapCreateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/CreatePublicAccessDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/CreatePublicAccessDocumentController.cs index e8623cc7df..00f8d9b7cd 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/CreatePublicAccessDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/CreatePublicAccessDocumentController.cs @@ -37,7 +37,10 @@ public class CreatePublicAccessDocumentController : DocumentControllerBase [HttpPost("{id:guid}/public-access")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(Guid id, PublicAccessRequestModel publicAccessRequestModel) + public async Task Create( + CancellationToken cancellationToken, + Guid id, + PublicAccessRequestModel publicAccessRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/DeleteDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/DeleteDocumentController.cs index 7eb02498b2..805f7ba1b4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/DeleteDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/DeleteDocumentController.cs @@ -37,7 +37,7 @@ public class DeleteDocumentController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/DeletePublicAccessDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/DeletePublicAccessDocumentController.cs index 998d877f7e..e6faaae75e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/DeletePublicAccessDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/DeletePublicAccessDocumentController.cs @@ -29,7 +29,7 @@ public class DeletePublicAccessDocumentController : DocumentControllerBase [HttpDelete("{id:guid}/public-access")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/DomainsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/DomainsController.cs index a5b8c7f4e0..b74c99c35f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/DomainsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/DomainsController.cs @@ -24,7 +24,7 @@ public class DomainsController : DocumentControllerBase [HttpGet("{id:guid}/domains")] [ProducesResponseType(typeof(DomainsResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Domains(Guid id) + public async Task Domains(CancellationToken cancellationToken, Guid id) { IDomain[] assignedDomains = (await _domainService.GetAssignedDomainsAsync(id, true)) .OrderBy(d => d.SortOrder) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/GetPublicAccessDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/GetPublicAccessDocumentController.cs index 3809cddae2..f4c9468131 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/GetPublicAccessDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/GetPublicAccessDocumentController.cs @@ -36,7 +36,7 @@ public class GetPublicAccessDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [HttpGet("{id:guid}/public-access")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetPublicAccess(Guid id) + public async Task GetPublicAccess(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/ItemDocumentItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/ItemDocumentItemController.cs index 62a9552954..7f63e4c67f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/ItemDocumentItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/ItemDocumentItemController.cs @@ -24,7 +24,9 @@ public class ItemDocumentItemController : DocumentItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable documents = _entityService .GetAll(UmbracoObjectTypes.Document, ids.ToArray()) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/SearchDocumentItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/SearchDocumentItemController.cs index 9866ec1691..a20ad237d6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/SearchDocumentItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Item/SearchDocumentItemController.cs @@ -24,7 +24,7 @@ public class SearchDocumentItemController : DocumentItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _indexedEntitySearchService.Search(UmbracoObjectTypes.Document, query, skip, take); var result = new PagedModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveDocumentController.cs index 74d77182e4..aa777a57f0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveDocumentController.cs @@ -37,7 +37,7 @@ public class MoveDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveDocumentRequestModel moveDocumentRequestModel) + public async Task Move(CancellationToken cancellationToken, Guid id, MoveDocumentRequestModel moveDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveToRecycleBinDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveToRecycleBinDocumentController.cs index 212761d2db..c59aa5fc17 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveToRecycleBinDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/MoveToRecycleBinDocumentController.cs @@ -37,7 +37,7 @@ public class MoveToRecycleBinDocumentController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task MoveToRecycleBin(Guid id) + public async Task MoveToRecycleBin(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/NotificationsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/NotificationsController.cs index 9ac152a6ad..72c9f18eb5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/NotificationsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/NotificationsController.cs @@ -35,7 +35,7 @@ public class NotificationsController : DocumentControllerBase [HttpGet("{id:guid}/notifications")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Notifications(Guid id) + public async Task Notifications(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentController.cs index 13d9433721..3c39270a3e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentController.cs @@ -42,7 +42,7 @@ public class PublishDocumentController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Publish(Guid id, PublishDocumentRequestModel requestModel) + public async Task Publish(CancellationToken cancellationToken, Guid id, PublishDocumentRequestModel requestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentWithDescendantsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentWithDescendantsController.cs index 996855afe9..67b9c69008 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentWithDescendantsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/PublishDocumentWithDescendantsController.cs @@ -38,7 +38,7 @@ public class PublishDocumentWithDescendantsController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task PublishWithDescendants(Guid id, PublishDocumentWithDescendantsRequestModel requestModel) + public async Task PublishWithDescendants(CancellationToken cancellationToken, Guid id, PublishDocumentWithDescendantsRequestModel requestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/ChildrenDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/ChildrenDocumentRecycleBinController.cs index ce3cd9cd05..a32a30b72b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/ChildrenDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/ChildrenDocumentRecycleBinController.cs @@ -19,6 +19,10 @@ public class ChildrenDocumentRecycleBinController : DocumentRecycleBinController [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100) => await GetChildren(parentId, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/DeleteDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/DeleteDocumentRecycleBinController.cs index cb8085e769..9a49e8b72c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/DeleteDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/DeleteDocumentRecycleBinController.cs @@ -41,7 +41,7 @@ public class DeleteDocumentRecycleBinController : DocumentRecycleBinControllerBa [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/EmptyDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/EmptyDocumentRecycleBinController.cs index d58a71920b..fe79511b29 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/EmptyDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/EmptyDocumentRecycleBinController.cs @@ -37,7 +37,7 @@ public class EmptyDocumentRecycleBinController : DocumentRecycleBinControllerBas [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task EmptyRecycleBin() + public async Task EmptyRecycleBin(CancellationToken cancellationToken) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/OriginalParentDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/OriginalParentDocumentRecycleBinController.cs index e691600e59..8852b1b0c8 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/OriginalParentDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/OriginalParentDocumentRecycleBinController.cs @@ -41,7 +41,7 @@ public class OriginalParentDocumentRecycleBinController : DocumentRecycleBinCont [ProducesResponseType(typeof(ReferenceByIdModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task OriginalParent(Guid id) + public async Task OriginalParent(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RestoreDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RestoreDocumentRecycleBinController.cs index e93ab73fad..1931159bab 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RestoreDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RestoreDocumentRecycleBinController.cs @@ -42,7 +42,7 @@ public class RestoreDocumentRecycleBinController : DocumentRecycleBinControllerB [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Restore(Guid id, MoveMediaRequestModel moveDocumentRequestModel) + public async Task Restore(CancellationToken cancellationToken, Guid id, MoveMediaRequestModel moveDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RootDocumentRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RootDocumentRecycleBinController.cs index 45118a8e35..addff01824 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RootDocumentRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/RecycleBin/RootDocumentRecycleBinController.cs @@ -19,6 +19,9 @@ public class RootDocumentRecycleBinController : DocumentRecycleBinControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/AreReferencedDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/AreReferencedDocumentController.cs index c182facf50..b73aa9ac94 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/AreReferencedDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/AreReferencedDocumentController.cs @@ -31,7 +31,11 @@ public class AreReferencedDocumentController : DocumentControllerBase [HttpGet("are-referenced")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> GetPagedReferencedItems([FromQuery(Name="id")]HashSet ids, int skip = 0, int take = 20) + public async Task>> GetPagedReferencedItems( + CancellationToken cancellationToken, + [FromQuery(Name="id")]HashSet ids, + int skip = 0, + int take = 20) { PagedModel distinctByKeyItemsWithReferencedRelations = await _trackedReferencesSkipTakeService.GetPagedItemsWithRelationsAsync(ids, skip, take, true); var pagedViewModel = new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedByDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedByDocumentController.cs index 522ca47c3c..0e7e05a29f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedByDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedByDocumentController.cs @@ -32,6 +32,7 @@ public class ReferencedByDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task>> ReferencedBy( + CancellationToken cancellationToken, Guid id, int skip = 0, int take = 20) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedDescendantsDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedDescendantsDocumentController.cs index 133596773e..7ee7bae77f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedDescendantsDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/References/ReferencedDescendantsDocumentController.cs @@ -32,7 +32,11 @@ public class ReferencedDescendantsDocumentController : DocumentControllerBase [HttpGet("{id:guid}/referenced-descendants")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> ReferencedDescendants(Guid id, int skip = 0, int take = 20) + public async Task>> ReferencedDescendants( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 20) { PagedModel relationItems = await _trackedReferencesSkipTakeService.GetPagedDescendantsInReferencesAsync(id, skip, take, true); var pagedViewModel = new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/SortDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/SortDocumentController.cs index 4caffc0056..ab5315093b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/SortDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/SortDocumentController.cs @@ -37,7 +37,7 @@ public class SortDocumentController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Sort(SortingRequestModel sortingRequestModel) + public async Task Sort(CancellationToken cancellationToken, SortingRequestModel sortingRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/AncestorsDocumentTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/AncestorsDocumentTreeController.cs index 413b3d0656..eef178ea70 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/AncestorsDocumentTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/AncestorsDocumentTreeController.cs @@ -35,6 +35,6 @@ public class AncestorsDocumentTreeController : DocumentTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/ChildrenDocumentTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/ChildrenDocumentTreeController.cs index 841d9c286a..5c6b428424 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/ChildrenDocumentTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/ChildrenDocumentTreeController.cs @@ -36,7 +36,7 @@ public class ChildrenDocumentTreeController : DocumentTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100, Guid? dataTypeId = null) + public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100, Guid? dataTypeId = null) { IgnoreUserStartNodesForDataType(dataTypeId); return await GetChildren(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/RootDocumentTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/RootDocumentTreeController.cs index 965307829a..a9d63dc4b0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/RootDocumentTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/Tree/RootDocumentTreeController.cs @@ -36,7 +36,11 @@ public class RootDocumentTreeController : DocumentTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100, Guid? dataTypeId = null) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100, + Guid? dataTypeId = null) { IgnoreUserStartNodesForDataType(dataTypeId); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/UnpublishDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/UnpublishDocumentController.cs index 10c14975d1..7d26b52422 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/UnpublishDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/UnpublishDocumentController.cs @@ -37,7 +37,7 @@ public class UnpublishDocumentController : DocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Unpublish(Guid id, UnpublishDocumentRequestModel requestModel) + public async Task Unpublish(CancellationToken cancellationToken, Guid id, UnpublishDocumentRequestModel requestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDocumentController.cs index b975ff95b8..c393aef449 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDocumentController.cs @@ -36,7 +36,10 @@ public class UpdateDocumentController : UpdateDocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateDocumentRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateDocumentRequestModel requestModel) => await HandleRequest(id, requestModel, async () => { ContentUpdateModel model = _documentEditingPresentationFactory.MapUpdateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDomainsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDomainsController.cs index 73de2cdf40..a878ea72ca 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDomainsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateDomainsController.cs @@ -31,7 +31,10 @@ public class UpdateDomainsController : DocumentControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status409Conflict)] - public async Task Update(Guid id, UpdateDomainsRequestModel updateModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateDomainsRequestModel updateModel) { DomainsUpdateModel domainsUpdateModel = _umbracoMapper.Map(updateModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateNotificationsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateNotificationsController.cs index 78ec61cabe..d02e1456f9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateNotificationsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdateNotificationsController.cs @@ -26,7 +26,7 @@ public class UpdateNotificationsController : DocumentControllerBase [HttpPut("{id:guid}/notifications")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task UpdateNotifications(Guid id, UpdateDocumentNotificationsRequestModel updateModel) + public async Task UpdateNotifications(CancellationToken cancellationToken, Guid id, UpdateDocumentNotificationsRequestModel updateModel) { IContent? content = await _contentEditingService.GetAsync(id); if (content == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdatePublicAccessDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdatePublicAccessDocumentController.cs index b0f1b56a46..d617f7df8d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdatePublicAccessDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/UpdatePublicAccessDocumentController.cs @@ -37,7 +37,7 @@ public class UpdatePublicAccessDocumentController : DocumentControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, PublicAccessRequestModel requestModel) + public async Task Update(CancellationToken cancellationToken, Guid id, PublicAccessRequestModel requestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateCreateDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateCreateDocumentController.cs index f85061dbe8..ecca82286c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateCreateDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateCreateDocumentController.cs @@ -32,7 +32,7 @@ public class ValidateCreateDocumentController : CreateDocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(CreateDocumentRequestModel requestModel) + public async Task Validate(CancellationToken cancellationToken, CreateDocumentRequestModel requestModel) => await HandleRequest(requestModel, async () => { ContentCreateModel model = _documentEditingPresentationFactory.MapCreateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateUpdateDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateUpdateDocumentController.cs index c921abd71d..f80203d135 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateUpdateDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Document/ValidateUpdateDocumentController.cs @@ -32,7 +32,7 @@ public class ValidateUpdateDocumentController : UpdateDocumentControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(Guid id, UpdateDocumentRequestModel requestModel) + public async Task Validate(CancellationToken cancellationToken, Guid id, UpdateDocumentRequestModel requestModel) => await HandleRequest(id, requestModel, async () => { ContentUpdateModel model = _documentEditingPresentationFactory.MapUpdateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/ByKeyDocumentBlueprintController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/ByKeyDocumentBlueprintController.cs index 65bb5cb2e9..4fa2428c56 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/ByKeyDocumentBlueprintController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/ByKeyDocumentBlueprintController.cs @@ -27,7 +27,7 @@ public class ByKeyDocumentBlueprintController : DocumentBlueprintControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DocumentBlueprintResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IContent? blueprint = await _contentBlueprintEditingService.GetAsync(id); if (blueprint == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintController.cs index 4337ce30ce..fb160f21ce 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintController.cs @@ -36,7 +36,7 @@ public class CreateDocumentBlueprintController : DocumentBlueprintControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateDocumentBlueprintRequestModel requestModel) + public async Task Create(CancellationToken cancellationToken, CreateDocumentBlueprintRequestModel requestModel) { ContentBlueprintCreateModel model = _blueprintEditingPresentationFactory.MapCreateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintFromDocumentController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintFromDocumentController.cs index 0b32a125eb..60ce59fe8a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintFromDocumentController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/CreateDocumentBlueprintFromDocumentController.cs @@ -40,7 +40,7 @@ public class CreateDocumentBlueprintFromDocumentController : DocumentBlueprintCo [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task CreateFromDocument(CreateDocumentBlueprintFromDocumentRequestModel fromDocumentRequestModel) + public async Task CreateFromDocument(CancellationToken cancellationToken, CreateDocumentBlueprintFromDocumentRequestModel fromDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/DeleteDocumentBlueprintController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/DeleteDocumentBlueprintController.cs index a3ff3f3f44..7e890c9d4c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/DeleteDocumentBlueprintController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/DeleteDocumentBlueprintController.cs @@ -29,7 +29,7 @@ public class DeleteDocumentBlueprintController : DocumentBlueprintControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _contentBlueprintEditingService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Item/ItemDocumentBlueprintController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Item/ItemDocumentBlueprintController.cs index a513a91c17..75d6f41ec9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Item/ItemDocumentBlueprintController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Item/ItemDocumentBlueprintController.cs @@ -25,7 +25,9 @@ public class ItemDocumentBlueprintController : DocumentBlueprintItemControllerBa [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable documents = _entityService .GetAll(UmbracoObjectTypes.DocumentBlueprint, ids.ToArray()) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Tree/RootDocumentBlueprintTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Tree/RootDocumentBlueprintTreeController.cs index 3e626411f5..79e20385c1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Tree/RootDocumentBlueprintTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/Tree/RootDocumentBlueprintTreeController.cs @@ -19,7 +19,11 @@ public class RootDocumentBlueprintTreeController : DocumentBlueprintTreeControll [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100, + bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/UpdateDocumentBlueprintController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/UpdateDocumentBlueprintController.cs index 844f58dc40..b1007a87df 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/UpdateDocumentBlueprintController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentBlueprint/UpdateDocumentBlueprintController.cs @@ -36,7 +36,7 @@ public class UpdateDocumentBlueprintController : DocumentBlueprintControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateDocumentBlueprintRequestModel requestModel) + public async Task Update(CancellationToken cancellationToken, Guid id, UpdateDocumentBlueprintRequestModel requestModel) { ContentBlueprintUpdateModel model = _blueprintEditingPresentationFactory.MapUpdateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedAtRootDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedAtRootDocumentTypeController.cs index d5f5a338bf..826304083b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedAtRootDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedAtRootDocumentTypeController.cs @@ -27,7 +27,7 @@ public class AllowedAtRootDocumentTypeController : DocumentTypeControllerBase [HttpGet("allowed-at-root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task AllowedAtRoot(int skip = 0, int take = 100) + public async Task AllowedAtRoot(CancellationToken cancellationToken, int skip = 0, int take = 100) { PagedModel result = await _contentTypeService.GetAllAllowedAsRootAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedChildrenDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedChildrenDocumentTypeController.cs index 254bfdc680..be9aca2015 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedChildrenDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AllowedChildrenDocumentTypeController.cs @@ -30,7 +30,11 @@ public class AllowedChildrenDocumentTypeController : DocumentTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task AllowedChildrenByKey(Guid id, int skip = 0, int take = 100) + public async Task AllowedChildrenByKey( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 100) { Attempt?, ContentTypeOperationStatus> attempt = await _contentTypeService.GetAllowedChildrenAsync(id, skip, take); if (attempt.Success is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AvailableCompositionDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AvailableCompositionDocumentTypeController.cs index 550c517b1f..0af2ad13d7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AvailableCompositionDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/AvailableCompositionDocumentTypeController.cs @@ -23,7 +23,9 @@ public class AvailableCompositionDocumentTypeController : DocumentTypeController [HttpPost("available-compositions")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task AvailableCompositions(DocumentTypeCompositionRequestModel compositionModel) + public async Task AvailableCompositions( + CancellationToken cancellationToken, + DocumentTypeCompositionRequestModel compositionModel) { IEnumerable availableCompositions = await _contentTypeEditingService.GetAvailableCompositionsAsync( compositionModel.Id, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ByKeyDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ByKeyDocumentTypeController.cs index da1c9eb143..d51f915e7d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ByKeyDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ByKeyDocumentTypeController.cs @@ -25,7 +25,7 @@ public class ByKeyDocumentTypeController : DocumentTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DocumentTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IContentType? contentType = await _contentTypeService.GetAsync(id); if (contentType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CompositionReferenceDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CompositionReferenceDocumentTypeController.cs index f077b8baf9..eabf04c3e7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CompositionReferenceDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CompositionReferenceDocumentTypeController.cs @@ -26,7 +26,7 @@ public class CompositionReferenceDocumentTypeController : DocumentTypeController [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task CompositionReferences(Guid id) + public async Task CompositionReferences(CancellationToken cancellationToken, Guid id) { var contentType = await _contentTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ConfigurationDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ConfigurationDocumentTypeController.cs index ee04389885..9f2425565b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ConfigurationDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/ConfigurationDocumentTypeController.cs @@ -28,7 +28,7 @@ public class ConfigurationDocumentTypeController : DocumentTypeControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DocumentTypeConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { var responseModel = new DocumentTypeConfigurationResponseModel { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CopyDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CopyDocumentTypeController.cs index abccabdbe2..9ba3982808 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CopyDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CopyDocumentTypeController.cs @@ -22,7 +22,10 @@ public class CopyDocumentTypeController : DocumentTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Copy(Guid id, CopyDocumentTypeRequestModel copyDocumentTypeRequestModel) + public async Task Copy( + CancellationToken cancellationToken, + Guid id, + CopyDocumentTypeRequestModel copyDocumentTypeRequestModel) { Attempt result = await _contentTypeService.CopyAsync(id, copyDocumentTypeRequestModel.Target?.Id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CreateDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CreateDocumentTypeController.cs index 237d129d58..c5d0e0ca60 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CreateDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/CreateDocumentTypeController.cs @@ -34,7 +34,9 @@ public class CreateDocumentTypeController : DocumentTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateDocumentTypeRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateDocumentTypeRequestModel requestModel) { ContentTypeCreateModel model = _documentTypeEditingPresentationFactory.MapCreateModel(requestModel); Attempt result = await _contentTypeEditingService.CreateAsync(model, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/DeleteDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/DeleteDocumentTypeController.cs index a4ae3b2691..a56a991636 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/DeleteDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/DeleteDocumentTypeController.cs @@ -24,7 +24,7 @@ public class DeleteDocumentTypeController : DocumentTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { ContentTypeOperationStatus status = await _contentTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); return OperationStatusResult(status); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/ByKeyDocumentTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/ByKeyDocumentTypeFolderController.cs index b6c677eb8f..7ac5b08bd9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/ByKeyDocumentTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/ByKeyDocumentTypeFolderController.cs @@ -21,5 +21,5 @@ public class ByKeyDocumentTypeFolderController : DocumentTypeFolderControllerBas [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) => await GetFolderAsync(id); + public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/CreateDocumentTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/CreateDocumentTypeFolderController.cs index ad88405477..c14ae37aa5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/CreateDocumentTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/CreateDocumentTypeFolderController.cs @@ -22,7 +22,9 @@ public class CreateDocumentTypeFolderController : DocumentTypeFolderControllerBa [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateFolderRequestModel createFolderRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, controller => nameof(controller.ByKey)).ConfigureAwait(false); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/DeleteDocumentTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/DeleteDocumentTypeFolderController.cs index 3586fa6f39..82cf09a420 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/DeleteDocumentTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/DeleteDocumentTypeFolderController.cs @@ -21,5 +21,5 @@ public class DeleteDocumentTypeFolderController : DocumentTypeFolderControllerBa [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) => await DeleteFolderAsync(id); + public async Task Delete(CancellationToken cancellationToken, Guid id) => await DeleteFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/UpdateDocumentTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/UpdateDocumentTypeFolderController.cs index 4dc049effe..f259935f2b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/UpdateDocumentTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Folder/UpdateDocumentTypeFolderController.cs @@ -22,6 +22,9 @@ public class UpdateDocumentTypeFolderController : DocumentTypeFolderControllerBa [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateFolderResponseModel updateFolderResponseModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateFolderResponseModel updateFolderResponseModel) => await UpdateFolderAsync(id, updateFolderResponseModel); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/ItemDocumentTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/ItemDocumentTypeItemController.cs index 712faf786a..392672feed 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/ItemDocumentTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/ItemDocumentTypeItemController.cs @@ -23,7 +23,9 @@ public class ItemDocumentTypeItemController : DocumentTypeItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable contentTypes = _contentTypeService.GetAll(ids); List responseModels = _mapper.MapEnumerable(contentTypes); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/SearchDocumentTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/SearchDocumentTypeItemController.cs index a3878147e4..e55affe104 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/SearchDocumentTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Item/SearchDocumentTypeItemController.cs @@ -27,7 +27,7 @@ public class SearchDocumentTypeItemController : DocumentTypeItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.DocumentType, query, skip, take); if (searchResult.Items.Any() is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/MoveDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/MoveDocumentTypeController.cs index 80e488906a..44988224a9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/MoveDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/MoveDocumentTypeController.cs @@ -22,7 +22,10 @@ public class MoveDocumentTypeController : DocumentTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveDocumentTypeRequestModel moveDocumentTypeRequestModel) + public async Task Move( + CancellationToken cancellationToken, + Guid id, + MoveDocumentTypeRequestModel moveDocumentTypeRequestModel) { Attempt result = await _contentTypeService.MoveAsync(id, moveDocumentTypeRequestModel.Target?.Id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/AncestorsDocumentTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/AncestorsDocumentTypeTreeController.cs index 3d8fc278cf..c49f7b0d3c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/AncestorsDocumentTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/AncestorsDocumentTypeTreeController.cs @@ -17,6 +17,6 @@ public class AncestorsDocumentTypeTreeController : DocumentTypeTreeControllerBas [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/ChildrenDocumentTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/ChildrenDocumentTypeTreeController.cs index 0e8f387dae..de25c4c1be 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/ChildrenDocumentTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/ChildrenDocumentTypeTreeController.cs @@ -18,7 +18,12 @@ public class ChildrenDocumentTypeTreeController : DocumentTypeTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100, + bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetChildren(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/RootDocumentTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/RootDocumentTypeTreeController.cs index dc11dc7d80..4824dc0495 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/RootDocumentTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/Tree/RootDocumentTypeTreeController.cs @@ -18,7 +18,11 @@ public class RootDocumentTypeTreeController : DocumentTypeTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100, + bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/UpdateDocumentTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/UpdateDocumentTypeController.cs index b6cc54bd12..572cc9cd60 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/UpdateDocumentTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentType/UpdateDocumentTypeController.cs @@ -38,7 +38,10 @@ public class UpdateDocumentTypeController : DocumentTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateDocumentTypeRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateDocumentTypeRequestModel requestModel) { IContentType? contentType = await _contentTypeService.GetAsync(id); if (contentType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs index 84dbf0a001..a09554756e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs @@ -31,7 +31,12 @@ public class AllDocumentVersionController : DocumentVersionControllerBase [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task All([Required] Guid documentId, string? culture, int skip = 0, int take = 100) + public async Task All( + CancellationToken cancellationToken, + [Required] Guid documentId, + string? culture, + int skip = 0, + int take = 100) { Attempt?, ContentVersionOperationStatus> attempt = await _contentVersionService.GetPagedContentVersionsAsync(documentId, culture, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs index ad16748fa7..fa44d7a61c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs @@ -29,7 +29,7 @@ public class ByKeyDocumentVersionController : DocumentVersionControllerBase [ProducesResponseType(typeof(DocumentVersionResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { Attempt attempt = await _contentVersionService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs index bc94ef6719..a1039836a3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs @@ -27,7 +27,7 @@ public class RollbackDocumentVersionController : DocumentVersionControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Rollback(Guid id, string? culture) + public async Task Rollback(CancellationToken cancellationToken, Guid id, string? culture) { Attempt attempt = await _contentVersionService.RollBackAsync(id, culture, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs index 5af47223c9..68f4a15b82 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs @@ -27,7 +27,7 @@ public class UpdatePreventCleanupDocumentVersionController : DocumentVersionCont [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Set(Guid id, bool preventCleanup) + public async Task Set(CancellationToken cancellationToken, Guid id, bool preventCleanup) { Attempt attempt = await _contentVersionService.SetPreventCleanupAsync(id, preventCleanup, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetDynamicRootController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetDynamicRootController.cs index 3f887dd08c..9772b55e33 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetDynamicRootController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetDynamicRootController.cs @@ -28,7 +28,7 @@ public class GetRootsController : DynamicRootControllerBase [HttpPost("query")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DynamicRootResponseModel), StatusCodes.Status200OK)] - public async Task GetRoots(DynamicRootRequestModel model) + public async Task GetRoots(CancellationToken cancellationToken, DynamicRootRequestModel model) { _backOfficeVariationContextAccessor.VariationContext = new BackOfficeVariationContext(model.Context.Culture, model.Context.Segment); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetQueryStepsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetQueryStepsController.cs index 0e9b7803e2..1271c2ab3f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetQueryStepsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DynamicRoot/GetQueryStepsController.cs @@ -21,7 +21,7 @@ public class GetQueryStepsController : DynamicRootControllerBase [HttpGet($"steps")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task GetQuerySteps() + public async Task GetQuerySteps(CancellationToken cancellationToken) { IEnumerable querySteps = _dynamicRootQueryStepCollection.Select(x => x.SupportedDirectionAlias); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/ExecuteActionHealthCheckController.cs b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/ExecuteActionHealthCheckController.cs index 51ddb571e2..fcdea80420 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/ExecuteActionHealthCheckController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/ExecuteActionHealthCheckController.cs @@ -38,7 +38,9 @@ public class ExecuteActionHealthCheckController : HealthCheckControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(HealthCheckResultResponseModel), StatusCodes.Status200OK)] - public async Task> ExecuteAction(HealthCheckActionRequestModel action) + public async Task> ExecuteAction( + CancellationToken cancellationToken, + HealthCheckActionRequestModel action) { Guid healthCheckKey = action.HealthCheck.Id; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/AllHealthCheckGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/AllHealthCheckGroupController.cs index 273ec4aaea..baaaf467bf 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/AllHealthCheckGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/AllHealthCheckGroupController.cs @@ -31,7 +31,10 @@ public class AllHealthCheckGroupController : HealthCheckGroupControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { IGrouping[] groups = _healthCheckGroupPresentationFactory .CreateGroupingFromHealthCheckCollection() diff --git a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/ByNameHealthCheckGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/ByNameHealthCheckGroupController.cs index 5a2b709534..1aa97c6249 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/ByNameHealthCheckGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/ByNameHealthCheckGroupController.cs @@ -31,7 +31,9 @@ public class ByNameHealthCheckGroupController : HealthCheckGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(HealthCheckGroupPresentationModel), StatusCodes.Status200OK)] - public async Task ByName(string name) + public async Task ByName( + CancellationToken cancellationToken, + string name) { IEnumerable> groups = _healthCheckGroupPresentationFactory .CreateGroupingFromHealthCheckCollection(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/CheckHealthCheckGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/CheckHealthCheckGroupController.cs index e7ad2a2d5d..a578c60662 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/CheckHealthCheckGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/HealthCheck/Group/CheckHealthCheckGroupController.cs @@ -25,7 +25,9 @@ public class CheckHealthCheckGroupController : HealthCheckGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(HealthCheckGroupWithResultResponseModel), StatusCodes.Status200OK)] - public async Task ByNameWithResult(string name) + public async Task ByNameWithResult( + CancellationToken cancellationToken, + string name) { IEnumerable> groups = _healthCheckGroupPresentationFactory .CreateGroupingFromHealthCheckCollection(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Help/GetHelpController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Help/GetHelpController.cs index e3b00e417a..1c0ea568a1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Help/GetHelpController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Help/GetHelpController.cs @@ -35,7 +35,13 @@ public class GetHelpController : HelpControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task Get(string section, string? tree, int skip = 0, int take = 100, string? baseUrl = "https://our.umbraco.com") + public async Task Get( + CancellationToken cancellationToken, + string section, + string? tree, + int skip = 0, + int take = 100, + string? baseUrl = "https://our.umbraco.com") { if (IsAllowedUrl(baseUrl) is false) { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs index 683ed0a29b..768389b56d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs @@ -30,7 +30,10 @@ public class AllIndexerController : IndexerControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public Task> All(int skip = 0, int take = 100) + public Task> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { IndexResponseModel[] indexes = _examineManager.Indexes .Select(_indexPresentationFactory.Create) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/DetailsIndexerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/DetailsIndexerController.cs index 947cd439ff..a6d8a7c407 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/DetailsIndexerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/DetailsIndexerController.cs @@ -34,7 +34,7 @@ public class DetailsIndexerController : IndexerControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(IndexResponseModel), StatusCodes.Status200OK)] - public async Task> Details(string indexName) + public async Task> Details(CancellationToken cancellationToken, string indexName) { if (_examineManager.TryGetIndex(indexName, out IIndex? index)) { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/RebuildIndexerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/RebuildIndexerController.cs index ae8006df09..50491b5d7f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/RebuildIndexerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/RebuildIndexerController.cs @@ -36,7 +36,7 @@ public class RebuildIndexerController : IndexerControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status409Conflict)] [ProducesResponseType(typeof(OkResult), StatusCodes.Status200OK)] - public async Task Rebuild(string indexName) + public async Task Rebuild(CancellationToken cancellationToken, string indexName) { if (!_examineManager.TryGetIndex(indexName, out var index)) { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Install/SettingsInstallController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Install/SettingsInstallController.cs index 8200b5cb95..518edb9afe 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Install/SettingsInstallController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Install/SettingsInstallController.cs @@ -30,7 +30,7 @@ public class SettingsInstallController : InstallControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status428PreconditionRequired)] [ProducesResponseType(typeof(InstallSettingsResponseModel), StatusCodes.Status200OK)] - public async Task Settings() + public async Task Settings(CancellationToken cancellationToken) { // Register that the install has started await _installHelper.SetInstallStatusAsync(false, string.Empty); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Install/SetupInstallController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Install/SetupInstallController.cs index 014fd43a0d..9120a83a1e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Install/SetupInstallController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Install/SetupInstallController.cs @@ -28,7 +28,7 @@ public class SetupInstallController : InstallControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status428PreconditionRequired)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Setup(InstallRequestModel installData) + public async Task Setup(CancellationToken cancellationToken, InstallRequestModel installData) { InstallData data = _mapper.Map(installData)!; Attempt result = await _installService.InstallAsync(data); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Install/ValidateDatabaseInstallController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Install/ValidateDatabaseInstallController.cs index 51a36833f5..53cb090fd5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Install/ValidateDatabaseInstallController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Install/ValidateDatabaseInstallController.cs @@ -28,7 +28,9 @@ public class ValidateDatabaseInstallController : InstallControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task ValidateDatabase(DatabaseInstallRequestModel viewModel) + public async Task ValidateDatabase( + CancellationToken cancellationToken, + DatabaseInstallRequestModel viewModel) { DatabaseModel databaseModel = _mapper.Map(viewModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/AllLanguageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/AllLanguageController.cs index acbd3ae3f2..935a9c3d03 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/AllLanguageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/AllLanguageController.cs @@ -24,7 +24,10 @@ public class AllLanguageController : LanguageControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { IEnumerable result = await _languageService.GetAllAsync(); ILanguage[] allLanguages = result.ToArray(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/ByIsoCodeLanguageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/ByIsoCodeLanguageController.cs index 4a6a525bd2..e1fb1f4449 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/ByIsoCodeLanguageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/ByIsoCodeLanguageController.cs @@ -24,7 +24,7 @@ public class ByIsoCodeLanguageController : LanguageControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(LanguageResponseModel), StatusCodes.Status200OK)] - public async Task ByIsoCode(string isoCode) + public async Task ByIsoCode(CancellationToken cancellationToken, string isoCode) { ILanguage? language = await _languageService.GetAsync(isoCode); if (language == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/CreateLanguageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/CreateLanguageController.cs index ae62476597..80c9a4c9c0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/CreateLanguageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/CreateLanguageController.cs @@ -36,7 +36,9 @@ public class CreateLanguageController : LanguageControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status201Created)] - public async Task Create(CreateLanguageRequestModel createLanguageRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateLanguageRequestModel createLanguageRequestModel) { ILanguage created = _umbracoMapper.Map(createLanguageRequestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/DeleteLanguageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/DeleteLanguageController.cs index a11f7a7bde..a074b65445 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/DeleteLanguageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/DeleteLanguageController.cs @@ -29,7 +29,7 @@ public class DeleteLanguageController : LanguageControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(string isoCode) + public async Task Delete(CancellationToken cancellationToken, string isoCode) { Attempt result = await _languageService.DeleteAsync(isoCode, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/Item/ItemsLanguageEntityController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/Item/ItemsLanguageEntityController.cs index b79b4f491c..2a1a3fe816 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/Item/ItemsLanguageEntityController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/Item/ItemsLanguageEntityController.cs @@ -23,7 +23,9 @@ public class ItemsLanguageEntityController : LanguageEntityControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Items([FromQuery(Name = "isoCode")] HashSet isoCodes) + public async Task Items( + CancellationToken cancellationToken, + [FromQuery(Name = "isoCode")] HashSet isoCodes) { IEnumerable languages = await _languageService.GetMultipleAsync(isoCodes); List entityResponseModels = _mapper.MapEnumerable(languages); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Language/UpdateLanguageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Language/UpdateLanguageController.cs index 6238898d79..a74f9e299e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Language/UpdateLanguageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Language/UpdateLanguageController.cs @@ -36,7 +36,10 @@ public class UpdateLanguageController : LanguageControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Update(string isoCode, UpdateLanguageRequestModel updateLanguageRequestModel) + public async Task Update( + CancellationToken cancellationToken, + string isoCode, + UpdateLanguageRequestModel updateLanguageRequestModel) { ILanguage? current = await _languageService.GetAsync(isoCode); if (current is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllLogViewerController.cs index 122aa80fc3..1a93a60da2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllLogViewerController.cs @@ -42,6 +42,7 @@ public class AllLogViewerController : LogViewerControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task AllLogs( + CancellationToken cancellationToken, int skip = 0, int take = 100, Direction orderDirection = Direction.Descending, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllMessageTemplateLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllMessageTemplateLogViewerController.cs index 0be43cab4d..faed45ca05 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllMessageTemplateLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllMessageTemplateLogViewerController.cs @@ -37,6 +37,7 @@ public class AllMessageTemplateLogViewerController : LogViewerControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task AllMessageTemplates( + CancellationToken cancellationToken, int skip = 0, int take = 100, DateTime? startDate = null, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllSinkLevelLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllSinkLevelLogViewerController.cs index 4ed43dcffb..f2ec9e034f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllSinkLevelLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/AllSinkLevelLogViewerController.cs @@ -30,7 +30,10 @@ public class AllSinkLevelLogViewerController : LogViewerControllerBase [HttpGet("level")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> AllLogLevels(int skip = 0, int take = 100) + public async Task>> AllLogLevels( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { KeyValuePair[] logLevels = _logViewerService .GetLogLevelsFromSinks() diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/LogLevelCountLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/LogLevelCountLogViewerController.cs index a855cae748..5ae69bb901 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/LogLevelCountLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/LogLevelCountLogViewerController.cs @@ -32,7 +32,10 @@ public class LogLevelCountLogViewerController : LogViewerControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(LogLevelCountsReponseModel), StatusCodes.Status200OK)] - public async Task LogLevelCounts(DateTime? startDate = null, DateTime? endDate = null) + public async Task LogLevelCounts( + CancellationToken cancellationToken, + DateTime? startDate = null, + DateTime? endDate = null) { Attempt logLevelCountsAttempt = await _logViewerService.GetLogLevelCountsAsync(startDate, endDate); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/AllSavedSearchLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/AllSavedSearchLogViewerController.cs index 8a753e89a0..ec42563643 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/AllSavedSearchLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/AllSavedSearchLogViewerController.cs @@ -30,7 +30,10 @@ public class AllSavedSearchLogViewerController : SavedSearchLogViewerControllerB [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> AllSavedSearches(int skip = 0, int take = 100) + public async Task>> AllSavedSearches( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { PagedModel savedLogQueries = await _logViewerService.GetSavedLogQueriesAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/ByNameSavedSearchLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/ByNameSavedSearchLogViewerController.cs index fcf9b80aac..92a4a17add 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/ByNameSavedSearchLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/ByNameSavedSearchLogViewerController.cs @@ -29,7 +29,9 @@ public class ByNameSavedSearchLogViewerController : SavedSearchLogViewerControll [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(SavedLogSearchResponseModel), StatusCodes.Status200OK)] - public async Task ByName(string name) + public async Task ByName( + CancellationToken cancellationToken, + string name) { ILogViewerQuery? savedLogQuery = await _logViewerService.GetSavedLogQueryByNameAsync(name); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/CreateSavedSearchLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/CreateSavedSearchLogViewerController.cs index cc157ec266..39d165f635 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/CreateSavedSearchLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/CreateSavedSearchLogViewerController.cs @@ -25,7 +25,7 @@ public class CreateSavedSearchLogViewerController : SavedSearchLogViewerControll [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status201Created)] - public async Task Create(SavedLogSearchRequestModel savedSearch) + public async Task Create(CancellationToken cancellationToken, SavedLogSearchRequestModel savedSearch) { Attempt result = await _logViewerService.AddSavedLogQueryAsync(savedSearch.Name, savedSearch.Query); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/DeleteSavedSearchLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/DeleteSavedSearchLogViewerController.cs index 04f51af02d..961e5c4aae 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/DeleteSavedSearchLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/SavedSearch/DeleteSavedSearchLogViewerController.cs @@ -24,7 +24,7 @@ public class DeleteSavedSearchLogViewerController : SavedSearchLogViewerControll [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(string name) + public async Task Delete(CancellationToken cancellationToken, string name) { Attempt result = await _logViewerService.DeleteSavedLogQueryAsync(name); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/ValidateLogFileSizeLogViewerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/ValidateLogFileSizeLogViewerController.cs index 0d042f1fe2..553b3df475 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/ValidateLogFileSizeLogViewerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/LogViewer/ValidateLogFileSizeLogViewerController.cs @@ -24,7 +24,10 @@ public class ValidateLogFileSizeLogViewerController : LogViewerControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task CanViewLogs(DateTime? startDate = null, DateTime? endDate = null) + public async Task CanViewLogs( + CancellationToken cancellationToken, + DateTime? startDate = null, + DateTime? endDate = null) { Attempt result = await _logViewerService.CanViewLogsAsync(startDate, endDate); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/ByKeyMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/ByKeyMediaController.cs index 089ceb99fa..3f00e7f17e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/ByKeyMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/ByKeyMediaController.cs @@ -34,7 +34,7 @@ public class ByKeyMediaController : MediaControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MediaResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Collection/ByKeyMediaCollectionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Collection/ByKeyMediaCollectionController.cs index 7a2ed07ee8..36d1192269 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Collection/ByKeyMediaCollectionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Collection/ByKeyMediaCollectionController.cs @@ -34,6 +34,7 @@ public class ByKeyMediaCollectionController : MediaCollectionControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] public async Task ByKey( + CancellationToken cancellationToken, Guid? id, Guid? dataTypeId = null, string orderBy = "updateDate", diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/ConfigurationMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/ConfigurationMediaController.cs index 0c7ef3f889..0793dd64d3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/ConfigurationMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/ConfigurationMediaController.cs @@ -18,7 +18,7 @@ public class ConfigurationMediaController : MediaControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MediaConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { MediaConfigurationResponseModel responseModel = _configurationPresentationFactory.CreateMediaConfigurationResponseModel(); return Task.FromResult(Ok(responseModel)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/CreateMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/CreateMediaController.cs index ef7165256c..0220493ee5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/CreateMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/CreateMediaController.cs @@ -36,7 +36,9 @@ public class CreateMediaController : CreateMediaControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateMediaRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateMediaRequestModel requestModel) => await HandleRequest(requestModel.Parent?.Id, async () => { MediaCreateModel model = _mediaEditingPresentationFactory.MapCreateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/DeleteMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/DeleteMediaController.cs index 9e1095ab8f..8f9e9f570c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/DeleteMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/DeleteMediaController.cs @@ -36,7 +36,7 @@ public class DeleteMediaController : MediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/ItemMediaItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/ItemMediaItemController.cs index 88bf16ade5..ca52f5d182 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/ItemMediaItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/ItemMediaItemController.cs @@ -25,7 +25,9 @@ public class ItemMediaItemController : MediaItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable media = _entityService .GetAll(UmbracoObjectTypes.Media, ids.ToArray()) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/SearchMediaItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/SearchMediaItemController.cs index 07dfd84e5c..39a465d0a3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/SearchMediaItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Item/SearchMediaItemController.cs @@ -24,7 +24,7 @@ public class SearchMediaItemController : MediaItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _indexedEntitySearchService.Search(UmbracoObjectTypes.Media, query, skip, take); var result = new PagedModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveMediaController.cs index 257e6ff070..3de4f760fe 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveMediaController.cs @@ -36,7 +36,10 @@ public class MoveMediaController : MediaControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveMediaRequestModel moveDocumentRequestModel) + public async Task Move( + CancellationToken cancellationToken, + Guid id, + MoveMediaRequestModel moveDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveToRecycleBinMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveToRecycleBinMediaController.cs index 81f87bc7cf..d8f41c1acc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveToRecycleBinMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/MoveToRecycleBinMediaController.cs @@ -36,7 +36,7 @@ public class MoveToRecycleBinMediaController : MediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task MoveToRecycleBin(Guid id) + public async Task MoveToRecycleBin(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/ChildrenMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/ChildrenMediaRecycleBinController.cs index 02a1decebd..f8450e4504 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/ChildrenMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/ChildrenMediaRecycleBinController.cs @@ -19,6 +19,10 @@ public class ChildrenMediaRecycleBinController : MediaRecycleBinControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100) => await GetChildren(parentId, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/DeleteMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/DeleteMediaRecycleBinController.cs index 97d2d84ee4..454b5c22b3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/DeleteMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/DeleteMediaRecycleBinController.cs @@ -40,7 +40,7 @@ public class DeleteMediaRecycleBinController : MediaRecycleBinControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/EmptyMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/EmptyMediaRecycleBinController.cs index ff45e30d3a..944fc475f4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/EmptyMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/EmptyMediaRecycleBinController.cs @@ -37,7 +37,7 @@ public class EmptyMediaRecycleBinController : MediaRecycleBinControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task EmptyRecycleBin() + public async Task EmptyRecycleBin(CancellationToken cancellationToken) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/OriginalParentMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/OriginalParentMediaRecycleBinController.cs index 5034c80dea..c2f22d04c3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/OriginalParentMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/OriginalParentMediaRecycleBinController.cs @@ -40,7 +40,9 @@ public class OriginalParentMediaRecycleBinController : MediaRecycleBinController [ProducesResponseType(typeof(ReferenceByIdModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task OriginalParent(Guid id) + public async Task OriginalParent( + CancellationToken cancellationToken, + Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RestoreMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RestoreMediaRecycleBinController.cs index a823535569..d295e8daa8 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RestoreMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RestoreMediaRecycleBinController.cs @@ -41,7 +41,10 @@ public class RestoreMediaRecycleBinController : MediaRecycleBinControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Restore(Guid id, MoveMediaRequestModel moveDocumentRequestModel) + public async Task Restore( + CancellationToken cancellationToken, + Guid id, + MoveMediaRequestModel moveDocumentRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RootMediaRecycleBinController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RootMediaRecycleBinController.cs index 37bb6e8fa6..b265fa9db4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RootMediaRecycleBinController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/RecycleBin/RootMediaRecycleBinController.cs @@ -19,6 +19,9 @@ public class RootMediaRecycleBinController : MediaRecycleBinControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/AreReferencedMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/AreReferencedMediaController.cs index 957bcb4e50..4ec013a0e7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/AreReferencedMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/AreReferencedMediaController.cs @@ -32,7 +32,11 @@ public class AreReferencedMediaController : MediaControllerBase [HttpGet("are-referenced")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> GetPagedReferencedItems([FromQuery(Name="id")]HashSet ids, int skip = 0, int take = 20) + public async Task>> GetPagedReferencedItems( + CancellationToken cancellationToken, + [FromQuery(Name="id")] HashSet ids, + int skip = 0, + int take = 20) { PagedModel distinctByKeyItemsWithReferencedRelations = await _trackedReferencesSkipTakeService.GetPagedItemsWithRelationsAsync(ids, skip, take, true); var pagedViewModel = new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedByMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedByMediaController.cs index f467bf38e1..b457ee602c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedByMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedByMediaController.cs @@ -32,6 +32,7 @@ public class ReferencedByMediaController : MediaControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task>> ReferencedBy( + CancellationToken cancellationToken, Guid id, int skip = 0, int take = 20) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedDescendantsMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedDescendantsMediaController.cs index dec0f9ebae..2990602e02 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedDescendantsMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/References/ReferencedDescendantsMediaController.cs @@ -32,7 +32,11 @@ public class ReferencedDescendantsMediaController : MediaControllerBase [HttpGet("{id:guid}/referenced-descendants")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> ReferencedDescendants(Guid id, int skip = 0, int take = 20) + public async Task>> ReferencedDescendants( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 20) { PagedModel relationItems = await _trackedReferencesSkipTakeService.GetPagedDescendantsInReferencesAsync(id, skip, take, true); var pagedViewModel = new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/SortMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/SortMediaController.cs index bb7662fd08..b4cc34f507 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/SortMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/SortMediaController.cs @@ -36,7 +36,7 @@ public class SortMediaController : MediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Sort(SortingRequestModel sortingRequestModel) + public async Task Sort(CancellationToken cancellationToken, SortingRequestModel sortingRequestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/AncestorsMediaTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/AncestorsMediaTreeController.cs index ed3c027a22..9fde8d2a8e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/AncestorsMediaTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/AncestorsMediaTreeController.cs @@ -27,6 +27,8 @@ public class AncestorsMediaTreeController : MediaTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors( + CancellationToken cancellationToken, + Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/ChildrenMediaTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/ChildrenMediaTreeController.cs index 2759f1c0c3..6aee4b0206 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/ChildrenMediaTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/ChildrenMediaTreeController.cs @@ -28,7 +28,12 @@ public class ChildrenMediaTreeController : MediaTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100, Guid? dataTypeId = null) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100, + Guid? dataTypeId = null) { IgnoreUserStartNodesForDataType(dataTypeId); return await GetChildren(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/RootMediaTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/RootMediaTreeController.cs index 91b0d2d8b3..d2ffa8a4bb 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/RootMediaTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/Tree/RootMediaTreeController.cs @@ -28,7 +28,11 @@ public class RootMediaTreeController : MediaTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100, Guid? dataTypeId = null) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100, + Guid? dataTypeId = null) { IgnoreUserStartNodesForDataType(dataTypeId); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/UpdateMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/UpdateMediaController.cs index aaa3373481..d315072a59 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/UpdateMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/UpdateMediaController.cs @@ -36,7 +36,10 @@ public class UpdateMediaController : UpdateMediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateMediaRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateMediaRequestModel requestModel) => await HandleRequest(id, async () => { MediaUpdateModel model = _mediaEditingPresentationFactory.MapUpdateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateCreateMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateCreateMediaController.cs index c6d827b734..adebeb5a07 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateCreateMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateCreateMediaController.cs @@ -32,7 +32,7 @@ public class ValidateCreateMediaController : CreateMediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(CreateMediaRequestModel requestModel) + public async Task Validate(CancellationToken cancellationToken, CreateMediaRequestModel requestModel) => await HandleRequest(requestModel.Parent?.Id, async () => { MediaCreateModel model = _mediaEditingPresentationFactory.MapCreateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateUpdateMediaController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateUpdateMediaController.cs index 5775e43f1b..14902fbe9f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateUpdateMediaController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Media/ValidateUpdateMediaController.cs @@ -32,7 +32,7 @@ public class ValidateUpdateMediaController : UpdateMediaControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(Guid id, UpdateMediaRequestModel requestModel) + public async Task Validate(CancellationToken cancellationToken, Guid id, UpdateMediaRequestModel requestModel) => await HandleRequest(id, async () => { MediaUpdateModel model = _mediaEditingPresentationFactory.MapUpdateModel(requestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedAtRootMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedAtRootMediaTypeController.cs index 122510762a..18b905825c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedAtRootMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedAtRootMediaTypeController.cs @@ -27,7 +27,7 @@ public class AllowedAtRootMediaTypeController : MediaTypeControllerBase [HttpGet("allowed-at-root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task AllowedAtRoot(int skip = 0, int take = 100) + public async Task AllowedAtRoot(CancellationToken cancellationToken, int skip = 0, int take = 100) { PagedModel result = await _mediaTypeService.GetAllAllowedAsRootAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedChildrenMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedChildrenMediaTypeController.cs index 8ca59590bf..b23f19fb9f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedChildrenMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AllowedChildrenMediaTypeController.cs @@ -31,7 +31,11 @@ public class AllowedChildrenMediaTypeController : MediaTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task AllowedChildrenByKey(Guid id, int skip = 0, int take = 100) + public async Task AllowedChildrenByKey( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 100) { Attempt?, ContentTypeOperationStatus> attempt = await _mediaTypeService.GetAllowedChildrenAsync(id, skip, take); if (attempt.Success is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AvailableCompositionMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AvailableCompositionMediaTypeController.cs index 90e47f47ba..5c3a4d8e1c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AvailableCompositionMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/AvailableCompositionMediaTypeController.cs @@ -23,7 +23,9 @@ public class AvailableCompositionMediaTypeController : MediaTypeControllerBase [HttpPost("available-compositions")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task AvailableCompositions(MediaTypeCompositionRequestModel compositionModel) + public async Task AvailableCompositions( + CancellationToken cancellationToken, + MediaTypeCompositionRequestModel compositionModel) { IEnumerable availableCompositions = await _mediaTypeEditingService.GetAvailableCompositionsAsync( compositionModel.Id, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/ByKeyMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/ByKeyMediaTypeController.cs index cbfe93e3cb..ec3d955b2f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/ByKeyMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/ByKeyMediaTypeController.cs @@ -25,7 +25,7 @@ public class ByKeyMediaTypeController : MediaTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MediaTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IMediaType? mediaType = await _mediaTypeService.GetAsync(id); if (mediaType == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CompositionReferenceMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CompositionReferenceMediaTypeController.cs index cc77133b5e..2a097f02ff 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CompositionReferenceMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CompositionReferenceMediaTypeController.cs @@ -26,7 +26,7 @@ public class CompositionReferenceMediaTypeController : MediaTypeControllerBase [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task CompositionReferences(Guid id) + public async Task CompositionReferences(CancellationToken cancellationToken, Guid id) { var mediaType = await _mediaTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CopyMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CopyMediaTypeController.cs index 1dcd06ff92..2dc4c84c4d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CopyMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CopyMediaTypeController.cs @@ -22,7 +22,10 @@ public class CopyMediaTypeController : MediaTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Copy(Guid id, CopyMediaTypeRequestModel copyMediaTypeRequestModel) + public async Task Copy( + CancellationToken cancellationToken, + Guid id, + CopyMediaTypeRequestModel copyMediaTypeRequestModel) { Attempt result = await _mediaTypeService.CopyAsync(id, copyMediaTypeRequestModel.Target?.Id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CreateMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CreateMediaTypeController.cs index 393df73f04..f11fc70bf2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CreateMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/CreateMediaTypeController.cs @@ -34,7 +34,9 @@ public class CreateMediaTypeController : MediaTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateMediaTypeRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateMediaTypeRequestModel requestModel) { MediaTypeCreateModel model = _mediaTypeEditingPresentationFactory.MapCreateModel(requestModel); Attempt result = await _mediaTypeEditingService.CreateAsync(model, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/DeleteMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/DeleteMediaTypeController.cs index 59eb282e3e..41a8f9510c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/DeleteMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/DeleteMediaTypeController.cs @@ -24,7 +24,7 @@ public class DeleteMediaTypeController : MediaTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { ContentTypeOperationStatus status = await _mediaTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); return OperationStatusResult(status); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/ByKeyMediaTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/ByKeyMediaTypeFolderController.cs index 7508cdfcf8..60a1738c5b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/ByKeyMediaTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/ByKeyMediaTypeFolderController.cs @@ -21,5 +21,5 @@ public class ByKeyMediaTypeFolderController : MediaTypeFolderControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) => await GetFolderAsync(id); + public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/CreateMediaTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/CreateMediaTypeFolderController.cs index 518b9071f8..383ab9c5d9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/CreateMediaTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/CreateMediaTypeFolderController.cs @@ -22,7 +22,9 @@ public class CreateMediaTypeFolderController : MediaTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateFolderRequestModel createFolderRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, controller => nameof(controller.ByKey)).ConfigureAwait(false); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/DeleteMediaTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/DeleteMediaTypeFolderController.cs index fe37aeab13..5884a63820 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/DeleteMediaTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/DeleteMediaTypeFolderController.cs @@ -21,5 +21,6 @@ public class DeleteMediaTypeFolderController : MediaTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) => await DeleteFolderAsync(id); + public async Task Delete(CancellationToken cancellationToken, Guid id) + => await DeleteFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/UpdateMediaTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/UpdateMediaTypeFolderController.cs index d5666ac47a..0523a22d70 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/UpdateMediaTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Folder/UpdateMediaTypeFolderController.cs @@ -22,6 +22,9 @@ public class UpdateMediaTypeFolderController : MediaTypeFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateFolderResponseModel updateFolderResponseModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateFolderResponseModel updateFolderResponseModel) => await UpdateFolderAsync(id, updateFolderResponseModel); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/ItemMediaTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/ItemMediaTypeItemController.cs index f9772c5a2f..e8117ee4f5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/ItemMediaTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/ItemMediaTypeItemController.cs @@ -23,7 +23,9 @@ public class ItemMediaTypeItemController : MediaTypeItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable mediaTypes = _mediaTypeService.GetAll(ids); List responseModels = _mapper.MapEnumerable(mediaTypes); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/SearchMediaTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/SearchMediaTypeItemController.cs index 3b7628c51c..798996bbba 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/SearchMediaTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Item/SearchMediaTypeItemController.cs @@ -27,7 +27,7 @@ public class SearchMediaTypeItemController : MediaTypeItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.MediaType, query, skip, take); if (searchResult.Items.Any() is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/MoveMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/MoveMediaTypeController.cs index 084ea89179..3a072ef050 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/MoveMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/MoveMediaTypeController.cs @@ -22,7 +22,10 @@ public class MoveMediaTypeController : MediaTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Move(Guid id, MoveMediaTypeRequestModel moveMediaTypeRequestModel) + public async Task Move( + CancellationToken cancellationToken, + Guid id, + MoveMediaTypeRequestModel moveMediaTypeRequestModel) { Attempt result = await _mediaTypeService.MoveAsync(id, moveMediaTypeRequestModel.Target?.Id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/AncestorsMediaTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/AncestorsMediaTypeTreeController.cs index b02fceb9cb..ff90cea529 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/AncestorsMediaTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/AncestorsMediaTypeTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsMediaTypeTreeController : MediaTypeTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors( + CancellationToken cancellationToken, + Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/ChildrenMediaTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/ChildrenMediaTypeTreeController.cs index 4c5f7d1435..3662360c89 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/ChildrenMediaTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/ChildrenMediaTypeTreeController.cs @@ -18,7 +18,12 @@ public class ChildrenMediaTypeTreeController : MediaTypeTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100, + bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetChildren(parentId, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/RootMediaTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/RootMediaTypeTreeController.cs index 39600e5dcc..7c0aca4791 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/RootMediaTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/Tree/RootMediaTypeTreeController.cs @@ -18,7 +18,11 @@ public class RootMediaTypeTreeController : MediaTypeTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100, bool foldersOnly = false) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100, + bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); return await GetRoot(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/UpdateMediaTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/UpdateMediaTypeController.cs index 8e19473fc6..d10f98c072 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MediaType/UpdateMediaTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MediaType/UpdateMediaTypeController.cs @@ -38,7 +38,10 @@ public class UpdateMediaTypeController : MediaTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateMediaTypeRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateMediaTypeRequestModel requestModel) { IMediaType? mediaType = await _mediaTypeService.GetAsync(id); if (mediaType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/ByKeyMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/ByKeyMemberController.cs index 5f29df4eca..f70afe5e40 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/ByKeyMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/ByKeyMemberController.cs @@ -30,7 +30,7 @@ public class ByKeyMemberController : MemberControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MemberResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IMember? member = await _memberEditingService.GetAsync(id); if (member == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/ConfigurationMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/ConfigurationMemberController.cs index 2c3e7e0ef3..688e8392f7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/ConfigurationMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/ConfigurationMemberController.cs @@ -18,7 +18,7 @@ public class ConfigurationMemberController : MemberControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MemberConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { MemberConfigurationResponseModel responseModel = _configurationPresentationFactory.CreateMemberConfigurationResponseModel(); return Task.FromResult(Ok(responseModel)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/CreateMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/CreateMemberController.cs index 719e2e0775..ebf0b5d824 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/CreateMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/CreateMemberController.cs @@ -34,7 +34,7 @@ public class CreateMemberController : MemberControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Create(CreateMemberRequestModel createRequestModel) + public async Task Create(CancellationToken cancellationToken, CreateMemberRequestModel createRequestModel) { MemberCreateModel model = _memberEditingPresentationFactory.MapCreateModel(createRequestModel); Attempt result = await _memberEditingService.CreateAsync(model, CurrentUser(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/DeleteMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/DeleteMemberController.cs index e13254fa00..f11e7bd0b4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/DeleteMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/DeleteMemberController.cs @@ -26,7 +26,7 @@ public class DeleteMemberController : MemberControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _memberEditingService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/Filter/FilterMemberFilterController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/Filter/FilterMemberFilterController.cs index 2ca5640763..8ea4a50eb2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/Filter/FilterMemberFilterController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/Filter/FilterMemberFilterController.cs @@ -34,6 +34,7 @@ public class FilterMemberFilterController : MemberFilterControllerBase [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] public async Task Filter( + CancellationToken cancellationToken, Guid? memberTypeId = null, string? memberGroupName = null, bool? isApproved = null, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/ItemMemberItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/ItemMemberItemController.cs index c44875d6be..76acf321a0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/ItemMemberItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/ItemMemberItemController.cs @@ -25,7 +25,9 @@ public class ItemMemberItemController : MemberItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable members = _entityService .GetAll(UmbracoObjectTypes.Member, ids.ToArray()) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/SearchMemberItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/SearchMemberItemController.cs index 2e6eb4f739..d16fcd9522 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/SearchMemberItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/Item/SearchMemberItemController.cs @@ -24,7 +24,7 @@ public class SearchMemberItemController : MemberItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _indexedEntitySearchService.Search(UmbracoObjectTypes.Member, query, skip, take); var result = new PagedModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/UpdateMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/UpdateMemberController.cs index 63988686c2..8d7d83859b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/UpdateMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/UpdateMemberController.cs @@ -33,7 +33,10 @@ public class UpdateMemberController : MemberControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateMemberRequestModel updateRequestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateMemberRequestModel updateRequestModel) { MemberUpdateModel model = _memberEditingPresentationFactory.MapUpdateModel(updateRequestModel); Attempt result = await _memberEditingService.UpdateAsync(id, model, CurrentUser(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateCreateMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateCreateMemberController.cs index 3929bf9b26..7528988d04 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateCreateMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateCreateMemberController.cs @@ -29,7 +29,9 @@ public class ValidateCreateMemberController : MemberControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(CreateMemberRequestModel requestModel) + public async Task Validate( + CancellationToken cancellationToken, + CreateMemberRequestModel requestModel) { MemberCreateModel model = _memberEditingPresentationFactory.MapCreateModel(requestModel); Attempt result = await _memberEditingService.ValidateCreateAsync(model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateUpdateMemberController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateUpdateMemberController.cs index 874a0ca9f4..8c5fe877c0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateUpdateMemberController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Member/ValidateUpdateMemberController.cs @@ -29,7 +29,10 @@ public class ValidateUpdateMemberController : MemberControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Validate(Guid id, UpdateMemberRequestModel requestModel) + public async Task Validate( + CancellationToken cancellationToken, + Guid id, + UpdateMemberRequestModel requestModel) { MemberUpdateModel model = _memberEditingPresentationFactory.MapUpdateModel(requestModel); Attempt result = await _memberEditingService.ValidateUpdateAsync(id, model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/AllMemberGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/AllMemberGroupController.cs index d5dcad9245..8f2bfd7318 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/AllMemberGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/AllMemberGroupController.cs @@ -24,7 +24,10 @@ public class AllMemberGroupController : MemberGroupControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { IMemberGroup[] memberGroups = (await _memberGroupService.GetAllAsync()).ToArray(); var viewModel = new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/ByKeyMemberGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/ByKeyMemberGroupController.cs index 5d2c6de087..65fb21fa27 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/ByKeyMemberGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/ByKeyMemberGroupController.cs @@ -24,7 +24,7 @@ public class ByKeyMemberGroupController : MemberGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MemberGroupResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IMemberGroup? memberGroup = await _memberGroupService.GetAsync(id); if (memberGroup is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/CreateMemberGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/CreateMemberGroupController.cs index 3bb4092a86..a2c1b92360 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/CreateMemberGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/CreateMemberGroupController.cs @@ -26,7 +26,7 @@ public class CreateMemberGroupController : MemberGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MemberGroupResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Create(CreateMemberGroupRequestModel model) + public async Task Create(CancellationToken cancellationToken, CreateMemberGroupRequestModel model) { IMemberGroup? memberGroup = _mapper.Map(model); Attempt result = await _memberGroupService.CreateAsync(memberGroup!); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/DeleteMemberGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/DeleteMemberGroupController.cs index f798a31bbd..d73f4a55a5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/DeleteMemberGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/DeleteMemberGroupController.cs @@ -20,7 +20,7 @@ public class DeleteMemberGroupController : MemberGroupControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _memberGroupService.DeleteAsync(id); return result.Success diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Item/ItemMemberGroupItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Item/ItemMemberGroupItemController.cs index a6292350ad..cd84787a13 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Item/ItemMemberGroupItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Item/ItemMemberGroupItemController.cs @@ -25,7 +25,9 @@ public class ItemMemberGroupItemController : MemberGroupItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable memberGroups = _entityService.GetAll(UmbracoObjectTypes.MemberGroup, ids.ToArray()); List responseModel = _mapper.MapEnumerable(memberGroups); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Tree/RootMemberGroupTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Tree/RootMemberGroupTreeController.cs index cc9698ea61..3328df5514 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Tree/RootMemberGroupTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/Tree/RootMemberGroupTreeController.cs @@ -18,6 +18,9 @@ public class RootMemberGroupTreeController : MemberGroupTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/UpdateMemberGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/UpdateMemberGroupController.cs index b0d18c4a2c..3ced2c23a1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/UpdateMemberGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberGroup/UpdateMemberGroupController.cs @@ -27,7 +27,10 @@ public class UpdateMemberGroupController : MemberGroupControllerBase [ProducesResponseType(typeof(MemberGroupResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateMemberGroupRequestModel model) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateMemberGroupRequestModel model) { IMemberGroup? current = await _memberGroupService.GetAsync(id); if (current is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/AvailableCompositionMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/AvailableCompositionMemberTypeController.cs index f8b3f2d030..277ef4c4f3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/AvailableCompositionMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/AvailableCompositionMemberTypeController.cs @@ -23,7 +23,9 @@ public class AvailableCompositionMemberTypeController : MemberTypeControllerBase [HttpPost("available-compositions")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task AvailableCompositions(MemberTypeCompositionRequestModel compositionModel) + public async Task AvailableCompositions( + CancellationToken cancellationToken, + MemberTypeCompositionRequestModel compositionModel) { IEnumerable availableCompositions = await _memberTypeEditingService.GetAvailableCompositionsAsync( compositionModel.Id, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/ByKeyMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/ByKeyMemberTypeController.cs index 27ab56bf45..1dc7d77037 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/ByKeyMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/ByKeyMemberTypeController.cs @@ -25,7 +25,7 @@ public class ByKeyMemberTypeController : MemberTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(MemberTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IMemberType? memberType = await _memberTypeService.GetAsync(id); if (memberType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CompositionReferenceMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CompositionReferenceMemberTypeController.cs index ac77eb5a81..55df93ef63 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CompositionReferenceMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CompositionReferenceMemberTypeController.cs @@ -26,7 +26,7 @@ public class CompositionReferenceMemberTypeController : MemberTypeControllerBase [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task CompositionReferences(Guid id) + public async Task CompositionReferences(CancellationToken cancellationToken, Guid id) { var memberType = await _memberTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CopyMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CopyMemberTypeController.cs index eb90eccff0..b19bfcd3ce 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CopyMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CopyMemberTypeController.cs @@ -21,7 +21,7 @@ public class CopyMemberTypeController : MemberTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Copy(Guid id) + public async Task Copy(CancellationToken cancellationToken, Guid id) { Attempt result = await _memberTypeService.CopyAsync(id, containerKey: null); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CreateMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CreateMemberTypeController.cs index 54024fc7bc..2439118ac7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CreateMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/CreateMemberTypeController.cs @@ -34,7 +34,9 @@ public class CreateMemberTypeController : MemberTypeControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateMemberTypeRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateMemberTypeRequestModel requestModel) { MemberTypeCreateModel model = _memberTypeEditingPresentationFactory.MapCreateModel(requestModel); Attempt result = await _memberTypeEditingService.CreateAsync(model, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/DeleteMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/DeleteMemberTypeController.cs index a06b0eb5d3..bb3e87e7bc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/DeleteMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/DeleteMemberTypeController.cs @@ -23,7 +23,7 @@ public class DeleteMemberTypeController : MemberTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { ContentTypeOperationStatus status = await _memberTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); return OperationStatusResult(status); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/ItemMemberTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/ItemMemberTypeItemController.cs index 2b906ce1df..b138ae7c40 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/ItemMemberTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/ItemMemberTypeItemController.cs @@ -23,7 +23,9 @@ public class ItemMemberTypeItemController : MemberTypeItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable memberTypes = _memberTypeService.GetAll(ids); List responseModels = _mapper.MapEnumerable(memberTypes); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/SearchMemberTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/SearchMemberTypeItemController.cs index abf9946b76..49723d0513 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/SearchMemberTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Item/SearchMemberTypeItemController.cs @@ -26,7 +26,7 @@ public class SearchMemberTypeItemController : MemberTypeItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.MemberType, query, skip, take); if (searchResult.Items.Any() is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs index 081a469ef6..d504ab7a1d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs @@ -18,6 +18,9 @@ public class RootMemberTypeTreeController : MemberTypeTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/UpdateMemberTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/UpdateMemberTypeController.cs index 3d8ae202af..2915662da3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/UpdateMemberTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/UpdateMemberTypeController.cs @@ -38,7 +38,10 @@ public class UpdateMemberTypeController : MemberTypeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateMemberTypeRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateMemberTypeRequestModel requestModel) { IMemberType? memberType = await _memberTypeService.GetAsync(id); if (memberType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/BuildModelsBuilderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/BuildModelsBuilderController.cs index b2c7959b1b..9d5f67cb1f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/BuildModelsBuilderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/BuildModelsBuilderController.cs @@ -34,7 +34,7 @@ public class BuildModelsBuilderController : ModelsBuilderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status428PreconditionRequired)] [MapToApiVersion("1.0")] - public async Task BuildModels() + public async Task BuildModels(CancellationToken cancellationToken) { try { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/GetModelsBuilderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/GetModelsBuilderController.cs index 4e5a1e3931..764ba65b75 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/GetModelsBuilderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/GetModelsBuilderController.cs @@ -16,5 +16,6 @@ public class GetModelsBuilderController : ModelsBuilderControllerBase [HttpGet("dashboard")] [ProducesResponseType(typeof(ModelsBuilderResponseModel), StatusCodes.Status200OK)] [MapToApiVersion("1.0")] - public async Task> GetDashboard() => await Task.FromResult(Ok(_modelsBuilderPresentationFactory.Create())); + public async Task> GetDashboard(CancellationToken cancellationToken) + => await Task.FromResult(Ok(_modelsBuilderPresentationFactory.Create())); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/StatusModelsBuilderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/StatusModelsBuilderController.cs index b64f46648b..fcbcd9e3cc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/StatusModelsBuilderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/ModelsBuilder/StatusModelsBuilderController.cs @@ -18,7 +18,7 @@ public class StatusModelsBuilderController : ModelsBuilderControllerBase [HttpGet("status")] [ProducesResponseType(typeof(OutOfDateStatusResponseModel), StatusCodes.Status200OK)] [MapToApiVersion("1.0")] - public async Task> GetModelsOutOfDateStatus() + public async Task> GetModelsOutOfDateStatus(CancellationToken cancellationToken) { OutOfDateStatusResponseModel status = _outOfDateModelsStatus.IsEnabled ? _outOfDateModelsStatus.IsOutOfDate diff --git a/src/Umbraco.Cms.Api.Management/Controllers/ObjectTypes/AllowedObjectTypesController.cs b/src/Umbraco.Cms.Api.Management/Controllers/ObjectTypes/AllowedObjectTypesController.cs index 5f0d37e7b3..394ddb6573 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/ObjectTypes/AllowedObjectTypesController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/ObjectTypes/AllowedObjectTypesController.cs @@ -17,7 +17,7 @@ public class AllowedObjectTypesController : ObjectTypesControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task Allowed(int skip = 0, int take = 100) + public async Task Allowed(CancellationToken cancellationToken, int skip = 0, int take = 100) { ObjectTypeResponseModel[] objectTypes = _objectTypePresentationFactory.Create().ToArray(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/AllMigrationStatusPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/AllMigrationStatusPackageController.cs index c061b99b77..a5fbf0e007 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/AllMigrationStatusPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/AllMigrationStatusPackageController.cs @@ -31,7 +31,10 @@ public class AllMigrationStatusPackageController : PackageControllerBase [HttpGet("migration-status")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> AllMigrationStatuses(int skip = 0, int take = 100) + public async Task>> AllMigrationStatuses( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { PagedModel migrationPlans = await _packagingService.GetInstalledPackagesFromMigrationPlansAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/AllPackageManifestController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/AllPackageManifestController.cs index f8eb6b3539..8b6c84b893 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/AllPackageManifestController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/AllPackageManifestController.cs @@ -26,7 +26,7 @@ public class AllPackageManifestController : PackageControllerBase [HttpGet("manifest")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task AllPackageManifests() + public async Task AllPackageManifests(CancellationToken cancellationToken) { PackageManifest[] packageManifests = (await _packageManifestService.GetAllPackageManifestsAsync()).ToArray(); return Ok(_umbracoMapper.MapEnumerable(packageManifests)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/ConfigurationPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/ConfigurationPackageController.cs index bdff47b84d..9ad8c1a20e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/ConfigurationPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/ConfigurationPackageController.cs @@ -16,7 +16,7 @@ public class ConfigurationPackageController : PackageControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PackageConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { PackageConfigurationResponseModel responseModel = _packagePresentationFactory.CreateConfigurationResponseModel(); return Task.FromResult(Ok(responseModel)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/AllCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/AllCreatedPackageController.cs index 378ae2da7e..64ab3dec47 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/AllCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/AllCreatedPackageController.cs @@ -31,7 +31,10 @@ public class AllCreatedPackageController : CreatedPackageControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { PagedModel createdPackages = await _packagingService.GetCreatedPackagesAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/ByKeyCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/ByKeyCreatedPackageController.cs index 9f6bb47a00..a0fa1ae497 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/ByKeyCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/ByKeyCreatedPackageController.cs @@ -29,7 +29,7 @@ public class ByKeyCreatedPackageController : CreatedPackageControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(PackageDefinitionResponseModel), StatusCodes.Status200OK)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { PackageDefinition? package = await _packagingService.GetCreatedPackageByKeyAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/CreateCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/CreateCreatedPackageController.cs index eae9010c91..be19a8e6e1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/CreateCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/CreateCreatedPackageController.cs @@ -38,7 +38,9 @@ public class CreateCreatedPackageController : CreatedPackageControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status201Created)] - public async Task Create(CreatePackageRequestModel createPackageRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreatePackageRequestModel createPackageRequestModel) { PackageDefinition packageDefinition = _packagePresentationFactory.CreatePackageDefinition(createPackageRequestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DeleteCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DeleteCreatedPackageController.cs index faa7d2d146..6561472bd3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DeleteCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DeleteCreatedPackageController.cs @@ -30,7 +30,7 @@ public class DeleteCreatedPackageController : CreatedPackageControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _packagingService.DeleteCreatedPackageAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DownloadCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DownloadCreatedPackageController.cs index 65cbd3555d..007e13b769 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DownloadCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/DownloadCreatedPackageController.cs @@ -27,7 +27,7 @@ public class DownloadCreatedPackageController : CreatedPackageControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(FileContentResult), StatusCodes.Status200OK)] - public async Task Download(Guid id) + public async Task Download(CancellationToken cancellationToken, Guid id) { PackageDefinition? package = await _packagingService.GetCreatedPackageByKeyAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/UpdateCreatedPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/UpdateCreatedPackageController.cs index fb40488eb6..b22e63ccc4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/UpdateCreatedPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/Created/UpdateCreatedPackageController.cs @@ -38,7 +38,10 @@ public class UpdateCreatedPackageController : CreatedPackageControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Update(Guid id, UpdatePackageRequestModel updatePackageRequestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdatePackageRequestModel updatePackageRequestModel) { PackageDefinition? package = await _packagingService.GetCreatedPackageByKeyAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/PublicPackageManifestController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/PublicPackageManifestController.cs index e1204091fd..af9e3562e0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/PublicPackageManifestController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/PublicPackageManifestController.cs @@ -25,7 +25,7 @@ public class PublicPackageManifestController : PackageControllerBase [HttpGet("manifest/public")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task PublicPackageManifests() + public async Task PublicPackageManifests(CancellationToken cancellationToken) { PackageManifest[] packageManifests = (await _packageManifestService.GetPublicPackageManifestsAsync()).ToArray(); return Ok(_umbracoMapper.MapEnumerable(packageManifests)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Package/RunMigrationPackageController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Package/RunMigrationPackageController.cs index 360e3197e2..56d7a42794 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Package/RunMigrationPackageController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Package/RunMigrationPackageController.cs @@ -25,7 +25,7 @@ public class RunMigrationPackageController : PackageControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status409Conflict)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task RunMigrations(string name) + public async Task RunMigrations(CancellationToken cancellationToken, string name) { Attempt result = await _packageMigrationRunner.RunPendingPackageMigrations(name); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/ByPathPartialViewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/ByPathPartialViewController.cs index 4736ec1203..3fdae52115 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/ByPathPartialViewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/ByPathPartialViewController.cs @@ -27,7 +27,7 @@ public class ByPathPartialViewController : PartialViewControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PartialViewResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); IPartialView? partialView = await _partialViewService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/CreatePartialViewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/CreatePartialViewController.cs index b14f1a4846..61bf11008e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/CreatePartialViewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/CreatePartialViewController.cs @@ -34,7 +34,9 @@ public class CreatePartialViewController : PartialViewControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreatePartialViewRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreatePartialViewRequestModel requestModel) { PartialViewCreateModel createModel = _umbracoMapper.Map(requestModel)!; Attempt createAttempt = await _partialViewService.CreateAsync(createModel, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/DeletePartialViewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/DeletePartialViewController.cs index 54636d3b3e..a72c8129b5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/DeletePartialViewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/DeletePartialViewController.cs @@ -27,7 +27,7 @@ public class DeletePartialViewController : PartialViewControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); PartialViewOperationStatus operationStatus = await _partialViewService.DeleteAsync(path, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/ByPathPartialViewFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/ByPathPartialViewFolderController.cs index ce9c70fc56..df15c726b5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/ByPathPartialViewFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/ByPathPartialViewFolderController.cs @@ -26,7 +26,7 @@ public class ByPathPartialViewFolderController : PartialViewFolderControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PartialViewFolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); PartialViewFolderModel? folder = await _partialViewFolderService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/CreatePartialViewFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/CreatePartialViewFolderController.cs index 97b6b0eb24..f260fe2329 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/CreatePartialViewFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/CreatePartialViewFolderController.cs @@ -29,7 +29,9 @@ public class CreatePartialViewFolderController : PartialViewFolderControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreatePartialViewFolderRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreatePartialViewFolderRequestModel requestModel) { PartialViewFolderCreateModel createModel = _mapper.Map(requestModel)!; Attempt result = await _partialViewFolderService.CreateAsync(createModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/DeletePartialViewFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/DeletePartialViewFolderController.cs index 8fb2c3356d..121cb1dae7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/DeletePartialViewFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Folder/DeletePartialViewFolderController.cs @@ -20,7 +20,9 @@ public class DeletePartialViewFolderController : PartialViewFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete( + CancellationToken cancellationToken, + string path) { path = DecodePath(path).VirtualPathToSystemPath(); PartialViewFolderOperationStatus result = await _partialViewFolderService.DeleteAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Item/ItemPartialViewItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Item/ItemPartialViewItemController.cs index 3b87cb44f0..bc79bb592f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Item/ItemPartialViewItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Item/ItemPartialViewItemController.cs @@ -18,7 +18,9 @@ public class ItemPartialViewItemController : PartialViewItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "path")] HashSet paths) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "path")] HashSet paths) { paths = paths.Select(path => path.VirtualPathToSystemPath()).ToHashSet(); IEnumerable responseModels = _fileItemPresentationFactory.CreatePartialViewItemResponseModels(paths); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/RenamePartialViewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/RenamePartialViewController.cs index 68dec8e993..bb3cea933c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/RenamePartialViewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/RenamePartialViewController.cs @@ -31,7 +31,10 @@ public class RenamePartialViewController : PartialViewControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Rename(string path, RenamePartialViewRequestModel requestModel) + public async Task Rename( + CancellationToken cancellationToken, + string path, + RenamePartialViewRequestModel requestModel) { PartialViewRenameModel renameModel = _umbracoMapper.Map(requestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/ByIdController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/ByIdController.cs index 9cbd830642..53b4cce0e5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/ByIdController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/ByIdController.cs @@ -24,7 +24,9 @@ public class ByIdController : PartialViewControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PartialViewSnippetResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetById(string id) + public async Task GetById( + CancellationToken cancellationToken, + string id) { PartialViewSnippet? snippet = await _partialViewService.GetSnippetAsync(id); return snippet is not null diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/GetAllController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/GetAllController.cs index c126f17761..300c210fef 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/GetAllController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Snippet/GetAllController.cs @@ -25,7 +25,7 @@ public class GetAllController : PartialViewControllerBase [HttpGet("snippet")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task GetAll(int skip = 0, int take = 100) + public async Task GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { PagedModel snippets = await _partialViewService.GetSnippetsAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/AncestorsPartialViewTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/AncestorsPartialViewTreeController.cs index 6ad15fd86c..4048e1b9e7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/AncestorsPartialViewTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/AncestorsPartialViewTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsPartialViewTreeController : PartialViewTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(string descendantPath) + public async Task>> Ancestors( + CancellationToken cancellationToken, + string descendantPath) => await GetAncestors(descendantPath); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/ChildrenPartialViewTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/ChildrenPartialViewTreeController.cs index 8cde0c3d32..2877248e41 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/ChildrenPartialViewTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/ChildrenPartialViewTreeController.cs @@ -18,6 +18,10 @@ public class ChildrenPartialViewTreeController : PartialViewTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(string parentPath, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + string parentPath, + int skip = 0, + int take = 100) => await GetChildren(parentPath, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/RootPartialViewTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/RootPartialViewTreeController.cs index 4fc61e878b..4247ded602 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/RootPartialViewTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/Tree/RootPartialViewTreeController.cs @@ -18,6 +18,9 @@ public class RootPartialViewTreeController : PartialViewTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/UpdatePartialViewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/UpdatePartialViewController.cs index 94e344f549..a935f87a80 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PartialView/UpdatePartialViewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PartialView/UpdatePartialViewController.cs @@ -34,7 +34,10 @@ public class UpdatePartialViewController : PartialViewControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(string path, UpdatePartialViewRequestModel updateViewModel) + public async Task Update( + CancellationToken cancellationToken, + string path, + UpdatePartialViewRequestModel updateViewModel) { path = DecodePath(path).VirtualPathToSystemPath(); PartialViewUpdateModel updateModel = _mapper.Map(updateViewModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Preview/EndPreviewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Preview/EndPreviewController.cs index 8b3532f6ab..31f8d21e77 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Preview/EndPreviewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Preview/EndPreviewController.cs @@ -15,7 +15,7 @@ public class EndPreviewController : PreviewControllerBase [HttpDelete] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public IActionResult End() + public IActionResult End(CancellationToken cancellationToken) { _previewService.EndPreview(); return Ok(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Preview/EnterPreviewController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Preview/EnterPreviewController.cs index 80a569eb44..a6defefb71 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Preview/EnterPreviewController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Preview/EnterPreviewController.cs @@ -15,7 +15,7 @@ public class EnterPreviewController : PreviewControllerBase [HttpPost] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public IActionResult Enter() + public IActionResult Enter(CancellationToken cancellationToken) { _previewService.EnterPreview(); return Ok(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Profiling/GetStatusProfilingController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Profiling/GetStatusProfilingController.cs index b69ed72c20..6dae531f5c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Profiling/GetStatusProfilingController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Profiling/GetStatusProfilingController.cs @@ -18,7 +18,7 @@ public class GetStatusProfilingController : ProfilingControllerBase [HttpGet("status")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProfilingStatusResponseModel), StatusCodes.Status200OK)] - public async Task Status() + public async Task Status(CancellationToken cancellationToken) { Attempt result = await _webProfilerService.GetStatus(); return result.Success diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Profiling/UpdateStatusProfilingController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Profiling/UpdateStatusProfilingController.cs index 6e91e1f3ac..b90a976c76 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Profiling/UpdateStatusProfilingController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Profiling/UpdateStatusProfilingController.cs @@ -18,7 +18,9 @@ public class UpdateStatusProfilingController : ProfilingControllerBase [HttpPut("status")] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Status(ProfilingStatusRequestModel model) + public async Task Status( + CancellationToken cancellationToken, + ProfilingStatusRequestModel model) { Attempt result = await _webProfilerService.SetStatus(model.Enabled); return result.Success diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PropertyType/IsUsedPropertyTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PropertyType/IsUsedPropertyTypeController.cs index a4c00a1505..8db2363d07 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PropertyType/IsUsedPropertyTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PropertyType/IsUsedPropertyTypeController.cs @@ -22,7 +22,7 @@ public class IsUsedPropertyTypeController : PropertyTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(bool), StatusCodes.Status200OK)] - public async Task Get(Guid contentTypeId, string propertyAlias) + public async Task Get(CancellationToken cancellationToken, Guid contentTypeId, string propertyAlias) { Attempt result = await _propertyTypeUsageService.HasSavedPropertyValuesAsync(contentTypeId, propertyAlias); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/CollectPublishedCacheController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/CollectPublishedCacheController.cs index db1cc57988..9c70f8db8a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/CollectPublishedCacheController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/CollectPublishedCacheController.cs @@ -16,7 +16,7 @@ public class CollectPublishedCacheController : PublishedCacheControllerBase [HttpPost("collect")] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Collect() + public async Task Collect(CancellationToken cancellationToken) { GC.Collect(); await _publishedSnapshotService.CollectAsync(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/RebuildPublishedCacheController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/RebuildPublishedCacheController.cs index 2772beefd4..b94a8034e0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/RebuildPublishedCacheController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/RebuildPublishedCacheController.cs @@ -16,7 +16,7 @@ public class RebuildPublishedCacheController : PublishedCacheControllerBase [HttpPost("rebuild")] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Rebuild() + public async Task Rebuild(CancellationToken cancellationToken) { _publishedSnapshotService.Rebuild(); return await Task.FromResult(Ok()); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/ReloadPublishedCacheController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/ReloadPublishedCacheController.cs index d3defdcce6..d9d93944ad 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/ReloadPublishedCacheController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/ReloadPublishedCacheController.cs @@ -16,7 +16,7 @@ public class ReloadPublishedCacheController : PublishedCacheControllerBase [HttpPost("reload")] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Reload() + public async Task Reload(CancellationToken cancellationToken) { _distributedCache.RefreshAllPublishedSnapshot(); return await Task.FromResult(Ok()); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/StatusPublishedCacheController.cs b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/StatusPublishedCacheController.cs index 8cd308171c..e384742cb1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/StatusPublishedCacheController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/PublishedCache/StatusPublishedCacheController.cs @@ -16,6 +16,6 @@ public class StatusPublishedCacheController : PublishedCacheControllerBase [HttpGet("status")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(string), StatusCodes.Status200OK)] - public async Task> Status() + public async Task> Status(CancellationToken cancellationToken) => await Task.FromResult(Ok(_publishedSnapshotStatus.GetStatus())); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/ByKeyRedirectUrlManagementController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/ByKeyRedirectUrlManagementController.cs index c24912f61f..c8470ddc32 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/ByKeyRedirectUrlManagementController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/ByKeyRedirectUrlManagementController.cs @@ -26,7 +26,11 @@ public class ByKeyRedirectUrlManagementController : RedirectUrlManagementControl [MapToApiVersion("1.0")] [HttpGet("{id:guid}")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public Task>> ByKey(Guid id, int skip = 0, int take = 100) + public Task>> ByKey( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 100) { IRedirectUrl[] redirects = _redirectUrlService.GetContentRedirectUrls(id).ToArray(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/DeleteByKeyRedirectUrlManagementController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/DeleteByKeyRedirectUrlManagementController.cs index fae25a6174..3a0e60b61d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/DeleteByKeyRedirectUrlManagementController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/DeleteByKeyRedirectUrlManagementController.cs @@ -18,7 +18,7 @@ public class DeleteByKeyRedirectUrlManagementController : RedirectUrlManagementC [MapToApiVersion("1.0")] [HttpDelete("{id:guid}")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task DeleteByKey(Guid id) + public async Task DeleteByKey(CancellationToken cancellationToken, Guid id) { _redirectUrlService.Delete(id); return Ok(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetAllRedirectUrlManagementController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetAllRedirectUrlManagementController.cs index 07238f62f9..f4600ef653 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetAllRedirectUrlManagementController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetAllRedirectUrlManagementController.cs @@ -27,7 +27,11 @@ public class GetAllRedirectUrlManagementController : RedirectUrlManagementContro [HttpGet] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> GetAll(string? filter, int skip = 0, int take = 100) + public async Task>> GetAll( + CancellationToken cancellationToken, + string? filter, + int skip = 0, + int take = 100) { long total; IEnumerable redirects = filter is null diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetStatusRedirectUrlManagementController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetStatusRedirectUrlManagementController.cs index 6de61bb852..1500df85ad 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetStatusRedirectUrlManagementController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/GetStatusRedirectUrlManagementController.cs @@ -17,6 +17,6 @@ public class GetStatusRedirectUrlManagementController : RedirectUrlManagementCon [MapToApiVersion("1.0")] [HttpGet("status")] [ProducesResponseType(typeof(RedirectUrlStatusResponseModel), 200)] - public Task> GetStatus() => + public Task> GetStatus(CancellationToken cancellationToken) => Task.FromResult>(_redirectUrlStatusPresentationFactory.CreateViewModel()); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/SetStatusRedirectUrlManagementController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/SetStatusRedirectUrlManagementController.cs index 45bd818123..5f7e1a9a9f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/SetStatusRedirectUrlManagementController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RedirectUrlManagement/SetStatusRedirectUrlManagementController.cs @@ -25,7 +25,7 @@ public class SetStatusRedirectUrlManagementController : RedirectUrlManagementCon // But maybe there is a valid use case for doing it on the fly. [HttpPost("status")] [MapToApiVersion("1.0")] - public async Task SetStatus([FromQuery] RedirectStatus status) + public async Task SetStatus(CancellationToken cancellationToken, [FromQuery] RedirectStatus status) { // TODO: uncomment this when auth is implemented. // var userIsAdmin = _backOfficeSecurityAccessor.BackOfficeSecurity?.CurrentUser?.IsAdmin(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Relation/ByRelationTypeKeyRelationController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Relation/ByRelationTypeKeyRelationController.cs index f0d904ec20..f0aee0317f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Relation/ByRelationTypeKeyRelationController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Relation/ByRelationTypeKeyRelationController.cs @@ -33,7 +33,11 @@ public class ByRelationTypeKeyRelationController : RelationControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status404NotFound)] - public async Task ByRelationTypeKey(Guid id, int skip = 0, int take = 100) + public async Task ByRelationTypeKey( + CancellationToken cancellationToken, + Guid id, + int skip = 0, + int take = 100) { Attempt, RelationOperationStatus> relationsAttempt = await _relationService.GetPagedByRelationTypeKeyAsync(id, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/AllRelationTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/AllRelationTypeController.cs index 357802ae7d..337a7ba93b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/AllRelationTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/AllRelationTypeController.cs @@ -26,7 +26,10 @@ public class AllRelationTypeController : RelationTypeControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Get(int skip = 0, int take = 100) + public async Task>> Get( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { PagedModel allRelationTypes = await _relationService.GetPagedRelationTypesAsync(skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/ByKeyRelationTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/ByKeyRelationTypeController.cs index 0a0ecfb310..a0d6ae4a46 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/ByKeyRelationTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/ByKeyRelationTypeController.cs @@ -24,7 +24,7 @@ public class ByKeyRelationTypeController : RelationTypeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(RelationTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IRelationType? relationType = _relationService.GetRelationTypeById(id); if (relationType is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/Item/ItemRelationTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/Item/ItemRelationTypeItemController.cs index c8e3541b49..1a7d3ea3ba 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/RelationType/Item/ItemRelationTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/RelationType/Item/ItemRelationTypeItemController.cs @@ -23,7 +23,9 @@ public class ItemRelationTypeItemController : RelationTypeItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { // relation service does not allow fetching a collection of relation types by their ids; instead it relies // heavily on caching, which means this is as fast as it gets - even if it looks less than performant diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/ByPathScriptController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/ByPathScriptController.cs index fb9a087157..67a3b605a7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/ByPathScriptController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/ByPathScriptController.cs @@ -27,7 +27,7 @@ public class ByPathScriptController : ScriptControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ScriptResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); IScript? script = await _scriptService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/CreateScriptController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/CreateScriptController.cs index f9efb7e2bf..624b79b8c7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/CreateScriptController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/CreateScriptController.cs @@ -34,7 +34,7 @@ public class CreateScriptController : ScriptControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateScriptRequestModel requestModel) + public async Task Create(CancellationToken cancellationToken, CreateScriptRequestModel requestModel) { ScriptCreateModel createModel = _umbracoMapper.Map(requestModel)!; Attempt createAttempt = await _scriptService.CreateAsync(createModel, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/DeleteScriptController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/DeleteScriptController.cs index 42225efa3d..74dc1554e8 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/DeleteScriptController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/DeleteScriptController.cs @@ -27,7 +27,7 @@ public class DeleteScriptController : ScriptControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); ScriptOperationStatus operationStatus = await _scriptService.DeleteAsync(path, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/ByPathScriptFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/ByPathScriptFolderController.cs index 57c7f34d28..84543bffe4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/ByPathScriptFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/ByPathScriptFolderController.cs @@ -26,7 +26,7 @@ public class ByPathScriptFolderController : ScriptFolderControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ScriptFolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); ScriptFolderModel? folder = await _scriptFolderService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/CreateScriptFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/CreateScriptFolderController.cs index c638cb4b38..53c015e548 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/CreateScriptFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/CreateScriptFolderController.cs @@ -29,7 +29,9 @@ public class CreateScriptFolderController : ScriptFolderControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateScriptFolderRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateScriptFolderRequestModel requestModel) { ScriptFolderCreateModel createModel = _mapper.Map(requestModel)!; Attempt result = await _scriptFolderService.CreateAsync(createModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/DeleteScriptFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/DeleteScriptFolderController.cs index deb195ad3f..b5fd5022b7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/DeleteScriptFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Folder/DeleteScriptFolderController.cs @@ -20,7 +20,7 @@ public class DeleteScriptFolderController : ScriptFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); ScriptFolderOperationStatus result = await _scriptFolderService.DeleteAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Item/ItemScriptItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Item/ItemScriptItemController.cs index 9bac6e66bb..67e9519d0b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Item/ItemScriptItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Item/ItemScriptItemController.cs @@ -18,7 +18,9 @@ public class ItemScriptItemController : ScriptItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "path")] HashSet paths) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "path")] HashSet paths) { paths = paths.Select(path => path.VirtualPathToSystemPath()).ToHashSet(); IEnumerable responseModels = _fileItemPresentationFactory.CreateScriptItemResponseModels(paths); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/RenameScriptController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/RenameScriptController.cs index 51a61b133d..7c45eac851 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/RenameScriptController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/RenameScriptController.cs @@ -31,7 +31,10 @@ public class RenameScriptController : ScriptControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Rename(string path, RenameScriptRequestModel requestModel) + public async Task Rename( + CancellationToken cancellationToken, + string path, + RenameScriptRequestModel requestModel) { ScriptRenameModel renameModel = _umbracoMapper.Map(requestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/AncestorsScriptTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/AncestorsScriptTreeController.cs index a2f2f43b7c..ce3ae4189c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/AncestorsScriptTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/AncestorsScriptTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsScriptTreeController : ScriptTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(string descendantPath) + public async Task>> Ancestors( + CancellationToken cancellationToken, + string descendantPath) => await GetAncestors(descendantPath); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/ChildrenScriptTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/ChildrenScriptTreeController.cs index 81267a6895..73f028eab2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/ChildrenScriptTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/ChildrenScriptTreeController.cs @@ -18,6 +18,10 @@ public class ChildrenScriptTreeController : ScriptTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(string parentPath, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + string parentPath, + int skip = 0, + int take = 100) => await GetChildren(parentPath, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/RootScriptTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/RootScriptTreeController.cs index 41126b477b..3eff3b5f50 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/RootScriptTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/Tree/RootScriptTreeController.cs @@ -18,6 +18,9 @@ public class RootScriptTreeController : ScriptTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Script/UpdateScriptController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Script/UpdateScriptController.cs index 3ad1a549a3..87ff3502ba 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Script/UpdateScriptController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Script/UpdateScriptController.cs @@ -34,7 +34,10 @@ public class UpdateScriptController : ScriptControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(string path, UpdateScriptRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + string path, + UpdateScriptRequestModel requestModel) { path = DecodePath(path).VirtualPathToSystemPath(); ScriptUpdateModel updateModel = _umbracoMapper.Map(requestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs index 34866adf49..76cd2f639b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs @@ -22,7 +22,10 @@ public class AllSearcherController : SearcherControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { var searchers = new List( _examineManager.RegisteredSearchers.Select(searcher => new SearcherResponse { Name = searcher.Name }) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/QuerySearcherController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/QuerySearcherController.cs index e0872d54d6..7f5c545095 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/QuerySearcherController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/QuerySearcherController.cs @@ -22,7 +22,12 @@ public class QuerySearcherController : SearcherControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task>> Query(string searcherName, string? term, int skip = 0, int take = 100) + public async Task>> Query( + CancellationToken cancellationToken, + string searcherName, + string? term, + int skip = 0, + int take = 100) { term = term?.Trim(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeController.cs index 0bc4009364..f65e7f597e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeController.cs @@ -61,7 +61,7 @@ public class BackOfficeController : SecurityControllerBase [HttpPost("login")] [MapToApiVersion("1.0")] [Authorize(Policy = AuthorizationPolicies.DenyLocalLoginIfConfigured)] - public async Task Login(LoginRequestModel model) + public async Task Login(CancellationToken cancellationToken, LoginRequestModel model) { var validated = await _backOfficeUserManager.ValidateCredentialsAsync(model.Username, model.Password); if (validated is false) @@ -103,7 +103,7 @@ public class BackOfficeController : SecurityControllerBase [AllowAnonymous] [HttpPost("verify-2fa")] [MapToApiVersion("1.0")] - public async Task Verify2FACode(Verify2FACodeModel model) + public async Task Verify2FACode(CancellationToken cancellationToken, Verify2FACodeModel model) { if (ModelState.IsValid == false) { @@ -147,7 +147,7 @@ public class BackOfficeController : SecurityControllerBase [AllowAnonymous] [HttpGet("authorize")] [MapToApiVersion("1.0")] - public async Task Authorize() + public async Task Authorize(CancellationToken cancellationToken) { HttpContext context = _httpContextAccessor.GetRequiredHttpContext(); OpenIddictRequest? request = context.GetOpenIddictServerRequest(); @@ -170,7 +170,7 @@ public class BackOfficeController : SecurityControllerBase [AllowAnonymous] [HttpGet("signout")] [MapToApiVersion("1.0")] - public async Task Signout() + public async Task Signout(CancellationToken cancellationToken) { var userName = await GetUserNameFromAuthCookie(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeDefaultController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeDefaultController.cs index e9ef58d8b0..62b69f0a23 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeDefaultController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/BackOfficeDefaultController.cs @@ -10,7 +10,7 @@ public class BackOfficeDefaultController : Controller { [HttpGet] [AllowAnonymous] - public async Task Index() + public async Task Index(CancellationToken cancellationToken) { // force authentication to occur since this is not an authorized endpoint AuthenticateResult result = await this.AuthenticateBackOfficeAsync(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/ConfigurationSecurityController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/ConfigurationSecurityController.cs index cd9a1faf05..5a40224453 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/ConfigurationSecurityController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/ConfigurationSecurityController.cs @@ -18,7 +18,7 @@ public class ConfigurationSecurityController : SecurityControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(SecurityConfigurationResponseModel), StatusCodes.Status200OK)] - public async Task Configuration() + public async Task Configuration(CancellationToken cancellationToken) { var viewModel = new SecurityConfigurationResponseModel { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordController.cs index a068f5d33d..40a6c6a673 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordController.cs @@ -26,7 +26,7 @@ public class ResetPasswordController : SecurityControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [UserPasswordEnsureMinimumResponseTime] - public async Task RequestPasswordReset(ResetPasswordRequestModel model) + public async Task RequestPasswordReset(CancellationToken cancellationToken, ResetPasswordRequestModel model) { Attempt result = await _userService.SendResetPasswordEmailAsync(model.Email); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordTokenController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordTokenController.cs index 54d5e2dae6..9e378b7a1e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordTokenController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/ResetPasswordTokenController.cs @@ -27,7 +27,7 @@ public class ResetPasswordTokenController : SecurityControllerBase [ProducesResponseType(typeof(ProblemDetailsBuilder), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetailsBuilder), StatusCodes.Status404NotFound)] [UserPasswordEnsureMinimumResponseTime] - public async Task ResetPasswordToken(ResetPasswordTokenRequestModel model) + public async Task ResetPasswordToken(CancellationToken cancellationToken, ResetPasswordTokenRequestModel model) { Attempt result = await _userService.ResetPasswordAsync(model.User.Id, model.ResetCode, model.Password); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Security/VerifyResetPasswordTokenController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Security/VerifyResetPasswordTokenController.cs index 5418b06b2e..5609777224 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Security/VerifyResetPasswordTokenController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Security/VerifyResetPasswordTokenController.cs @@ -31,7 +31,9 @@ public class VerifyResetPasswordTokenController : SecurityControllerBase [ProducesResponseType(typeof(ProblemDetailsBuilder), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetailsBuilder), StatusCodes.Status404NotFound)] [UserPasswordEnsureMinimumResponseTime] - public async Task VerifyResetPasswordToken(VerifyResetPasswordTokenRequestModel model) + public async Task VerifyResetPasswordToken( + CancellationToken cancellationToken, + VerifyResetPasswordTokenRequestModel model) { Attempt result = await _userService.VerifyPasswordResetAsync(model.User.Id, model.ResetCode); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Server/ConfigurationServerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Server/ConfigurationServerController.cs index 3ebbb47c9d..1107f499af 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Server/ConfigurationServerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Server/ConfigurationServerController.cs @@ -17,7 +17,7 @@ public class ConfigurationServerController : ServerControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ServerConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { var responseModel = new ServerConfigurationResponseModel { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Server/InformationServerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Server/InformationServerController.cs index 3b333ce503..54ef1224aa 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Server/InformationServerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Server/InformationServerController.cs @@ -22,7 +22,7 @@ public class InformationServerController : ServerControllerBase [HttpGet("information")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ServerInformationResponseModel), StatusCodes.Status200OK)] - public Task Information() + public Task Information(CancellationToken cancellationToken) { ServerInformationResponseModel responseModel = _umbracoMapper.Map(_serverInformationService.GetServerInformation())!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Server/StatusServerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Server/StatusServerController.cs index 54feb9b3ed..0e25c9d3c6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Server/StatusServerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Server/StatusServerController.cs @@ -19,6 +19,6 @@ public class StatusServerController : ServerControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ServerStatusResponseModel), StatusCodes.Status200OK)] - public async Task> Get() => + public async Task> Get(CancellationToken cancellationToken) => await Task.FromResult(new ServerStatusResponseModel { ServerStatus = _runtimeState.Level }); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Server/TroubleshootingServerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Server/TroubleshootingServerController.cs index dbcb0f07f3..470e0b5b8c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Server/TroubleshootingServerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Server/TroubleshootingServerController.cs @@ -22,7 +22,7 @@ public class TroubleshootingServerController : ServerControllerBase [HttpGet("troubleshooting")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ServerTroubleshootingResponseModel), StatusCodes.Status200OK)] - public Task GetTroubleshooting() + public Task GetTroubleshooting(CancellationToken cancellationToken) { ServerTroubleshootingResponseModel responseModel = _mapper.Map(_systemTroubleshootingInformationService.GetTroubleshootingInformation())!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Item/ItemStaticFileItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Item/ItemStaticFileItemController.cs index 0b903e005b..7a64dad4de 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Item/ItemStaticFileItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Item/ItemStaticFileItemController.cs @@ -18,7 +18,9 @@ public class ItemStaticFileItemController : StaticFileItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "path")] HashSet paths) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "path")] HashSet paths) { paths = paths.Select(path => path.VirtualPathToSystemPath()).ToHashSet(); IEnumerable responseModels = _fileItemPresentationFactory.CreateStaticFileItemResponseModels(paths); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/AncestorsStaticFileTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/AncestorsStaticFileTreeController.cs index d52d10b14d..cba287af2d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/AncestorsStaticFileTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/AncestorsStaticFileTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsStaticFileTreeController : StaticFileTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(string descendantPath) + public async Task>> Ancestors( + CancellationToken cancellationToken, + string descendantPath) => await GetAncestors(descendantPath); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/ChildrenStaticFileTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/ChildrenStaticFileTreeController.cs index baa49956e0..a68780a8e1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/ChildrenStaticFileTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/ChildrenStaticFileTreeController.cs @@ -18,6 +18,10 @@ public class ChildrenStaticFileTreeController : StaticFileTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(string parentPath, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + string parentPath, + int skip = 0, + int take = 100) => await GetChildren(parentPath, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/RootStaticFileTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/RootStaticFileTreeController.cs index adb35a3015..b709aae4ef 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/RootStaticFileTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/StaticFile/Tree/RootStaticFileTreeController.cs @@ -18,6 +18,9 @@ public class RootStaticFileTreeController : StaticFileTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/ByPathStylesheetController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/ByPathStylesheetController.cs index 0316cb4518..a7e3a6139f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/ByPathStylesheetController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/ByPathStylesheetController.cs @@ -27,7 +27,7 @@ public class ByPathStylesheetController : StylesheetControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(StylesheetResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); IStylesheet? stylesheet = await _stylesheetService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/CreateStylesheetController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/CreateStylesheetController.cs index e0feb72911..5471af2f1d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/CreateStylesheetController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/CreateStylesheetController.cs @@ -34,7 +34,9 @@ public class CreateStylesheetController : StylesheetControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateStylesheetRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateStylesheetRequestModel requestModel) { StylesheetCreateModel createModel = _umbracoMapper.Map(requestModel)!; Attempt createAttempt = await _stylesheetService.CreateAsync(createModel, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/DeleteStylesheetController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/DeleteStylesheetController.cs index 4d90641d75..51c6ebb3cc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/DeleteStylesheetController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/DeleteStylesheetController.cs @@ -27,7 +27,7 @@ public class DeleteStylesheetController : StylesheetControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); StylesheetOperationStatus operationStatus = await _stylesheetService.DeleteAsync(path, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/ByPathStylesheetFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/ByPathStylesheetFolderController.cs index 3677f4ea64..d5d0cca84f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/ByPathStylesheetFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/ByPathStylesheetFolderController.cs @@ -28,7 +28,7 @@ public class ByPathStylesheetFolderController : StylesheetFolderControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(StylesheetFolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByPath(string path) + public async Task ByPath(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); StylesheetFolderModel? folder = await _stylesheetFolderService.GetAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/CreateStylesheetFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/CreateStylesheetFolderController.cs index e33b330524..f5ed46e0cf 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/CreateStylesheetFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/CreateStylesheetFolderController.cs @@ -29,7 +29,9 @@ public class CreateStylesheetFolderController : StylesheetFolderControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateStylesheetFolderRequestModel requestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateStylesheetFolderRequestModel requestModel) { StylesheetFolderCreateModel createModel = _mapper.Map(requestModel)!; Attempt result = await _stylesheetFolderService.CreateAsync(createModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/DeleteStylesheetFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/DeleteStylesheetFolderController.cs index 945e46fb17..38760b34e7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/DeleteStylesheetFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Folder/DeleteStylesheetFolderController.cs @@ -20,7 +20,7 @@ public class DeleteStylesheetFolderController : StylesheetFolderControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(string path) + public async Task Delete(CancellationToken cancellationToken, string path) { path = DecodePath(path).VirtualPathToSystemPath(); StylesheetFolderOperationStatus result = await _stylesheetFolderService.DeleteAsync(path); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Item/ItemStylesheetItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Item/ItemStylesheetItemController.cs index 28e08716e1..cdc65891d1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Item/ItemStylesheetItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Item/ItemStylesheetItemController.cs @@ -18,7 +18,9 @@ public class ItemStylesheetItemController : StylesheetItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "path")] HashSet paths) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "path")] HashSet paths) { paths = paths.Select(path => path.VirtualPathToSystemPath()).ToHashSet(); IEnumerable responseModels = _fileItemPresentationFactory.CreateStylesheetItemResponseModels(paths); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/RenameStylesheetController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/RenameStylesheetController.cs index 127e9084fd..6480617918 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/RenameStylesheetController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/RenameStylesheetController.cs @@ -31,7 +31,10 @@ public class RenameStylesheetController : StylesheetControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Rename(string path, RenameStylesheetRequestModel requestModel) + public async Task Rename( + CancellationToken cancellationToken, + string path, + RenameStylesheetRequestModel requestModel) { StylesheetRenameModel renameModel = _umbracoMapper.Map(requestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/AncestorsStylesheetTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/AncestorsStylesheetTreeController.cs index 86c924dd4f..3863389125 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/AncestorsStylesheetTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/AncestorsStylesheetTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsStylesheetTreeController : StylesheetTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(string descendantPath) + public async Task>> Ancestors( + CancellationToken cancellationToken, + string descendantPath) => await GetAncestors(descendantPath); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/ChildrenStylesheetTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/ChildrenStylesheetTreeController.cs index cb452e64fe..3435f67225 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/ChildrenStylesheetTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/ChildrenStylesheetTreeController.cs @@ -18,6 +18,10 @@ public class ChildrenStylesheetTreeController : StylesheetTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(string parentPath, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + string parentPath, + int skip = 0, + int take = 100) => await GetChildren(parentPath, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/RootStylesheetTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/RootStylesheetTreeController.cs index f5474651d4..c01f15ea59 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/RootStylesheetTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/Tree/RootStylesheetTreeController.cs @@ -18,6 +18,9 @@ public class RootStylesheetTreeController : StylesheetTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/UpdateStylesheetController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/UpdateStylesheetController.cs index 7a9c743e77..7c54170b89 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/UpdateStylesheetController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Stylesheet/UpdateStylesheetController.cs @@ -34,7 +34,10 @@ public class UpdateStylesheetController : StylesheetControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(string path, UpdateStylesheetRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + string path, + UpdateStylesheetRequestModel requestModel) { path = DecodePath(path).VirtualPathToSystemPath(); StylesheetUpdateModel updateModel = _umbracoMapper.Map(requestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Tag/ByQueryTagController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Tag/ByQueryTagController.cs index 97eea89ec6..d528eabbc4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Tag/ByQueryTagController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Tag/ByQueryTagController.cs @@ -24,7 +24,13 @@ public class ByQueryTagController : TagControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> ByQuery(string? query, string? tagGroup, string? culture, int skip = 0, int take = 100) + public async Task>> ByQuery( + CancellationToken cancellationToken, + string? query, + string? tagGroup, + string? culture, + int skip = 0, + int take = 100) { IEnumerable result = await _tagService.GetByQueryAsync(query ?? string.Empty, tagGroup, culture); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/AllTelemetryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/AllTelemetryController.cs index 4d8b78eb44..625b8b146b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/AllTelemetryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/AllTelemetryController.cs @@ -13,7 +13,10 @@ public class AllTelemetryController : TelemetryControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task> GetAll(int skip = 0, int take = 100) + public async Task> GetAll( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { TelemetryLevel[] levels = Enum.GetValues(); return await Task.FromResult(new PagedViewModel diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/GetTelemetryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/GetTelemetryController.cs index 16014b66ec..d3bfe107a3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/GetTelemetryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/GetTelemetryController.cs @@ -16,5 +16,6 @@ public class GetTelemetryController : TelemetryControllerBase [HttpGet("level")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TelemetryResponseModel), StatusCodes.Status200OK)] - public async Task Get() => await Task.FromResult(new TelemetryResponseModel { TelemetryLevel = _metricsConsentService.GetConsentLevel() }); + public async Task Get(CancellationToken cancellationToken) + => await Task.FromResult(new TelemetryResponseModel { TelemetryLevel = _metricsConsentService.GetConsentLevel() }); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/SetTelemetryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/SetTelemetryController.cs index d61133f60e..35dc0bba08 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/SetTelemetryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Telemetry/SetTelemetryController.cs @@ -17,7 +17,9 @@ public class SetTelemetryController : TelemetryControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task SetConsentLevel(TelemetryRequestModel telemetryRepresentationBase) + public async Task SetConsentLevel( + CancellationToken cancellationToken, + TelemetryRequestModel telemetryRepresentationBase) { if (!Enum.IsDefined(telemetryRepresentationBase.TelemetryLevel)) { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/ByKeyTemplateController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/ByKeyTemplateController.cs index ab55242fd1..0e5fe2e771 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/ByKeyTemplateController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/ByKeyTemplateController.cs @@ -26,7 +26,7 @@ public class ByKeyTemplateController : TemplateControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TemplateResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { ITemplate? template = await _templateService.GetAsync(id); return template == null diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/ConfigurationTemplateController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/ConfigurationTemplateController.cs index cb74073942..8108b4a72f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/ConfigurationTemplateController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/ConfigurationTemplateController.cs @@ -16,7 +16,7 @@ public class ConfigurationTemplateController : TemplateControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TemplateConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { var responseModel = new TemplateConfigurationResponseModel { diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/CreateTemplateController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/CreateTemplateController.cs index 4c02ef9f2d..38ff057191 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/CreateTemplateController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/CreateTemplateController.cs @@ -29,7 +29,7 @@ public class CreateTemplateController : TemplateControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateTemplateRequestModel requestModel) + public async Task Create(CancellationToken cancellationToken, CreateTemplateRequestModel requestModel) { Attempt result = await _templateService.CreateAsync( requestModel.Name, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/DeleteTemplateController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/DeleteTemplateController.cs index 1a94bc812e..7b9444b352 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/DeleteTemplateController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/DeleteTemplateController.cs @@ -26,7 +26,7 @@ public class DeleteTemplateController : TemplateControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _templateService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); return result.Success diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/ItemTemplateItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/ItemTemplateItemController.cs index c2caeca29e..759c0ea509 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/ItemTemplateItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/ItemTemplateItemController.cs @@ -23,7 +23,9 @@ public class ItemTemplateItemController : TemplateItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { // This is far from ideal, that we pick out the entire model, however, we must do this to get the alias. // This is (for one) needed for when specifying master template, since alias + .cshtml diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/SearchTemplateItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/SearchTemplateItemController.cs index c577cfc4da..bf409cf76f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/SearchTemplateItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Item/SearchTemplateItemController.cs @@ -26,7 +26,7 @@ public class SearchTemplateItemController : TemplateItemControllerBase [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] - public async Task Search(string query, int skip = 0, int take = 100) + public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.Template, query, skip, take); if (searchResult.Items.Any() is false) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/ExecuteTemplateQueryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/ExecuteTemplateQueryController.cs index f4dc6866ee..d74d299777 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/ExecuteTemplateQueryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/ExecuteTemplateQueryController.cs @@ -38,7 +38,9 @@ public class ExecuteTemplateQueryController : TemplateQueryControllerBase [HttpPost("execute")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TemplateQueryResultResponseModel), StatusCodes.Status200OK)] - public async Task> Execute(TemplateQueryExecuteModel query) + public async Task> Execute( + CancellationToken cancellationToken, + TemplateQueryExecuteModel query) { var queryExpression = new StringBuilder(); IEnumerable contents = BuildQuery(query, queryExpression); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/SettingsTemplateQueryController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/SettingsTemplateQueryController.cs index 1b47317169..d5d5026c4f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/SettingsTemplateQueryController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Query/SettingsTemplateQueryController.cs @@ -17,7 +17,7 @@ public class SettingsTemplateQueryController : TemplateQueryControllerBase [HttpGet("settings")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TemplateQuerySettingsResponseModel), StatusCodes.Status200OK)] - public async Task> Settings() + public async Task> Settings(CancellationToken cancellationToken) { var contentTypeAliases = _contentTypeService .GetAll() diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/AncestorsTemplateTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/AncestorsTemplateTreeController.cs index 4cb3650b1e..3d5f0d3ff5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/AncestorsTemplateTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/AncestorsTemplateTreeController.cs @@ -17,6 +17,8 @@ public class AncestorsTemplateTreeController : TemplateTreeControllerBase [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task>> Ancestors(Guid descendantId) + public async Task>> Ancestors( + CancellationToken cancellationToken, + Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/ChildrenTemplateTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/ChildrenTemplateTreeController.cs index 43fba919bb..b5d487b0ed 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/ChildrenTemplateTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/ChildrenTemplateTreeController.cs @@ -18,6 +18,10 @@ public class ChildrenTemplateTreeController : TemplateTreeControllerBase [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Children(Guid parentId, int skip = 0, int take = 100) + public async Task>> Children( + CancellationToken cancellationToken, + Guid parentId, + int skip = 0, + int take = 100) => await GetChildren(parentId, skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/RootTemplateTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/RootTemplateTreeController.cs index 5e109063db..4de5731c40 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/RootTemplateTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/Tree/RootTemplateTreeController.cs @@ -18,6 +18,9 @@ public class RootTemplateTreeController : TemplateTreeControllerBase [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> Root(int skip = 0, int take = 100) + public async Task>> Root( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Template/UpdateTemplateController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Template/UpdateTemplateController.cs index e232377109..23717b397f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Template/UpdateTemplateController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Template/UpdateTemplateController.cs @@ -33,7 +33,10 @@ public class UpdateTemplateController : TemplateControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateTemplateRequestModel requestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateTemplateRequestModel requestModel) { ITemplate? template = await _templateService.GetAsync(id); if (template == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ByKeyTemporaryFileController.cs b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ByKeyTemporaryFileController.cs index e612d8f1b9..b3783eef84 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ByKeyTemporaryFileController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ByKeyTemporaryFileController.cs @@ -27,7 +27,7 @@ public class ByKeyTemporaryFileController : TemporaryFileControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(TemporaryFileResponseModel), StatusCodes.Status200OK)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { TemporaryFileModel? model = await _temporaryFileService.GetAsync(id); if (model == null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ConfigurationTemporaryFileController.cs b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ConfigurationTemporaryFileController.cs index bc86179559..d2a620cd16 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ConfigurationTemporaryFileController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/ConfigurationTemporaryFileController.cs @@ -18,7 +18,7 @@ public class ConfigurationTemporaryFileController : TemporaryFileControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(TemporaryFileConfigurationResponseModel), StatusCodes.Status200OK)] - public Task Configuration() + public Task Configuration(CancellationToken cancellationToken) { TemporaryFileConfigurationResponseModel responseModel = _temporaryFileConfigurationPresentationFactory.Create(); return Task.FromResult(Ok(responseModel)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/CreateTemporaryFileController.cs b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/CreateTemporaryFileController.cs index 59690d46ac..2eae45b940 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/CreateTemporaryFileController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/CreateTemporaryFileController.cs @@ -26,7 +26,9 @@ public class CreateTemporaryFileController : TemporaryFileControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Create([FromForm] CreateTemporaryFileRequestModel model) + public async Task Create( + CancellationToken cancellationToken, + [FromForm] CreateTemporaryFileRequestModel model) { CreateTemporaryFileModel createModel = _umbracoMapper.Map(model)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/DeleteTemporaryFileController.cs b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/DeleteTemporaryFileController.cs index 6f7e8004fb..e984e3248b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/DeleteTemporaryFileController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/TemporaryFile/DeleteTemporaryFileController.cs @@ -20,7 +20,7 @@ public class DeleteTemporaryFileController : TemporaryFileControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _temporaryFileService.DeleteAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Tour/GetTourController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Tour/GetTourController.cs index 837befafb1..9d223a3f72 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Tour/GetTourController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Tour/GetTourController.cs @@ -31,7 +31,7 @@ public class GetTourController : TourControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(UserTourStatusesResponseModel), StatusCodes.Status200OK)] - public async Task GetTours() + public async Task GetTours(CancellationToken cancellationToken) { Guid currentUserKey = CurrentUserKey(_backOfficeSecurityAccessor); Attempt, TourOperationStatus> toursAttempt = await _tourService.GetAllAsync(currentUserKey); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Tour/SetTourController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Tour/SetTourController.cs index f85d7c6b7c..91ae09c011 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Tour/SetTourController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Tour/SetTourController.cs @@ -30,7 +30,7 @@ public class SetTourController : TourControllerBase [HttpPost] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task SetTour(SetTourStatusRequestModel model) + public async Task SetTour(CancellationToken cancellationToken, SetTourStatusRequestModel model) { Guid currentUserKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/AuthorizeUpgradeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/AuthorizeUpgradeController.cs index a3d3b3d92b..b19fc08463 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/AuthorizeUpgradeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/AuthorizeUpgradeController.cs @@ -20,7 +20,7 @@ public class AuthorizeUpgradeController : UpgradeControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status428PreconditionRequired)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] - public async Task Authorize() + public async Task Authorize(CancellationToken cancellationToken) { Attempt result = await _upgradeService.UpgradeAsync(); return UpgradeOperationResult(result.Status, result.Result); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/SettingsUpgradeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/SettingsUpgradeController.cs index 2bc2b52435..66e212650f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/SettingsUpgradeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Upgrade/SettingsUpgradeController.cs @@ -26,7 +26,7 @@ public class SettingsUpgradeController : UpgradeControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(UpgradeSettingsResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status428PreconditionRequired)] - public async Task> Settings() + public async Task> Settings(CancellationToken cancellationToken) { // TODO: Async - We need to figure out what we want to do with async endpoints that doesn't do anything async // We want these to be async for future use (Ideally we'll have more async things), diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/BulkDeleteUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/BulkDeleteUserController.cs index e330dc6a58..21c05fd925 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/BulkDeleteUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/BulkDeleteUserController.cs @@ -34,7 +34,7 @@ public class BulkDeleteUserController : UserControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task DeleteUsers(DeleteUsersRequestModel model) + public async Task DeleteUsers(CancellationToken cancellationToken, DeleteUsersRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ByKeyUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ByKeyUserController.cs index 05c5a8fa96..895553bd9f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ByKeyUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ByKeyUserController.cs @@ -35,7 +35,7 @@ public class ByKeyUserController : UserControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(UserResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ChangePasswordUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ChangePasswordUserController.cs index 614bde7f19..d87153f8c5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ChangePasswordUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ChangePasswordUserController.cs @@ -37,7 +37,10 @@ public class ChangePasswordUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task ChangePassword(Guid id, ChangePasswordUserRequestModel model) + public async Task ChangePassword( + CancellationToken cancellationToken, + Guid id, + ChangePasswordUserRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ClearAvatarUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ClearAvatarUserController.cs index 5cc15fe35e..c02cfe4a9d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ClearAvatarUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ClearAvatarUserController.cs @@ -28,7 +28,7 @@ public class ClearAvatarUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task ClearAvatar(Guid id) + public async Task ClearAvatar(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ConfigurationUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ConfigurationUserController.cs index 9cc9298613..7c9723c744 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ConfigurationUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ConfigurationUserController.cs @@ -19,5 +19,6 @@ public class ConfigurationUserController : UserControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(UserConfigurationResponseModel), StatusCodes.Status200OK)] - public async Task Configuration() => Ok(await _userPresentationFactory.CreateUserConfigurationModelAsync()); + public async Task Configuration(CancellationToken cancellationToken) + => Ok(await _userPresentationFactory.CreateUserConfigurationModelAsync()); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/CreateInitialPasswordUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/CreateInitialPasswordUserController.cs index 827f4b6726..0afbedb4e0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/CreateInitialPasswordUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/CreateInitialPasswordUserController.cs @@ -25,7 +25,9 @@ public class CreateInitialPasswordUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task CreateInitialPassword(CreateInitialPasswordUserRequestModel model) + public async Task CreateInitialPassword( + CancellationToken cancellationToken, + CreateInitialPasswordUserRequestModel model) { Attempt response = await _userService.CreateInitialPasswordAsync(model.User.Id, model.Token, model.Password); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/CreateUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/CreateUserController.cs index 285dc041bc..1b00669696 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/CreateUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/CreateUserController.cs @@ -38,7 +38,7 @@ public class CreateUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateUserRequestModel model) + public async Task Create(CancellationToken cancellationToken, CreateUserRequestModel model) { UserCreateModel createModel = await _presentationFactory.CreateCreationModelAsync(model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ChangePasswordCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ChangePasswordCurrentUserController.cs index f3ee849457..fcc7ac1e88 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ChangePasswordCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ChangePasswordCurrentUserController.cs @@ -29,7 +29,9 @@ public class ChangePasswordCurrentUserController : CurrentUserControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task ChangePassword(ChangePasswordCurrentUserRequestModel model) + public async Task ChangePassword( + CancellationToken cancellationToken, + ChangePasswordCurrentUserRequestModel model) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ConfigurationCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ConfigurationCurrentUserController.cs index 92d2dcd02d..5d368c42c6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ConfigurationCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ConfigurationCurrentUserController.cs @@ -19,7 +19,7 @@ public class ConfigurationCurrentUserController : CurrentUserControllerBase [MapToApiVersion("1.0")] [HttpGet("configuration")] [ProducesResponseType(typeof(CurrenUserConfigurationResponseModel), StatusCodes.Status200OK)] - public async Task Configuration() + public async Task Configuration(CancellationToken cancellationToken) { CurrenUserConfigurationResponseModel model = await _userPresentationFactory.CreateCurrentUserConfigurationModelAsync(); return Ok(model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/DisableTwoFactorProviderCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/DisableTwoFactorProviderCurrentUserController.cs index 60d9ebad9d..a57a095bf7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/DisableTwoFactorProviderCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/DisableTwoFactorProviderCurrentUserController.cs @@ -27,7 +27,10 @@ public class DisableTwoFactorProviderCurrentUserController : CurrentUserControll [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task DisableTwoFactorProvider(string providerName, string code) + public async Task DisableTwoFactorProvider( + CancellationToken cancellationToken, + string providerName, + string code) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/EnableTwoFactorProviderCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/EnableTwoFactorProviderCurrentUserController.cs index 034a803972..2efa0e7204 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/EnableTwoFactorProviderCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/EnableTwoFactorProviderCurrentUserController.cs @@ -28,7 +28,10 @@ public class EnableTwoFactorProviderCurrentUserController : CurrentUserControlle [ProducesResponseType(typeof(ISetupTwoFactorModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task EnableTwoFactorProvider(string providerName, EnableTwoFactorRequestModel model) + public async Task EnableTwoFactorProvider( + CancellationToken cancellationToken, + string providerName, + EnableTwoFactorRequestModel model) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetCurrentUserController.cs index c0a7d26470..8f20728f13 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetCurrentUserController.cs @@ -37,7 +37,7 @@ public class GetCurrentUserController : CurrentUserControllerBase [MapToApiVersion("1.0")] [HttpGet] [ProducesResponseType(typeof(CurrentUserResponseModel), StatusCodes.Status200OK)] - public async Task GetCurrentUser() + public async Task GetCurrentUser(CancellationToken cancellationToken) { var currentUserKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetDocumentPermissionsCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetDocumentPermissionsCurrentUserController.cs index bbc53306a5..b2cb628e7d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetDocumentPermissionsCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetDocumentPermissionsCurrentUserController.cs @@ -32,7 +32,9 @@ public class GetDocumentPermissionsCurrentUserController : CurrentUserController [HttpGet("permissions/document")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetPermissions([FromQuery(Name = "id")] HashSet ids) + public async Task GetPermissions( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { Attempt, UserOperationStatus> permissionsAttempt = await _userService.GetDocumentPermissionsAsync(CurrentUserKey(_backOfficeSecurityAccessor), ids); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetLinkedLoginsCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetLinkedLoginsCurrentUserController.cs index b2dd42a08a..e13e3117bc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetLinkedLoginsCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetLinkedLoginsCurrentUserController.cs @@ -30,7 +30,7 @@ public class GetLinkedLoginsCurrentUserController : CurrentUserControllerBase [MapToApiVersion("1.0")] [HttpGet("logins")] [ProducesResponseType(typeof(LinkedLoginsRequestModel), StatusCodes.Status200OK)] - public async Task GetLinkedLogins() + public async Task GetLinkedLogins(CancellationToken cancellationToken) { Guid currentUserKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetMediaPermissionsCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetMediaPermissionsCurrentUserController.cs index d3ee9bf5dd..6b58b7a356 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetMediaPermissionsCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetMediaPermissionsCurrentUserController.cs @@ -32,7 +32,9 @@ public class GetMediaPermissionsCurrentUserController : CurrentUserControllerBas [HttpGet("permissions/media")] [ProducesResponseType(typeof(UserPermissionsResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetPermissions([FromQuery(Name = "id")] HashSet ids) + public async Task GetPermissions( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { Attempt, UserOperationStatus> permissionsAttempt = await _userService.GetMediaPermissionsAsync(CurrentUserKey(_backOfficeSecurityAccessor), ids); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetPermissionsCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetPermissionsCurrentUserController.cs index b3412b2139..be5d6461f7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetPermissionsCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetPermissionsCurrentUserController.cs @@ -32,7 +32,9 @@ public class GetPermissionsCurrentUserController : CurrentUserControllerBase [HttpGet("permissions")] [ProducesResponseType(typeof(UserPermissionsResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetPermissions([FromQuery(Name = "id")] HashSet ids) + public async Task GetPermissions( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { Attempt, UserOperationStatus> permissionsAttempt = await _userService.GetPermissionsAsync(CurrentUserKey(_backOfficeSecurityAccessor), ids.ToArray()); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetTwoFactorSetupForProviderCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetTwoFactorSetupForProviderCurrentUserController.cs index 51932ef1b0..60d7647495 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetTwoFactorSetupForProviderCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/GetTwoFactorSetupForProviderCurrentUserController.cs @@ -27,7 +27,7 @@ public class GetTwoFactorSetupForProviderCurrentUserController : CurrentUserCont [ProducesResponseType(typeof(ISetupTwoFactorModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task GetTwoFactorProviderByName(string providerName) + public async Task GetTwoFactorProviderByName(CancellationToken cancellationToken, string providerName) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ListTwoFactorProvidersCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ListTwoFactorProvidersCurrentUserController.cs index 094bfd1ecb..fb13eee598 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ListTwoFactorProvidersCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/ListTwoFactorProvidersCurrentUserController.cs @@ -26,7 +26,7 @@ public class ListTwoFactorProvidersCurrentUserController : CurrentUserController [MapToApiVersion("1.0")] [HttpGet("2fa")] [ProducesResponseType(typeof(IEnumerable),StatusCodes.Status200OK)] - public async Task ListTwoFactorProvidersForCurrentUser() + public async Task ListTwoFactorProvidersForCurrentUser(CancellationToken cancellationToken) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/SetAvatarCurrentUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/SetAvatarCurrentUserController.cs index be714f9b3e..a120521f52 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Current/SetAvatarCurrentUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Current/SetAvatarCurrentUserController.cs @@ -34,7 +34,7 @@ public class SetAvatarCurrentUserController : CurrentUserControllerBase [HttpPost("avatar")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task SetAvatar(SetAvatarRequestModel model) + public async Task SetAvatar(CancellationToken cancellationToken, SetAvatarRequestModel model) { Guid userKey = CurrentUserKey(_backOfficeSecurityAccessor); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/DeleteUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/DeleteUserController.cs index 8043dbae5d..f4fe20e18b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/DeleteUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/DeleteUserController.cs @@ -34,7 +34,7 @@ public class DeleteUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task DeleteUser(Guid id) + public async Task DeleteUser(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/DisableTwoFactorProviderUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/DisableTwoFactorProviderUserController.cs index 99ce5d62d8..02c0297836 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/DisableTwoFactorProviderUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/DisableTwoFactorProviderUserController.cs @@ -31,7 +31,10 @@ public class DisableTwoFactorProviderUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task DisableTwoFactorProvider(Guid id, string providerName) + public async Task DisableTwoFactorProvider( + CancellationToken cancellationToken, + Guid id, + string providerName) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/DisableUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/DisableUserController.cs index 5b3eb98623..0e6fb36fcf 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/DisableUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/DisableUserController.cs @@ -35,7 +35,7 @@ public class DisableUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task DisableUsers(DisableUserRequestModel model) + public async Task DisableUsers(CancellationToken cancellationToken, DisableUserRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/EnableUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/EnableUserController.cs index 8817626b9f..c4adfc9f6d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/EnableUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/EnableUserController.cs @@ -35,7 +35,7 @@ public class EnableUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task EnableUsers(EnableUserRequestModel model) + public async Task EnableUsers(CancellationToken cancellationToken, EnableUserRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Filter/FilterUserFilterController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Filter/FilterUserFilterController.cs index 816e90ed08..491464f087 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Filter/FilterUserFilterController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Filter/FilterUserFilterController.cs @@ -47,6 +47,7 @@ public class FilterUserFilterController : UserFilterControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] public async Task Filter( + CancellationToken cancellationToken, int skip = 0, int take = 100, UserOrder orderBy = UserOrder.UserName, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/GetAllUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/GetAllUserController.cs index 7c7be52a14..3a72904497 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/GetAllUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/GetAllUserController.cs @@ -35,7 +35,7 @@ public class GetAllUserController : UserControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task GetAll(int skip = 0, int take = 100) + public async Task GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { Attempt?, UserOperationStatus> attempt = await _userService.GetAllAsync(CurrentUserKey(_backOfficeSecurityAccessor), skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/InviteUsersController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/InviteUsersController.cs index 572efc2efb..ea653ab6b6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/InviteUsersController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/InviteUsersController.cs @@ -35,7 +35,7 @@ public class InviteUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Invite(InviteUserRequestModel model) + public async Task Invite(CancellationToken cancellationToken, InviteUserRequestModel model) { UserInviteModel userInvite = await _userPresentationFactory.CreateInviteModelAsync(model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/Item/ItemUserItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/Item/ItemUserItemController.cs index 3a790d3fed..24f9114cb4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/Item/ItemUserItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/Item/ItemUserItemController.cs @@ -23,7 +23,7 @@ public class ItemUserItemController : UserItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item(CancellationToken cancellationToken, [FromQuery(Name = "id")] HashSet ids) { IEnumerable users = await _userService.GetAsync(ids.ToArray()); List responseModels = _mapper.MapEnumerable(users); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ListTwoFactorProvidersUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ListTwoFactorProvidersUserController.cs index 6a5fe786f0..ced3ec1d13 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ListTwoFactorProvidersUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ListTwoFactorProvidersUserController.cs @@ -31,7 +31,7 @@ public class ListTwoFactorProvidersUserController : UserControllerBase [HttpGet("{id:guid}/2fa")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ListTwoFactorProviders(Guid id) + public async Task ListTwoFactorProviders(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ResendInviteUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ResendInviteUserController.cs index 8209b75227..9a9202f017 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ResendInviteUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ResendInviteUserController.cs @@ -31,7 +31,9 @@ public class ResendInviteUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ResendInvite(ResendInviteUserRequestModel model) + public async Task ResendInvite( + CancellationToken cancellationToken, + ResendInviteUserRequestModel model) { UserResendInviteModel resendInviteModel = await _userPresentationFactory.CreateResendInviteModelAsync(model); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/ResetPasswordUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/ResetPasswordUserController.cs index 2be4d9a6b5..07faf5f7f1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/ResetPasswordUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/ResetPasswordUserController.cs @@ -40,7 +40,7 @@ public class ResetPasswordUserController : UserControllerBase [ProducesResponseType(typeof(ResetPasswordUserResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task ResetPassword(Guid id) + public async Task ResetPassword(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/SetAvatarUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/SetAvatarUserController.cs index 4bd92b9d0c..b04a8c3c38 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/SetAvatarUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/SetAvatarUserController.cs @@ -29,7 +29,7 @@ public class SetAvatarUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task SetAvatar(Guid id, SetAvatarRequestModel model) + public async Task SetAvatar(CancellationToken cancellationToken, Guid id, SetAvatarRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/UnlockUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/UnlockUserController.cs index 8ebd3fe7bc..a9c59052f0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/UnlockUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/UnlockUserController.cs @@ -36,7 +36,7 @@ public class UnlockUserController : UserControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task UnlockUsers(UnlockUsersRequestModel model) + public async Task UnlockUsers(CancellationToken cancellationToken, UnlockUsersRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserController.cs index 28c77a7ab1..09d853f548 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserController.cs @@ -41,7 +41,7 @@ public class UpdateUserController : UserControllerBase [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateUserRequestModel model) + public async Task Update(CancellationToken cancellationToken, Guid id, UpdateUserRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserGroupsUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserGroupsUserController.cs index 41035f1d23..193efa9823 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserGroupsUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/UpdateUserGroupsUserController.cs @@ -34,7 +34,9 @@ public class UpdateUserGroupsUserController : UserGroupControllerBase [HttpPost("set-user-groups")] [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task UpdateUserGroups(UpdateUserGroupsOnUserRequestModel requestModel) + public async Task UpdateUserGroups( + CancellationToken cancellationToken, + UpdateUserGroupsOnUserRequestModel requestModel) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/User/VerifyInviteUserController.cs b/src/Umbraco.Cms.Api.Management/Controllers/User/VerifyInviteUserController.cs index a607f896ed..d66dc965c5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/User/VerifyInviteUserController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/User/VerifyInviteUserController.cs @@ -28,7 +28,7 @@ public class VerifyInviteUserController : UserControllerBase [ProducesResponseType(typeof(VerifyInviteUserResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - public async Task Invite(VerifyInviteUserRequestModel model) + public async Task Invite(CancellationToken cancellationToken, VerifyInviteUserRequestModel model) { Attempt result = await _userService.VerifyInviteAsync(model.User.Id, model.Token); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/AddUsersToUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/AddUsersToUserGroupController.cs index 1668849a5d..6a8efc5553 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/AddUsersToUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/AddUsersToUserGroupController.cs @@ -38,7 +38,7 @@ public class AddUsersToUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, Guid[] userIds) + public async Task Update(CancellationToken cancellationToken, Guid id, Guid[] userIds) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/BulkDeleteUserGroupsController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/BulkDeleteUserGroupsController.cs index d8ccd7cc70..1a06325ba4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/BulkDeleteUserGroupsController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/BulkDeleteUserGroupsController.cs @@ -29,7 +29,7 @@ public class BulkDeleteUserGroupsController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task BulkDelete(DeleteUserGroupsRequestModel model) + public async Task BulkDelete(CancellationToken cancellationToken, DeleteUserGroupsRequestModel model) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/ByKeyUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/ByKeyUserGroupController.cs index 1ef5ca4089..67ce7fd76e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/ByKeyUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/ByKeyUserGroupController.cs @@ -34,7 +34,7 @@ public class ByKeyUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(UserGroupResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/CreateUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/CreateUserGroupController.cs index 0ba99bc38f..9999d04f8d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/CreateUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/CreateUserGroupController.cs @@ -32,7 +32,7 @@ public class CreateUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status201Created)] - public async Task Create(CreateUserGroupRequestModel createUserGroupRequestModel) + public async Task Create(CancellationToken cancellationToken, CreateUserGroupRequestModel createUserGroupRequestModel) { // FIXME: Comment this in when auth is in place and we can get a currently logged in user. // IUser? currentUser = _backOfficeSecurityAccessor.BackOfficeSecurity?.CurrentUser; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/DeleteUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/DeleteUserGroupController.cs index 3691eeea41..d96cfbef36 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/DeleteUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/DeleteUserGroupController.cs @@ -28,7 +28,7 @@ public class DeleteUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/GetAllUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/GetAllUserGroupController.cs index 2b00653d4a..f8f66bd83c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/GetAllUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/GetAllUserGroupController.cs @@ -27,7 +27,10 @@ public class GetAllUserGroupController : UserGroupControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> GetAll(int skip = 0, int take = 100) + public async Task>> GetAll( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { // FIXME: In the old controller this endpoint had a switch "onlyCurrentUserGroup" // If this was enabled we'd only return the groups the current user was in diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/Item/ItemUserGroupItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/Item/ItemUserGroupItemController.cs index a514b202f2..6ef907e0b8 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/Item/ItemUserGroupItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/Item/ItemUserGroupItemController.cs @@ -23,7 +23,9 @@ public class ItemUserGroupItemController : UserGroupItemControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Item([FromQuery(Name = "id")] HashSet ids) + public async Task Item( + CancellationToken cancellationToken, + [FromQuery(Name = "id")] HashSet ids) { IEnumerable userGroups = await _userGroupService.GetAsync(ids); List responseModels = _mapper.MapEnumerable(userGroups); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/RemoveUsersFromUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/RemoveUsersFromUserGroupController.cs index 16fc75e150..4b7281b2b3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/RemoveUsersFromUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/RemoveUsersFromUserGroupController.cs @@ -33,7 +33,7 @@ public class RemoveUsersFromUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, Guid[] userIds) + public async Task Update(CancellationToken cancellationToken, Guid id, Guid[] userIds) { AuthorizationResult authorizationResult = await _authorizationService.AuthorizeResourceAsync( User, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/UpdateUserGroupController.cs b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/UpdateUserGroupController.cs index 5c080b43b6..42b4c6b8bc 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/UpdateUserGroupController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/UserGroup/UpdateUserGroupController.cs @@ -32,7 +32,10 @@ public class UpdateUserGroupController : UserGroupControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Update(Guid id, UpdateUserGroupRequestModel updateUserGroupRequestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateUserGroupRequestModel updateUserGroupRequestModel) { IUserGroup? existingUserGroup = await _userGroupService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/AllWebhookController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/AllWebhookController.cs index f6cf4254a3..4e80a14f68 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/AllWebhookController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/AllWebhookController.cs @@ -24,7 +24,10 @@ public class AllWebhookController : WebhookControllerBase [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task>> All(int skip = 0, int take = 100) + public async Task>> All( + CancellationToken cancellationToken, + int skip = 0, + int take = 100) { PagedModel result = await _webhookService.GetAllAsync(skip, take); IWebhook[] webhooks = result.Items.ToArray(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/ByKeyWebhookController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/ByKeyWebhookController.cs index a5b1edb9c3..53c47b1324 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/ByKeyWebhookController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/ByKeyWebhookController.cs @@ -3,7 +3,6 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.Factories; using Umbraco.Cms.Api.Management.ViewModels.Webhook; -using Umbraco.Cms.Core.Mapping; using Umbraco.Cms.Core.Models; using Umbraco.Cms.Core.Services; using Umbraco.Cms.Core.Services.OperationStatus; @@ -26,7 +25,7 @@ public class ByKeyWebhookController : WebhookControllerBase [MapToApiVersion("1.0")] [ProducesResponseType(typeof(WebhookResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task ByKey(Guid id) + public async Task ByKey(CancellationToken cancellationToken, Guid id) { IWebhook? webhook = await _webhookService.GetAsync(id); if (webhook is null) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/CreateWebhookController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/CreateWebhookController.cs index 4dd8330272..8a6ee206f0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/CreateWebhookController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/CreateWebhookController.cs @@ -31,7 +31,9 @@ public class CreateWebhookController : WebhookControllerBase [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - public async Task Create(CreateWebhookRequestModel createWebhookRequestModel) + public async Task Create( + CancellationToken cancellationToken, + CreateWebhookRequestModel createWebhookRequestModel) { IWebhook created = _umbracoMapper.Map(createWebhookRequestModel)!; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/DeleteWebhookController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/DeleteWebhookController.cs index d1475cde98..e99f0e7a54 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/DeleteWebhookController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/DeleteWebhookController.cs @@ -29,7 +29,7 @@ public class DeleteWebhookController : WebhookControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Delete(Guid id) + public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _webhookService.DeleteAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/Item/ItemsWebhookEntityController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/Item/ItemsWebhookEntityController.cs index 4f450465cc..95c8c33c44 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/Item/ItemsWebhookEntityController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/Item/ItemsWebhookEntityController.cs @@ -23,7 +23,9 @@ public class ItemsWebhookEntityController : WebhookEntityControllerBase [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - public async Task Items([FromQuery(Name = "ids")] HashSet ids) + public async Task Items( + CancellationToken cancellationToken, + [FromQuery(Name = "ids")] HashSet ids) { IEnumerable webhooks = await _webhookService.GetMultipleAsync(ids); List entityResponseModels = _mapper.MapEnumerable(webhooks); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/UpdateWebhookController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/UpdateWebhookController.cs index 3731dcadc0..60ef88a5e0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Webhook/UpdateWebhookController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Webhook/UpdateWebhookController.cs @@ -34,7 +34,10 @@ public class UpdateWebhookController : WebhookControllerBase [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task Update(Guid id, UpdateWebhookRequestModel updateWebhookRequestModel) + public async Task Update( + CancellationToken cancellationToken, + Guid id, + UpdateWebhookRequestModel updateWebhookRequestModel) { IWebhook? current = await _webhookService.GetAsync(id); if (current is null) diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/ManagementApiTest.cs b/tests/Umbraco.Tests.Integration/ManagementApi/ManagementApiTest.cs index b0d84f2c38..bc83d90a46 100644 --- a/tests/Umbraco.Tests.Integration/ManagementApi/ManagementApiTest.cs +++ b/tests/Umbraco.Tests.Integration/ManagementApi/ManagementApiTest.cs @@ -105,7 +105,7 @@ public abstract class ManagementApiTest : UmbracoTestServerTestBase // Login to ensure the cookie is set (used in next request) var loginResponse = await client.PostAsync( - GetManagementApiUrl(x => x.Login(null)), JsonContent.Create(loginModel)); + GetManagementApiUrl(x => x.Login(CancellationToken.None, null)), JsonContent.Create(loginModel)); Assert.AreEqual(HttpStatusCode.OK, loginResponse.StatusCode, await loginResponse.Content.ReadAsStringAsync()); @@ -113,9 +113,9 @@ public abstract class ManagementApiTest : UmbracoTestServerTestBase var codeChallange = Convert.ToBase64String(SHA256.Create().ComputeHash(Encoding.UTF8.GetBytes(codeVerifier))) .TrimEnd("="); - var authorizeResponse = await client.GetAsync( - GetManagementApiUrl(x => x.Authorize()) + - $"?client_id={backofficeOpenIddictApplicationDescriptor.ClientId}&response_type=code&redirect_uri={WebUtility.UrlEncode(backofficeOpenIddictApplicationDescriptor.RedirectUris.FirstOrDefault()?.AbsoluteUri)}&code_challenge_method=S256&code_challenge={codeChallange}"); + var authorizationUrl = GetManagementApiUrl(x => x.Authorize(CancellationToken.None)) + + $"?client_id={backofficeOpenIddictApplicationDescriptor.ClientId}&response_type=code&redirect_uri={WebUtility.UrlEncode(backofficeOpenIddictApplicationDescriptor.RedirectUris.FirstOrDefault()?.AbsoluteUri)}&code_challenge_method=S256&code_challenge={codeChallange}"; + var authorizeResponse = await client.GetAsync(authorizationUrl); Assert.AreEqual(HttpStatusCode.Found, authorizeResponse.StatusCode, await authorizeResponse.Content.ReadAsStringAsync()); diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Policies/ByKeyAuditLogControllerTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Policies/ByKeyAuditLogControllerTests.cs index c5145ca678..1973d400e7 100644 --- a/tests/Umbraco.Tests.Integration/ManagementApi/Policies/ByKeyAuditLogControllerTests.cs +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Policies/ByKeyAuditLogControllerTests.cs @@ -14,7 +14,7 @@ namespace Umbraco.Cms.Tests.Integration.ManagementApi.Policies; public class ByKeyAuditLogControllerTests : ManagementApiTest { protected override Expression> MethodSelector => - x => x.ByKey(Constants.Security.SuperUserKey, Direction.Ascending, null, 0, 100); + x => x.ByKey(CancellationToken.None, Constants.Security.SuperUserKey, Direction.Ascending, null, 0, 100); [Test] public virtual async Task As_Admin_I_Have_Access() diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EndPreviewTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EndPreviewTests.cs index 52c0536d86..9e037fb6fc 100644 --- a/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EndPreviewTests.cs +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EndPreviewTests.cs @@ -9,7 +9,7 @@ namespace Umbraco.Cms.Tests.Integration.ManagementApi.Preview; public class EndPreviewTests : ManagementApiTest { protected override Expression> MethodSelector => - x => x.End(); + x => x.End(CancellationToken.None); [Test] @@ -26,5 +26,4 @@ public class EndPreviewTests : ManagementApiTest Assert.IsTrue(doesHeaderExist); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, await response.Content.ReadAsStringAsync()); } - } diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EnterPreviewTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EnterPreviewTests.cs index 3b8913ec69..998fc316da 100644 --- a/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EnterPreviewTests.cs +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Preview/EnterPreviewTests.cs @@ -9,7 +9,7 @@ namespace Umbraco.Cms.Tests.Integration.ManagementApi.Preview; public class EnterPreviewTests : ManagementApiTest { protected override Expression> MethodSelector => - x => x.Enter(); + x => x.Enter(CancellationToken.None); [Test] diff --git a/tests/Umbraco.Tests.Integration/TestServerTest/UmbracoTestServerTestBase.cs b/tests/Umbraco.Tests.Integration/TestServerTest/UmbracoTestServerTestBase.cs index 3efbcc1be6..fef38f2ef9 100644 --- a/tests/Umbraco.Tests.Integration/TestServerTest/UmbracoTestServerTestBase.cs +++ b/tests/Umbraco.Tests.Integration/TestServerTest/UmbracoTestServerTestBase.cs @@ -111,6 +111,14 @@ namespace Umbraco.Cms.Tests.Integration.TestServerTest MethodInfo? method = ExpressionHelper.GetMethodInfo(methodSelector); IDictionary methodParams = ExpressionHelper.GetMethodParams(methodSelector) ?? new Dictionary(); + // Remove the CancellationToken from the method params, this is automatically added by the framework + // So we do not want to add this to the query string + var cancellationTokenKey = methodParams.FirstOrDefault(x => x.Value is CancellationToken).Key; + if (cancellationTokenKey is not null) + { + methodParams.Remove(cancellationTokenKey); + } + methodParams["version"] = method?.GetCustomAttribute()?.Versions?.First().MajorVersion.ToString(); if (method == null)