From 4b06865ed29ebba8f75acae92a3970e41ccedf70 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:41:30 +0200 Subject: [PATCH 01/15] Rename ModelsBuilderDashboard folder to ModelsBuilder --- .../BuildModelsBuilderController.cs | 0 .../GetModelsBuilderController.cs | 0 .../ModelsBuilderControllerBase.cs | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename src/Umbraco.Cms.ManagementApi/Controllers/{ModelsBuilderDashboard => ModelsBuilder}/BuildModelsBuilderController.cs (100%) rename src/Umbraco.Cms.ManagementApi/Controllers/{ModelsBuilderDashboard => ModelsBuilder}/GetModelsBuilderController.cs (100%) rename src/Umbraco.Cms.ManagementApi/Controllers/{ModelsBuilderDashboard => ModelsBuilder}/ModelsBuilderControllerBase.cs (100%) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/BuildModelsBuilderController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs similarity index 100% rename from src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/BuildModelsBuilderController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/GetModelsBuilderController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs similarity index 100% rename from src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/GetModelsBuilderController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/ModelsBuilderControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs similarity index 100% rename from src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/ModelsBuilderControllerBase.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs From e4cbf9173b4fd854aa48aa0ce181f567d5dce16e Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:43:06 +0200 Subject: [PATCH 02/15] Fix modelsbuilder paths and related naming --- .../Controllers/ModelsBuilder/BuildModelsBuilderController.cs | 2 +- .../Controllers/ModelsBuilder/GetModelsBuilderController.cs | 4 ++-- .../Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs | 4 ++-- .../StatusModelsBuilderController.cs | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) rename src/Umbraco.Cms.ManagementApi/Controllers/{ModelsBuilderDashboard => ModelsBuilder}/StatusModelsBuilderController.cs (94%) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs index c219a5128ef2..7fcf5b58887b 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/BuildModelsBuilderController.cs @@ -8,7 +8,7 @@ using Umbraco.Cms.Infrastructure.ModelsBuilder.Building; using Umbraco.Extensions; -namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilderDashboard; +namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilder; public class BuildModelsBuilderController : ModelsBuilderControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs index aa993cd1f44d..09e5fcc1ac40 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/GetModelsBuilderController.cs @@ -4,7 +4,7 @@ using Umbraco.Cms.ManagementApi.Factories; using Umbraco.Cms.ManagementApi.ViewModels.ModelsBuilderDashboard; -namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilderDashboard; +namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilder; public class GetModelsBuilderController : ModelsBuilderControllerBase { @@ -12,7 +12,7 @@ public class GetModelsBuilderController : ModelsBuilderControllerBase public GetModelsBuilderController(IModelsBuilderViewModelFactory modelsBuilderViewModelFactory) => _modelsBuilderViewModelFactory = modelsBuilderViewModelFactory; - [HttpGet] + [HttpGet("dashboard")] [ProducesResponseType(typeof(CreatedResult), StatusCodes.Status200OK)] [MapToApiVersion("1.0")] public async Task> GetDashboard() => await Task.FromResult(Ok(_modelsBuilderViewModelFactory.Create())); diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs index 4871d3b9d63b..6a09074c948b 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/ModelsBuilderControllerBase.cs @@ -2,11 +2,11 @@ using NSwag.Annotations; using Umbraco.New.Cms.Web.Common.Routing; -namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilderDashboard; +namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilder; [ApiController] [VersionedApiBackOfficeRoute("models-builder")] -[OpenApiTag("ModelsBuilder")] +[OpenApiTag("Models Builder")] [ApiVersion("1.0")] public class ModelsBuilderControllerBase : ManagementApiControllerBase diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/StatusModelsBuilderController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/StatusModelsBuilderController.cs similarity index 94% rename from src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/StatusModelsBuilderController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/StatusModelsBuilderController.cs index 9b2cb22e0a87..1f130ffb5c8d 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/StatusModelsBuilderController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilder/StatusModelsBuilderController.cs @@ -5,7 +5,7 @@ using Umbraco.Cms.ManagementApi.ViewModels.ModelsBuilderDashboard; using Umbraco.New.Cms.Core.Models; -namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilderDashboard; +namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilder; public class StatusModelsBuilderController : ModelsBuilderControllerBase { From bff0aa4e02c5c9e2ea390e8c2cf0af0ce4a9285d Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:44:10 +0200 Subject: [PATCH 03/15] Rename analytics route to telemetry --- .../Controllers/Analytics/AllAnalyticsController.cs | 4 ++-- .../Controllers/Analytics/AnalyticsControllerBase.cs | 4 ++-- .../Controllers/Analytics/GetAnalyticsController.cs | 2 +- .../Controllers/Analytics/SetAnalyticsController.cs | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs index 780d6f90d397..68df5e637d6c 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs @@ -1,4 +1,4 @@ -using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Core.Models; using Umbraco.Cms.ManagementApi.ViewModels.Pagination; @@ -7,7 +7,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; public class AllAnalyticsController : AnalyticsControllerBase { - [HttpGet("all")] + [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task> GetAll(int skip, int take) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs index 1ce29ea5c68a..658d2c00a6e8 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs @@ -5,8 +5,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; [ApiController] -[VersionedApiBackOfficeRoute("analytics")] -[OpenApiTag("Analytics")] +[VersionedApiBackOfficeRoute("telemetry")] +[OpenApiTag("Telemetry")] [ApiVersion("1.0")] public abstract class AnalyticsControllerBase : ManagementApiControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs index 1c45e41e714c..20e1ea0813b8 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs @@ -11,7 +11,7 @@ public class GetAnalyticsController : AnalyticsControllerBase public GetAnalyticsController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; - [HttpGet] + [HttpGet("current")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(AnalyticsLevelViewModel), StatusCodes.Status200OK)] public async Task Get() => await Task.FromResult(new AnalyticsLevelViewModel { AnalyticsLevel = _metricsConsentService.GetConsentLevel() }); diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs index cfdd1e8b4ff4..7dba6e0053db 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs @@ -12,7 +12,7 @@ public class SetAnalyticsController : AnalyticsControllerBase public SetAnalyticsController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; - [HttpPost] + [HttpPost("current")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] From 98fa9da2212b441c4ab3eddfd565469031122c97 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:47:39 +0200 Subject: [PATCH 04/15] Fix controller bases - routes and tags --- .../Controllers/DataType/Tree/DataTypeTreeControllerBase.cs | 4 ++-- .../DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs | 2 +- .../Document/RecycleBin/DocumentRecycleBinControllerBase.cs | 2 +- .../Controllers/Document/Tree/DocumentTreeControllerBase.cs | 2 +- .../Tree/DocumentBlueprintTreeControllerBase.cs | 4 ++-- .../DocumentType/Tree/DocumentTypeTreeControllerBase.cs | 4 ++-- .../Media/RecycleBin/MediaRecycleBinControllerBase.cs | 2 +- .../Controllers/Media/Tree/MediaTreeControllerBase.cs | 2 +- .../Controllers/MediaType/Tree/MediaTypeTreeControllerBase.cs | 4 ++-- .../MemberGroup/Tree/MemberGroupTreeControllerBase.cs | 4 ++-- .../MemberType/Tree/MemberTypeTreeControllerBase.cs | 4 ++-- .../PartialView/Tree/PartialViewTreeControllerBase.cs | 4 ++-- .../PublishedCache/PublishedCacheControllerBase.cs | 2 +- .../RelationType/Tree/RelationTypeTreeControllerBase.cs | 4 ++-- .../StaticFile/Tree/StaticFileTreeControllerBase.cs | 4 ++-- .../Stylesheet/Tree/StylesheetTreeControllerBase.cs | 2 +- .../Controllers/Template/Tree/TemplateTreeControllerBase.cs | 2 +- .../TrackedReferences/TrackedReferencesControllerBase.cs | 4 ++-- 18 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/DataTypeTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/DataTypeTreeControllerBase.cs index 4bdae5a2fa73..d71ec427cd37 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/DataTypeTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/DataTypeTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.DataType.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.DataType}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.DataType))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.DataType}")] +[OpenApiTag("Data Type")] public class DataTypeTreeControllerBase : FolderTreeControllerBase { private readonly IDataTypeService _dataTypeService; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs index 0d6a513e2d11..71333bd12b67 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs @@ -11,7 +11,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.DictionaryItem.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.DictionaryItem}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.DictionaryItem}")] [OpenApiTag(nameof(Constants.UdiEntityType.DictionaryItem))] // NOTE: at the moment dictionary items aren't supported by EntityService, so we have little use of the // tree controller base. We'll keep it though, in the hope that we can mend EntityService. diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Document/RecycleBin/DocumentRecycleBinControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Document/RecycleBin/DocumentRecycleBinControllerBase.cs index 747b6b3296dc..5337faa9b27e 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Document/RecycleBin/DocumentRecycleBinControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Document/RecycleBin/DocumentRecycleBinControllerBase.cs @@ -14,7 +14,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Document.RecycleBin; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Document}/recycle-bin")] +[VersionedApiBackOfficeRoute($"recycle-bin/{Constants.UdiEntityType.Document}")] [RequireDocumentTreeRootAccess] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [OpenApiTag(nameof(Constants.UdiEntityType.Document))] diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/DocumentTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/DocumentTreeControllerBase.cs index a20237537d18..e4574d223d71 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/DocumentTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/DocumentTreeControllerBase.cs @@ -16,7 +16,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Document.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Document}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.Document}")] [OpenApiTag(nameof(Constants.UdiEntityType.Document))] public abstract class DocumentTreeControllerBase : UserStartNodeTreeControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/DocumentBlueprintTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/DocumentBlueprintTreeControllerBase.cs index c6247da3a9b0..8e27af3aaca5 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/DocumentBlueprintTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/DocumentBlueprintTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.DocumentBlueprint.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.DocumentBlueprint}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.DocumentBlueprint))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.DocumentBlueprint}")] +[OpenApiTag("Document Blueprint")] public class DocumentBlueprintTreeControllerBase : EntityTreeControllerBase { private readonly IContentTypeService _contentTypeService; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/DocumentTypeTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/DocumentTypeTreeControllerBase.cs index cc4c224ef575..50f6579cc03c 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/DocumentTypeTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/DocumentTypeTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.DocumentType.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.DocumentType}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.DocumentType))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.DocumentType}")] +[OpenApiTag("Document Type")] public class DocumentTypeTreeControllerBase : FolderTreeControllerBase { private readonly IContentTypeService _contentTypeService; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Media/RecycleBin/MediaRecycleBinControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Media/RecycleBin/MediaRecycleBinControllerBase.cs index 157e1099de60..d4d738566c00 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Media/RecycleBin/MediaRecycleBinControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Media/RecycleBin/MediaRecycleBinControllerBase.cs @@ -14,7 +14,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Media.RecycleBin; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Media}/recycle-bin")] +[VersionedApiBackOfficeRoute($"recycle-bin/{Constants.UdiEntityType.Media}")] [RequireMediaTreeRootAccess] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [OpenApiTag(nameof(Constants.UdiEntityType.Media))] diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/MediaTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/MediaTreeControllerBase.cs index c03f05c71d90..0d2e14007a61 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/MediaTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/MediaTreeControllerBase.cs @@ -15,7 +15,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Media.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Media}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.Media}")] [OpenApiTag(nameof(Constants.UdiEntityType.Media))] public class MediaTreeControllerBase : UserStartNodeTreeControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/MediaTypeTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/MediaTypeTreeControllerBase.cs index 5b06c46439a2..61998bb59f73 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/MediaTypeTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/MediaTypeTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.MediaType.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.MediaType}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.MediaType))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.MediaType}")] +[OpenApiTag("Media Type")] public class MediaTypeTreeControllerBase : FolderTreeControllerBase { private readonly IMediaTypeService _mediaTypeService; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/MemberGroupTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/MemberGroupTreeControllerBase.cs index b3ee033a25c8..07b1df11ba66 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/MemberGroupTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/MemberGroupTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.MemberGroup.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.MemberGroup}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.MemberGroup))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.MemberGroup}")] +[OpenApiTag("Member Group")] public class MemberGroupTreeControllerBase : EntityTreeControllerBase { public MemberGroupTreeControllerBase(IEntityService entityService) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/MemberTypeTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/MemberTypeTreeControllerBase.cs index 88183dfd58ee..af194c665329 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/MemberTypeTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/MemberTypeTreeControllerBase.cs @@ -12,8 +12,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.MemberType.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.MemberType}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.MemberType))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.MemberType}")] +[OpenApiTag("Member Type")] public class MemberTypeTreeControllerBase : EntityTreeControllerBase { public MemberTypeTreeControllerBase(IEntityService entityService) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/PartialViewTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/PartialViewTreeControllerBase.cs index 95ad0eb6cfe6..656df362b211 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/PartialViewTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/PartialViewTreeControllerBase.cs @@ -9,8 +9,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.PartialView.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.PartialView}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.PartialView))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.PartialView}")] +[OpenApiTag("Partial View")] public class PartialViewTreeControllerBase : FileSystemTreeControllerBase { public PartialViewTreeControllerBase(FileSystems fileSystems) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/PublishedCache/PublishedCacheControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/PublishedCache/PublishedCacheControllerBase.cs index 78dcd539f4f0..3fe18847f6b8 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/PublishedCache/PublishedCacheControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/PublishedCache/PublishedCacheControllerBase.cs @@ -7,7 +7,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.PublishedCache; [ApiVersion("1.0")] [ApiController] [VersionedApiBackOfficeRoute("published-cache")] -[OpenApiTag("PublishedCache")] +[OpenApiTag("Published Cache")] public class PublishedCacheControllerBase : ManagementApiControllerBase { } diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/RelationTypeTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/RelationTypeTreeControllerBase.cs index c90c12468676..85252b2211b4 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/RelationTypeTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/RelationTypeTreeControllerBase.cs @@ -11,8 +11,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.RelationType.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.RelationType}/tree")] -[OpenApiTag(nameof(Constants.UdiEntityType.RelationType))] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.RelationType}")] +[OpenApiTag("Relation Type")] // NOTE: at the moment relation types aren't supported by EntityService, so we have little use of the // tree controller base. We'll keep it though, in the hope that we can mend EntityService. public class RelationTypeTreeControllerBase : EntityTreeControllerBase diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/StaticFileTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/StaticFileTreeControllerBase.cs index ec50a544951b..6bf92ce9f869 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/StaticFileTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/StaticFileTreeControllerBase.cs @@ -9,8 +9,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.StaticFile.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute("static-file/tree")] -[OpenApiTag("StaticFile")] +[VersionedApiBackOfficeRoute("tree/static-file")] +[OpenApiTag("Static File")] public class StaticFileTreeControllerBase : FileSystemTreeControllerBase { private static readonly string[] _allowedRootFolders = { "App_Plugins", "wwwroot" }; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/StylesheetTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/StylesheetTreeControllerBase.cs index b5297522932d..bdcf57d51e54 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/StylesheetTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/StylesheetTreeControllerBase.cs @@ -9,7 +9,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Stylesheet.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Stylesheet}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.Stylesheet}")] [OpenApiTag(nameof(Constants.UdiEntityType.Stylesheet))] public class StylesheetTreeControllerBase : FileSystemTreeControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/TemplateTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/TemplateTreeControllerBase.cs index be885f26bed8..a3c245d7880c 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/TemplateTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/TemplateTreeControllerBase.cs @@ -12,7 +12,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Template.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Template}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.Template}")] [OpenApiTag(nameof(Constants.UdiEntityType.Template))] public class TemplateTreeControllerBase : EntityTreeControllerBase { diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs index be40c80bf1c1..811711c93625 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs @@ -5,8 +5,8 @@ namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences; [ApiController] -[VersionedApiBackOfficeRoute("tracked-references")] -[OpenApiTag("TrackedReferences")] +[VersionedApiBackOfficeRoute("tracked-reference")] +[OpenApiTag("Tracked Reference")] [ApiVersion("1.0")] public abstract class TrackedReferencesControllerBase : ManagementApiControllerBase { From fc564eda2b7e4b8306a44fa9b3fe5db5611b674e Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:48:55 +0200 Subject: [PATCH 05/15] Fix items route --- .../Controllers/DataType/Tree/ItemsDataTypeTreeController.cs | 2 +- .../DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs | 2 +- .../Controllers/Document/Tree/ItemsDocumentTreeController.cs | 2 +- .../Tree/ItemsDocumentBlueprintTreeController.cs | 2 +- .../DocumentType/Tree/ItemsDocumentTypeTreeController.cs | 2 +- .../Controllers/Media/Tree/ItemsMediaTreeController.cs | 2 +- .../Controllers/MediaType/Tree/ItemsMediaTypeTreeController.cs | 2 +- .../MemberGroup/Tree/ItemsMemberGroupTreeController.cs | 2 +- .../MemberType/Tree/ItemsMemberTypeTreeController.cs | 2 +- .../PartialView/Tree/ItemsPartialViewTreeController.cs | 2 +- .../RelationType/Tree/ItemsRelationTypeTreeController.cs | 2 +- .../Controllers/Script/Tree/ItemsScriptTreeController.cs | 2 +- .../StaticFile/Tree/ItemsStaticFileTreeController.cs | 2 +- .../Stylesheet/Tree/ItemsStylesheetTreeController.cs | 2 +- .../Controllers/Template/Tree/ItemsTemplateTreeController.cs | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/ItemsDataTypeTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/ItemsDataTypeTreeController.cs index 82eabcb6f494..34779cca3d68 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/ItemsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DataType/Tree/ItemsDataTypeTreeController.cs @@ -12,7 +12,7 @@ public ItemsDataTypeTreeController(IEntityService entityService, IDataTypeServic { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs index 69d2fda33d4d..efe236271258 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs @@ -13,7 +13,7 @@ public ItemsDictionaryItemTreeController(IEntityService entityService, ILocaliza { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/ItemsDocumentTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/ItemsDocumentTreeController.cs index a18dfea069a5..a9dd8326d6a4 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/ItemsDocumentTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Document/Tree/ItemsDocumentTreeController.cs @@ -21,7 +21,7 @@ public ItemsDocumentTreeController( { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys, Guid? dataTypeKey = null, string? culture = null) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/ItemsDocumentBlueprintTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/ItemsDocumentBlueprintTreeController.cs index 6b7edb6fab1d..e077d7eb4970 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/ItemsDocumentBlueprintTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentBlueprint/Tree/ItemsDocumentBlueprintTreeController.cs @@ -13,7 +13,7 @@ public ItemsDocumentBlueprintTreeController(IEntityService entityService, IConte { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/ItemsDocumentTypeTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/ItemsDocumentTypeTreeController.cs index e19bf249c6d8..28da775a585d 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/ItemsDocumentTypeTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/DocumentType/Tree/ItemsDocumentTypeTreeController.cs @@ -12,7 +12,7 @@ public ItemsDocumentTypeTreeController(IEntityService entityService, IContentTyp { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/ItemsMediaTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/ItemsMediaTreeController.cs index 2ebf1a559f3f..cc6074d49bd2 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/ItemsMediaTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Media/Tree/ItemsMediaTreeController.cs @@ -20,7 +20,7 @@ public ItemsMediaTreeController( { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys, Guid? dataTypeKey = null) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/ItemsMediaTypeTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/ItemsMediaTypeTreeController.cs index 363751fee7f7..309711cd7dc6 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/ItemsMediaTypeTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MediaType/Tree/ItemsMediaTypeTreeController.cs @@ -12,7 +12,7 @@ public ItemsMediaTypeTreeController(IEntityService entityService, IMediaTypeServ { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/ItemsMemberGroupTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/ItemsMemberGroupTreeController.cs index 94db46be4ed4..d3be627d306b 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/ItemsMemberGroupTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MemberGroup/Tree/ItemsMemberGroupTreeController.cs @@ -12,7 +12,7 @@ public ItemsMemberGroupTreeController(IEntityService entityService) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/ItemsMemberTypeTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/ItemsMemberTypeTreeController.cs index 249cdd5d67cd..e70ca8f0ee14 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/ItemsMemberTypeTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/MemberType/Tree/ItemsMemberTypeTreeController.cs @@ -12,7 +12,7 @@ public ItemsMemberTypeTreeController(IEntityService entityService) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/ItemsPartialViewTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/ItemsPartialViewTreeController.cs index d6107a844a7f..5a1567028caf 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/ItemsPartialViewTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/PartialView/Tree/ItemsPartialViewTreeController.cs @@ -12,7 +12,7 @@ public ItemsPartialViewTreeController(FileSystems fileSystems) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "path")] string[] paths) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/ItemsRelationTypeTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/ItemsRelationTypeTreeController.cs index 7e2054a59422..ca3f6ff7de05 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/ItemsRelationTypeTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/RelationType/Tree/ItemsRelationTypeTreeController.cs @@ -14,7 +14,7 @@ public ItemsRelationTypeTreeController(IEntityService entityService, IRelationSe : base(entityService) => _relationService = relationService; - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ItemsScriptTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ItemsScriptTreeController.cs index 99cd6d990e3e..642fcb63beaa 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ItemsScriptTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ItemsScriptTreeController.cs @@ -12,7 +12,7 @@ public ItemsScriptTreeController(FileSystems fileSystems) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "path")] string[] paths) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/ItemsStaticFileTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/ItemsStaticFileTreeController.cs index 205f92d94f70..1b8bb4b8b821 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/ItemsStaticFileTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/StaticFile/Tree/ItemsStaticFileTreeController.cs @@ -12,7 +12,7 @@ public ItemsStaticFileTreeController(IPhysicalFileSystem physicalFileSystem) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "path")] string[] paths) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/ItemsStylesheetTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/ItemsStylesheetTreeController.cs index de2e779ba1f4..12b04a9c08d8 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/ItemsStylesheetTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Stylesheet/Tree/ItemsStylesheetTreeController.cs @@ -12,7 +12,7 @@ public ItemsStylesheetTreeController(FileSystems fileSystems) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "path")] string[] paths) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/ItemsTemplateTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/ItemsTemplateTreeController.cs index fb4a29c62112..877f740df794 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/ItemsTemplateTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Template/Tree/ItemsTemplateTreeController.cs @@ -12,7 +12,7 @@ public ItemsTemplateTreeController(IEntityService entityService) { } - [HttpGet("items")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] public async Task>> Items([FromQuery(Name = "key")] Guid[] keys) From ca988dba8bf62fa08713d373c7a97abd13cad673 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:49:19 +0200 Subject: [PATCH 06/15] Fix more controllerbase routes --- .../Controllers/Script/Tree/ScriptTreeControllerBase.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ScriptTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ScriptTreeControllerBase.cs index 4e204da4eedb..2d8f934658ac 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ScriptTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Script/Tree/ScriptTreeControllerBase.cs @@ -9,7 +9,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Script.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Script}/tree")] +[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.Script}")] [OpenApiTag(nameof(Constants.UdiEntityType.Script))] public class ScriptTreeControllerBase : FileSystemTreeControllerBase { From e9d4364c725f0d64e1b00e533fc1fa782bf32796 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:49:43 +0200 Subject: [PATCH 07/15] Fix route --- .../Controllers/Relation/ByChildRelationController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Relation/ByChildRelationController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Relation/ByChildRelationController.cs index 4639fa7bea02..8d1e88c806d3 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Relation/ByChildRelationController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Relation/ByChildRelationController.cs @@ -22,7 +22,7 @@ public ByChildRelationController( _relationViewModelFactory = relationViewModelFactory; } - [HttpGet("child-relations/{childId:int}")] + [HttpGet("child-relation/{childId:int}")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task> ByChild(int childId, int skip, int take, string? relationTypeAlias = "") From 97ae5ffa9e2ec306192f3ab8cdda35d7fdf6cf00 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 13:51:39 +0200 Subject: [PATCH 08/15] Fix OpenApi file --- src/Umbraco.Cms.ManagementApi/OpenApi.json | 206 +++++++++--------- .../NewBackoffice/OpenAPIContractTest.cs | 4 - 2 files changed, 103 insertions(+), 107 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index b821f26e2474..8e3d1e0c355d 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -75,10 +75,10 @@ } } }, - "/umbraco/management/api/v1/tracked-references/descendants/{parentId}": { + "/umbraco/management/api/v1/tracked-reference/descendants/{parentId}": { "get": { "tags": [ - "TrackedReferences" + "Tracked Reference" ], "summary": "Gets a page list of the child nodes of the current item used in any kind of relation.", "description": "Used when deleting and unpublishing a single item to check if this item has any descending items that are in any\nkind of relation.\nThis is basically finding the descending items which are children in relations.", @@ -136,10 +136,10 @@ } } }, - "/umbraco/management/api/v1/tracked-references/{id}": { + "/umbraco/management/api/v1/tracked-reference/{id}": { "get": { "tags": [ - "TrackedReferences" + "Tracked Reference" ], "summary": "Gets a page list of tracked references for the current item, so you can see where an item is being used.", "description": "Used by info tabs on content, media etc. and for the delete and unpublish of single items.\nThis is basically finding parents of relations.", @@ -197,10 +197,10 @@ } } }, - "/umbraco/management/api/v1/tracked-references/multiple": { + "/umbraco/management/api/v1/tracked-reference/multiple": { "get": { "tags": [ - "TrackedReferences" + "Tracked Reference" ], "summary": "Gets a page list of the items used in any kind of relation from selected integer ids.", "description": "Used when bulk deleting content/media and bulk unpublishing content (delete and unpublish on List view).\nThis is basically finding children of relations.", @@ -263,7 +263,7 @@ } } }, - "/umbraco/management/api/v1/template/tree/children": { + "/umbraco/management/api/v1/tree/template/children": { "get": { "tags": [ "Template" @@ -314,7 +314,7 @@ } } }, - "/umbraco/management/api/v1/template/tree/items": { + "/umbraco/management/api/v1/tree/template/item": { "get": { "tags": [ "Template" @@ -355,7 +355,7 @@ } } }, - "/umbraco/management/api/v1/template/tree/root": { + "/umbraco/management/api/v1/tree/template/root": { "get": { "tags": [ "Template" @@ -397,7 +397,7 @@ } } }, - "/umbraco/management/api/v1/stylesheet/tree/children": { + "/umbraco/management/api/v1/tree/stylesheet/children": { "get": { "tags": [ "Stylesheet" @@ -448,7 +448,7 @@ } } }, - "/umbraco/management/api/v1/stylesheet/tree/items": { + "/umbraco/management/api/v1/tree/stylesheet/item": { "get": { "tags": [ "Stylesheet" @@ -488,7 +488,7 @@ } } }, - "/umbraco/management/api/v1/stylesheet/tree/root": { + "/umbraco/management/api/v1/tree/stylesheet/root": { "get": { "tags": [ "Stylesheet" @@ -530,10 +530,10 @@ } } }, - "/umbraco/management/api/v1/static-file/tree/children": { + "/umbraco/management/api/v1/tree/static-file/children": { "get": { "tags": [ - "StaticFile" + "Static File" ], "operationId": "ChildrenStaticFileTree_Children", "parameters": [ @@ -581,10 +581,10 @@ } } }, - "/umbraco/management/api/v1/static-file/tree/items": { + "/umbraco/management/api/v1/tree/static-file/item": { "get": { "tags": [ - "StaticFile" + "Static File" ], "operationId": "ItemsStaticFileTree_Items", "parameters": [ @@ -621,10 +621,10 @@ } } }, - "/umbraco/management/api/v1/static-file/tree/root": { + "/umbraco/management/api/v1/tree/static-file/root": { "get": { "tags": [ - "StaticFile" + "Static File" ], "operationId": "RootStaticFileTree_Root", "parameters": [ @@ -962,7 +962,7 @@ } } }, - "/umbraco/management/api/v1/script/tree/children": { + "/umbraco/management/api/v1/tree/script/children": { "get": { "tags": [ "Script" @@ -1013,7 +1013,7 @@ } } }, - "/umbraco/management/api/v1/script/tree/items": { + "/umbraco/management/api/v1/tree/script/item": { "get": { "tags": [ "Script" @@ -1053,7 +1053,7 @@ } } }, - "/umbraco/management/api/v1/script/tree/root": { + "/umbraco/management/api/v1/tree/script/root": { "get": { "tags": [ "Script" @@ -1095,7 +1095,7 @@ } } }, - "/umbraco/management/api/v1/relation/child-relations/{childId}": { + "/umbraco/management/api/v1/relation/child-relation/{childId}": { "get": { "tags": [ "Relation" @@ -1198,10 +1198,10 @@ } } }, - "/umbraco/management/api/v1/relation-type/tree/items": { + "/umbraco/management/api/v1/tree/relation-type/item": { "get": { "tags": [ - "RelationType" + "Relation Type" ], "operationId": "ItemsRelationTypeTree_Items", "parameters": [ @@ -1239,10 +1239,10 @@ } } }, - "/umbraco/management/api/v1/relation-type/tree/root": { + "/umbraco/management/api/v1/tree/relation-type/root": { "get": { "tags": [ - "RelationType" + "Relation Type" ], "operationId": "RootRelationTypeTree_Root", "parameters": [ @@ -1284,7 +1284,7 @@ "/umbraco/management/api/v1/published-cache/collect": { "post": { "tags": [ - "PublishedCache" + "Published Cache" ], "operationId": "CollectPublishedCache_Collect", "responses": { @@ -1297,7 +1297,7 @@ "/umbraco/management/api/v1/published-cache/rebuild": { "post": { "tags": [ - "PublishedCache" + "Published Cache" ], "operationId": "RebuildPublishedCache_Collect", "responses": { @@ -1310,7 +1310,7 @@ "/umbraco/management/api/v1/published-cache/reload": { "post": { "tags": [ - "PublishedCache" + "Published Cache" ], "operationId": "ReloadPublishedCache_Reload", "responses": { @@ -1323,7 +1323,7 @@ "/umbraco/management/api/v1/published-cache/status": { "get": { "tags": [ - "PublishedCache" + "Published Cache" ], "operationId": "StatusPublishedCache_Status", "responses": { @@ -1360,10 +1360,10 @@ } } }, - "/umbraco/management/api/v1/partial-view/tree/children": { + "/umbraco/management/api/v1/tree/partial-view/children": { "get": { "tags": [ - "PartialView" + "Partial View" ], "operationId": "ChildrenPartialViewTree_Children", "parameters": [ @@ -1411,10 +1411,10 @@ } } }, - "/umbraco/management/api/v1/partial-view/tree/items": { + "/umbraco/management/api/v1/tree/partial-view/item": { "get": { "tags": [ - "PartialView" + "Partial View" ], "operationId": "ItemsPartialViewTree_Items", "parameters": [ @@ -1451,10 +1451,10 @@ } } }, - "/umbraco/management/api/v1/partial-view/tree/root": { + "/umbraco/management/api/v1/tree/partial-view/root": { "get": { "tags": [ - "PartialView" + "Partial View" ], "operationId": "RootPartialViewTree_Root", "parameters": [ @@ -1496,7 +1496,7 @@ "/umbraco/management/api/v1/models-builder/build": { "post": { "tags": [ - "ModelsBuilder" + "Models Builder" ], "operationId": "BuildModelsBuilder_BuildModels", "responses": { @@ -1524,10 +1524,10 @@ } } }, - "/umbraco/management/api/v1/models-builder": { + "/umbraco/management/api/v1/models-builder/dashboard": { "get": { "tags": [ - "ModelsBuilder" + "Models Builder" ], "operationId": "GetModelsBuilder_GetDashboard", "responses": { @@ -1548,7 +1548,7 @@ "/umbraco/management/api/v1/models-builder/status": { "get": { "tags": [ - "ModelsBuilder" + "Models Builder" ], "operationId": "StatusModelsBuilder_GetModelsOutOfDateStatus", "responses": { @@ -1565,10 +1565,10 @@ } } }, - "/umbraco/management/api/v1/member-type/tree/items": { + "/umbraco/management/api/v1/tree/member-type/item": { "get": { "tags": [ - "MemberType" + "Member Type" ], "operationId": "ItemsMemberTypeTree_Items", "parameters": [ @@ -1606,10 +1606,10 @@ } } }, - "/umbraco/management/api/v1/member-type/tree/root": { + "/umbraco/management/api/v1/tree/member-type/root": { "get": { "tags": [ - "MemberType" + "Member Type" ], "operationId": "RootMemberTypeTree_Root", "parameters": [ @@ -1648,10 +1648,10 @@ } } }, - "/umbraco/management/api/v1/member-group/tree/items": { + "/umbraco/management/api/v1/tree/member-group/item": { "get": { "tags": [ - "MemberGroup" + "Member Group" ], "operationId": "ItemsMemberGroupTree_Items", "parameters": [ @@ -1689,10 +1689,10 @@ } } }, - "/umbraco/management/api/v1/member-group/tree/root": { + "/umbraco/management/api/v1/tree/member-group/root": { "get": { "tags": [ - "MemberGroup" + "Member Group" ], "operationId": "RootMemberGroupTree_Root", "parameters": [ @@ -1731,7 +1731,7 @@ } } }, - "/umbraco/management/api/v1/media/tree/children": { + "/umbraco/management/api/v1/tree/media/children": { "get": { "tags": [ "Media" @@ -1792,7 +1792,7 @@ } } }, - "/umbraco/management/api/v1/media/tree/items": { + "/umbraco/management/api/v1/tree/media/item": { "get": { "tags": [ "Media" @@ -1843,7 +1843,7 @@ } } }, - "/umbraco/management/api/v1/media/tree/root": { + "/umbraco/management/api/v1/tree/media/root": { "get": { "tags": [ "Media" @@ -1895,7 +1895,7 @@ } } }, - "/umbraco/management/api/v1/media/recycle-bin/children": { + "/umbraco/management/api/v1/recycle-bin/media/children": { "get": { "tags": [ "Media" @@ -1956,7 +1956,7 @@ } } }, - "/umbraco/management/api/v1/media/recycle-bin/root": { + "/umbraco/management/api/v1/recycle-bin/media/root": { "get": { "tags": [ "Media" @@ -2008,10 +2008,10 @@ } } }, - "/umbraco/management/api/v1/media-type/tree/children": { + "/umbraco/management/api/v1/tree/media-type/children": { "get": { "tags": [ - "MediaType" + "Media Type" ], "operationId": "ChildrenMediaTypeTree_Children", "parameters": [ @@ -2068,10 +2068,10 @@ } } }, - "/umbraco/management/api/v1/media-type/tree/items": { + "/umbraco/management/api/v1/tree/media-type/item": { "get": { "tags": [ - "MediaType" + "Media Type" ], "operationId": "ItemsMediaTypeTree_Items", "parameters": [ @@ -2109,10 +2109,10 @@ } } }, - "/umbraco/management/api/v1/media-type/tree/root": { + "/umbraco/management/api/v1/tree/media-type/root": { "get": { "tags": [ - "MediaType" + "Media Type" ], "operationId": "RootMediaTypeTree_Root", "parameters": [ @@ -2569,7 +2569,7 @@ } } }, - "/umbraco/management/api/v1/document/tree/children": { + "/umbraco/management/api/v1/tree/document/children": { "get": { "tags": [ "Document" @@ -2639,7 +2639,7 @@ } } }, - "/umbraco/management/api/v1/document/tree/items": { + "/umbraco/management/api/v1/tree/document/item": { "get": { "tags": [ "Document" @@ -2699,7 +2699,7 @@ } } }, - "/umbraco/management/api/v1/document/tree/root": { + "/umbraco/management/api/v1/tree/document/root": { "get": { "tags": [ "Document" @@ -2760,7 +2760,7 @@ } } }, - "/umbraco/management/api/v1/document/recycle-bin/children": { + "/umbraco/management/api/v1/recycle-bin/document/children": { "get": { "tags": [ "Document" @@ -2821,7 +2821,7 @@ } } }, - "/umbraco/management/api/v1/document/recycle-bin/root": { + "/umbraco/management/api/v1/recycle-bin/document/root": { "get": { "tags": [ "Document" @@ -2873,10 +2873,10 @@ } } }, - "/umbraco/management/api/v1/document-type/tree/children": { + "/umbraco/management/api/v1/tree/document-type/children": { "get": { "tags": [ - "DocumentType" + "Document Type" ], "operationId": "ChildrenDocumentTypeTree_Children", "parameters": [ @@ -2933,10 +2933,10 @@ } } }, - "/umbraco/management/api/v1/document-type/tree/items": { + "/umbraco/management/api/v1/tree/document-type/item": { "get": { "tags": [ - "DocumentType" + "Document Type" ], "operationId": "ItemsDocumentTypeTree_Items", "parameters": [ @@ -2974,10 +2974,10 @@ } } }, - "/umbraco/management/api/v1/document-type/tree/root": { + "/umbraco/management/api/v1/tree/document-type/root": { "get": { "tags": [ - "DocumentType" + "Document Type" ], "operationId": "RootDocumentTypeTree_Root", "parameters": [ @@ -3025,10 +3025,10 @@ } } }, - "/umbraco/management/api/v1/document-blueprint/tree/items": { + "/umbraco/management/api/v1/tree/document-blueprint/item": { "get": { "tags": [ - "DocumentBlueprint" + "Document Blueprint" ], "operationId": "ItemsDocumentBlueprintTree_Items", "parameters": [ @@ -3066,10 +3066,10 @@ } } }, - "/umbraco/management/api/v1/document-blueprint/tree/root": { + "/umbraco/management/api/v1/tree/document-blueprint/root": { "get": { "tags": [ - "DocumentBlueprint" + "Document Blueprint" ], "operationId": "RootDocumentBlueprintTree_Root", "parameters": [ @@ -3486,7 +3486,7 @@ } } }, - "/umbraco/management/api/v1/dictionary-item/tree/children": { + "/umbraco/management/api/v1/tree/dictionary-item/children": { "get": { "tags": [ "DictionaryItem" @@ -3537,7 +3537,7 @@ } } }, - "/umbraco/management/api/v1/dictionary-item/tree/items": { + "/umbraco/management/api/v1/tree/dictionary-item/item": { "get": { "tags": [ "DictionaryItem" @@ -3578,7 +3578,7 @@ } } }, - "/umbraco/management/api/v1/dictionary-item/tree/root": { + "/umbraco/management/api/v1/tree/dictionary-item/root": { "get": { "tags": [ "DictionaryItem" @@ -3620,10 +3620,10 @@ } } }, - "/umbraco/management/api/v1/data-type/tree/children": { + "/umbraco/management/api/v1/tree/data-type/children": { "get": { "tags": [ - "DataType" + "Data Type" ], "operationId": "ChildrenDataTypeTree_Children", "parameters": [ @@ -3680,10 +3680,10 @@ } } }, - "/umbraco/management/api/v1/data-type/tree/items": { + "/umbraco/management/api/v1/tree/data-type/item": { "get": { "tags": [ - "DataType" + "Data Type" ], "operationId": "ItemsDataTypeTree_Items", "parameters": [ @@ -3721,10 +3721,10 @@ } } }, - "/umbraco/management/api/v1/data-type/tree/root": { + "/umbraco/management/api/v1/tree/data-type/root": { "get": { "tags": [ - "DataType" + "Data Type" ], "operationId": "RootDataTypeTree_Root", "parameters": [ @@ -3813,10 +3813,10 @@ } } }, - "/umbraco/management/api/v1/analytics/all": { + "/umbraco/management/api/v1/telemetry": { "get": { "tags": [ - "Analytics" + "Telemetry" ], "operationId": "AllAnalytics_GetAll", "parameters": [ @@ -3853,10 +3853,10 @@ } } }, - "/umbraco/management/api/v1/analytics": { + "/umbraco/management/api/v1/telemetry/current": { "get": { "tags": [ - "Analytics" + "Telemetry" ], "operationId": "GetAnalytics_Get", "responses": { @@ -3874,7 +3874,7 @@ }, "post": { "tags": [ - "Analytics" + "Telemetry" ], "operationId": "SetAnalytics_SetConsentLevel", "requestBody": { @@ -5263,14 +5263,11 @@ } }, "tags": [ - { - "name": "Analytics" - }, { "name": "Culture" }, { - "name": "DataType" + "name": "Data Type" }, { "name": "Dictionary" @@ -5282,10 +5279,10 @@ "name": "Document" }, { - "name": "DocumentBlueprint" + "name": "Document Blueprint" }, { - "name": "DocumentType" + "name": "Document Type" }, { "name": "Help" @@ -5300,31 +5297,31 @@ "name": "Media" }, { - "name": "MediaType" + "name": "Media Type" }, { - "name": "MemberGroup" + "name": "Member Group" }, { - "name": "MemberType" + "name": "Member Type" }, { - "name": "ModelsBuilder" + "name": "Models Builder" }, { - "name": "PartialView" + "name": "Partial View" }, { "name": "Profiling" }, { - "name": "PublishedCache" + "name": "Published Cache" }, { "name": "Relation" }, { - "name": "RelationType" + "name": "Relation Type" }, { "name": "Script" @@ -5336,16 +5333,19 @@ "name": "Server" }, { - "name": "StaticFile" + "name": "Static File" }, { "name": "Stylesheet" }, + { + "name": "Telemetry" + }, { "name": "Template" }, { - "name": "TrackedReferences" + "name": "Tracked Reference" }, { "name": "Upgrade" diff --git a/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs b/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs index 9178234e7433..a869f63bd343 100644 --- a/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs +++ b/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs @@ -1,15 +1,11 @@ -using System; -using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using NUnit.Framework; using Umbraco.Cms.Core.Configuration.Models; -using Umbraco.Cms.Core.DependencyInjection; using Umbraco.Cms.Core.Hosting; using Umbraco.Cms.Tests.Integration.TestServerTest; -using Umbraco.Extensions; namespace Umbraco.Cms.Tests.Integration.NewBackoffice; From afc8d9ea4a24afef2bd6d11c8cc8cad4465299d7 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 14:21:25 +0200 Subject: [PATCH 09/15] Merging DictionaryItem and Dictionary --- .../Tree/ChildrenDictionaryTreeController.cs} | 6 +++--- .../Tree/DictionaryTreeControllerBase.cs} | 12 +++++------ .../Tree/ItemsDictionaryTreeController.cs} | 6 +++--- .../Tree/RootDictionaryTreeController.cs} | 6 +++--- src/Umbraco.Cms.ManagementApi/OpenApi.json | 21 ++++++++----------- 5 files changed, 24 insertions(+), 27 deletions(-) rename src/Umbraco.Cms.ManagementApi/Controllers/{DictionaryItem/Tree/ChildrenDictionaryItemTreeController.cs => Dictionary/Tree/ChildrenDictionaryTreeController.cs} (82%) rename src/Umbraco.Cms.ManagementApi/Controllers/{DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs => Dictionary/Tree/DictionaryTreeControllerBase.cs} (78%) rename src/Umbraco.Cms.ManagementApi/Controllers/{DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs => Dictionary/Tree/ItemsDictionaryTreeController.cs} (74%) rename src/Umbraco.Cms.ManagementApi/Controllers/{DictionaryItem/Tree/RootDictionaryItemTreeController.cs => Dictionary/Tree/RootDictionaryTreeController.cs} (82%) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ChildrenDictionaryItemTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs similarity index 82% rename from src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ChildrenDictionaryItemTreeController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs index 0969b808c9da..8b2e6b23281b 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ChildrenDictionaryItemTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ChildrenDictionaryTreeController.cs @@ -6,11 +6,11 @@ using Umbraco.Cms.ManagementApi.ViewModels.Pagination; using Umbraco.Cms.ManagementApi.ViewModels.Tree; -namespace Umbraco.Cms.ManagementApi.Controllers.DictionaryItem.Tree; +namespace Umbraco.Cms.ManagementApi.Controllers.Dictionary.Tree; -public class ChildrenDictionaryItemTreeController : DictionaryItemTreeControllerBase +public class ChildrenDictionaryTreeController : DictionaryTreeControllerBase { - public ChildrenDictionaryItemTreeController(IEntityService entityService, ILocalizationService localizationService) + public ChildrenDictionaryTreeController(IEntityService entityService, ILocalizationService localizationService) : base(entityService, localizationService) { } diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/DictionaryTreeControllerBase.cs similarity index 78% rename from src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/DictionaryTreeControllerBase.cs index 71333bd12b67..91f71f4a13de 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/DictionaryItemTreeControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/DictionaryTreeControllerBase.cs @@ -7,17 +7,17 @@ using Umbraco.Cms.ManagementApi.ViewModels.Tree; using Umbraco.New.Cms.Web.Common.Routing; -namespace Umbraco.Cms.ManagementApi.Controllers.DictionaryItem.Tree; +namespace Umbraco.Cms.ManagementApi.Controllers.Dictionary.Tree; [ApiVersion("1.0")] [ApiController] -[VersionedApiBackOfficeRoute($"tree/{Constants.UdiEntityType.DictionaryItem}")] -[OpenApiTag(nameof(Constants.UdiEntityType.DictionaryItem))] -// NOTE: at the moment dictionary items aren't supported by EntityService, so we have little use of the +[VersionedApiBackOfficeRoute($"tree/dictionary")] +[OpenApiTag("Dictionary")] +// NOTE: at the moment dictionary items (renamed to dictionary tree) aren't supported by EntityService, so we have little use of the // tree controller base. We'll keep it though, in the hope that we can mend EntityService. -public class DictionaryItemTreeControllerBase : EntityTreeControllerBase +public class DictionaryTreeControllerBase : EntityTreeControllerBase { - public DictionaryItemTreeControllerBase(IEntityService entityService, ILocalizationService localizationService) + public DictionaryTreeControllerBase(IEntityService entityService, ILocalizationService localizationService) : base(entityService) => LocalizationService = localizationService; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ItemsDictionaryTreeController.cs similarity index 74% rename from src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ItemsDictionaryTreeController.cs index efe236271258..ea2de2058afc 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/ItemsDictionaryItemTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/ItemsDictionaryTreeController.cs @@ -4,11 +4,11 @@ using Umbraco.Cms.Core.Services; using Umbraco.Cms.ManagementApi.ViewModels.Tree; -namespace Umbraco.Cms.ManagementApi.Controllers.DictionaryItem.Tree; +namespace Umbraco.Cms.ManagementApi.Controllers.Dictionary.Tree; -public class ItemsDictionaryItemTreeController : DictionaryItemTreeControllerBase +public class ItemsDictionaryTreeController : DictionaryTreeControllerBase { - public ItemsDictionaryItemTreeController(IEntityService entityService, ILocalizationService localizationService) + public ItemsDictionaryTreeController(IEntityService entityService, ILocalizationService localizationService) : base(entityService, localizationService) { } diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/RootDictionaryItemTreeController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs similarity index 82% rename from src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/RootDictionaryItemTreeController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs index 18abf7a72860..65981cb5189c 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/DictionaryItem/Tree/RootDictionaryItemTreeController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Dictionary/Tree/RootDictionaryTreeController.cs @@ -6,11 +6,11 @@ using Umbraco.Cms.ManagementApi.ViewModels.Pagination; using Umbraco.Cms.ManagementApi.ViewModels.Tree; -namespace Umbraco.Cms.ManagementApi.Controllers.DictionaryItem.Tree; +namespace Umbraco.Cms.ManagementApi.Controllers.Dictionary.Tree; -public class RootDictionaryItemTreeController : DictionaryItemTreeControllerBase +public class RootDictionaryTreeController : DictionaryTreeControllerBase { - public RootDictionaryItemTreeController(IEntityService entityService, ILocalizationService localizationService) + public RootDictionaryTreeController(IEntityService entityService, ILocalizationService localizationService) : base(entityService, localizationService) { } diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index 8e3d1e0c355d..37bfdc737e74 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -3486,12 +3486,12 @@ } } }, - "/umbraco/management/api/v1/tree/dictionary-item/children": { + "/umbraco/management/api/v1/tree/dictionary/children": { "get": { "tags": [ - "DictionaryItem" + "Dictionary" ], - "operationId": "ChildrenDictionaryItemTree_Children", + "operationId": "ChildrenDictionaryTree_Children", "parameters": [ { "name": "parentKey", @@ -3537,12 +3537,12 @@ } } }, - "/umbraco/management/api/v1/tree/dictionary-item/item": { + "/umbraco/management/api/v1/tree/dictionary/item": { "get": { "tags": [ - "DictionaryItem" + "Dictionary" ], - "operationId": "ItemsDictionaryItemTree_Items", + "operationId": "ItemsDictionaryTree_Items", "parameters": [ { "name": "key", @@ -3578,12 +3578,12 @@ } } }, - "/umbraco/management/api/v1/tree/dictionary-item/root": { + "/umbraco/management/api/v1/tree/dictionary/root": { "get": { "tags": [ - "DictionaryItem" + "Dictionary" ], - "operationId": "RootDictionaryItemTree_Root", + "operationId": "RootDictionaryTree_Root", "parameters": [ { "name": "skip", @@ -5272,9 +5272,6 @@ { "name": "Dictionary" }, - { - "name": "DictionaryItem" - }, { "name": "Document" }, From 76f2419f8d7de2979bd8eb57032fae322227d035 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 15:09:13 +0200 Subject: [PATCH 10/15] Fix TrackedReferences naming --- .../ByIdTrackedReferenceController.cs} | 6 +++--- .../DescendantsTrackedReferenceController.cs} | 6 +++--- .../ItemsTrackedReferenceController.cs} | 8 ++++---- .../TrackedReferencesControllerBase.cs | 4 ++-- 4 files changed, 12 insertions(+), 12 deletions(-) rename src/Umbraco.Cms.ManagementApi/Controllers/{TrackedReferences/ForItemTrackedReferencesController.cs => TrackedReference/ByIdTrackedReferenceController.cs} (89%) rename src/Umbraco.Cms.ManagementApi/Controllers/{TrackedReferences/DescendantsTrackedReferencesController.cs => TrackedReference/DescendantsTrackedReferenceController.cs} (89%) rename src/Umbraco.Cms.ManagementApi/Controllers/{TrackedReferences/MultipleTrackedReferencesController.cs => TrackedReference/ItemsTrackedReferenceController.cs} (87%) rename src/Umbraco.Cms.ManagementApi/Controllers/{TrackedReferences => TrackedReference}/TrackedReferencesControllerBase.cs (77%) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/ForItemTrackedReferencesController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ByIdTrackedReferenceController.cs similarity index 89% rename from src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/ForItemTrackedReferencesController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ByIdTrackedReferenceController.cs index a415cf08bfaa..3c1998a7e48c 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/ForItemTrackedReferencesController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ByIdTrackedReferenceController.cs @@ -7,14 +7,14 @@ using Umbraco.Cms.ManagementApi.ViewModels.TrackedReferences; using Umbraco.New.Cms.Core.Models; -namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences; +namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReference; -public class ForItemTrackedReferencesController : TrackedReferencesControllerBase +public class ByIdTrackedReferenceController : TrackedReferenceControllerBase { private readonly ITrackedReferencesService _trackedReferencesService; private readonly IUmbracoMapper _umbracoMapper; - public ForItemTrackedReferencesController(ITrackedReferencesService trackedReferencesService, IUmbracoMapper umbracoMapper) + public ByIdTrackedReferenceController(ITrackedReferencesService trackedReferencesService, IUmbracoMapper umbracoMapper) { _trackedReferencesService = trackedReferencesService; _umbracoMapper = umbracoMapper; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/DescendantsTrackedReferencesController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/DescendantsTrackedReferenceController.cs similarity index 89% rename from src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/DescendantsTrackedReferencesController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/DescendantsTrackedReferenceController.cs index ecac832a8440..20f119d17382 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/DescendantsTrackedReferencesController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/DescendantsTrackedReferenceController.cs @@ -7,14 +7,14 @@ using Umbraco.Cms.ManagementApi.ViewModels.TrackedReferences; using Umbraco.New.Cms.Core.Models; -namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences; +namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReference; -public class DescendantsTrackedReferencesController : TrackedReferencesControllerBase +public class DescendantsTrackedReferenceController : TrackedReferenceControllerBase { private readonly ITrackedReferencesService _trackedReferencesSkipTakeService; private readonly IUmbracoMapper _umbracoMapper; - public DescendantsTrackedReferencesController(ITrackedReferencesService trackedReferencesSkipTakeService, IUmbracoMapper umbracoMapper) + public DescendantsTrackedReferenceController(ITrackedReferencesService trackedReferencesSkipTakeService, IUmbracoMapper umbracoMapper) { _trackedReferencesSkipTakeService = trackedReferencesSkipTakeService; _umbracoMapper = umbracoMapper; diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/MultipleTrackedReferencesController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ItemsTrackedReferenceController.cs similarity index 87% rename from src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/MultipleTrackedReferencesController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ItemsTrackedReferenceController.cs index 041d208915b4..39ad9c2560df 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/MultipleTrackedReferencesController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/ItemsTrackedReferenceController.cs @@ -7,14 +7,14 @@ using Umbraco.Cms.ManagementApi.ViewModels.TrackedReferences; using Umbraco.New.Cms.Core.Models; -namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences; +namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReference; -public class MultipleTrackedReferencesController : TrackedReferencesControllerBase +public class ItemsTrackedReferenceController : TrackedReferenceControllerBase { private readonly ITrackedReferencesService _trackedReferencesSkipTakeService; private readonly IUmbracoMapper _umbracoMapper; - public MultipleTrackedReferencesController(ITrackedReferencesService trackedReferencesSkipTakeService, IUmbracoMapper umbracoMapper) + public ItemsTrackedReferenceController(ITrackedReferencesService trackedReferencesSkipTakeService, IUmbracoMapper umbracoMapper) { _trackedReferencesSkipTakeService = trackedReferencesSkipTakeService; _umbracoMapper = umbracoMapper; @@ -27,7 +27,7 @@ public MultipleTrackedReferencesController(ITrackedReferencesService trackedRefe /// Used when bulk deleting content/media and bulk unpublishing content (delete and unpublish on List view). /// This is basically finding children of relations. /// - [HttpGet("multiple")] + [HttpGet("item")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] public async Task>> GetPagedReferencedItems([FromQuery]int[] ids, long skip, long take, bool? filterMustBeIsDependency) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/TrackedReferencesControllerBase.cs similarity index 77% rename from src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/TrackedReferencesControllerBase.cs index 811711c93625..f473976c80a2 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReferences/TrackedReferencesControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/TrackedReference/TrackedReferencesControllerBase.cs @@ -2,12 +2,12 @@ using NSwag.Annotations; using Umbraco.New.Cms.Web.Common.Routing; -namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences; +namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReference; [ApiController] [VersionedApiBackOfficeRoute("tracked-reference")] [OpenApiTag("Tracked Reference")] [ApiVersion("1.0")] -public abstract class TrackedReferencesControllerBase : ManagementApiControllerBase +public abstract class TrackedReferenceControllerBase : ManagementApiControllerBase { } From 63aacb9854c3d98868904a05c347d82e75a0724c Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Tue, 25 Oct 2022 15:09:52 +0200 Subject: [PATCH 11/15] Update OpenApi file --- src/Umbraco.Cms.ManagementApi/OpenApi.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index 37bfdc737e74..a89317f8fc22 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -82,7 +82,7 @@ ], "summary": "Gets a page list of the child nodes of the current item used in any kind of relation.", "description": "Used when deleting and unpublishing a single item to check if this item has any descending items that are in any\nkind of relation.\nThis is basically finding the descending items which are children in relations.", - "operationId": "DescendantsTrackedReferences_Descendants", + "operationId": "DescendantsTrackedReference_Descendants", "parameters": [ { "name": "parentId", @@ -143,7 +143,7 @@ ], "summary": "Gets a page list of tracked references for the current item, so you can see where an item is being used.", "description": "Used by info tabs on content, media etc. and for the delete and unpublish of single items.\nThis is basically finding parents of relations.", - "operationId": "ForItemTrackedReferences_Get", + "operationId": "ByIdTrackedReference_Get", "parameters": [ { "name": "id", @@ -197,14 +197,14 @@ } } }, - "/umbraco/management/api/v1/tracked-reference/multiple": { + "/umbraco/management/api/v1/tracked-reference/item": { "get": { "tags": [ "Tracked Reference" ], "summary": "Gets a page list of the items used in any kind of relation from selected integer ids.", "description": "Used when bulk deleting content/media and bulk unpublishing content (delete and unpublish on List view).\nThis is basically finding children of relations.", - "operationId": "MultipleTrackedReferences_GetPagedReferencedItems", + "operationId": "ItemsTrackedReference_GetPagedReferencedItems", "parameters": [ { "name": "ids", From ed4fb157cc39f9d0df32c7602009320393ba11d0 Mon Sep 17 00:00:00 2001 From: nikolajlauridsen Date: Tue, 25 Oct 2022 15:17:11 +0200 Subject: [PATCH 12/15] Return AnalyticsLevelViewModel instead of TelemetryLevel --- .../Analytics/AllAnalyticsController.cs | 9 +++++---- src/Umbraco.Cms.ManagementApi/OpenApi.json | 20 +++---------------- 2 files changed, 8 insertions(+), 21 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs index 780d6f90d397..cedbc6bb86cb 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Core.Models; +using Umbraco.Cms.ManagementApi.ViewModels.Analytics; using Umbraco.Cms.ManagementApi.ViewModels.Pagination; namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; @@ -9,14 +10,14 @@ public class AllAnalyticsController : AnalyticsControllerBase { [HttpGet("all")] [MapToApiVersion("1.0")] - [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task> GetAll(int skip, int take) + [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + public async Task> GetAll(int skip, int take) { TelemetryLevel[] levels = Enum.GetValues(); - return await Task.FromResult(new PagedViewModel + return await Task.FromResult(new PagedViewModel { Total = levels.Length, - Items = levels.Skip(skip).Take(take), + Items = levels.Skip(skip).Take(take).Select(x => new AnalyticsLevelViewModel { AnalyticsLevel = x }), }); } } diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index b821f26e2474..f1902c39e525 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -3845,7 +3845,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PagedViewModelOfTelemetryLevel" + "$ref": "#/components/schemas/PagedViewModelOfAnalyticsLevelViewModel" } } } @@ -5221,7 +5221,7 @@ } } }, - "PagedViewModelOfTelemetryLevel": { + "PagedViewModelOfAnalyticsLevelViewModel": { "type": "object", "additionalProperties": false, "properties": { @@ -5232,25 +5232,11 @@ "items": { "type": "array", "items": { - "$ref": "#/components/schemas/TelemetryLevel2" + "$ref": "#/components/schemas/AnalyticsLevelViewModel" } } } }, - "TelemetryLevel2": { - "type": "integer", - "description": "", - "x-enumNames": [ - "Minimal", - "Basic", - "Detailed" - ], - "enum": [ - 0, - 1, - 2 - ] - }, "AnalyticsLevelViewModel": { "type": "object", "additionalProperties": false, From 58fb6e9f15db0dc2b95166eddee2a00a75c3a962 Mon Sep 17 00:00:00 2001 From: Elitsa Marinovska Date: Wed, 26 Oct 2022 08:55:16 +0200 Subject: [PATCH 13/15] Rename Analytics* related types to Telemetry* --- .../Analytics/GetAnalyticsController.cs | 18 - .../AllTelemetryController.cs} | 4 +- .../Telemetry/GetTelemetryController.cs | 18 + .../SetTelemetryController.cs} | 19 +- .../TelemetryControllerBase.cs} | 4 +- src/Umbraco.Cms.ManagementApi/OpenApi.json | 316 +++++++++--------- .../Analytics/AnalyticsLevelViewModel.cs | 10 - .../Telemetry/TelemetryLevelViewModel.cs | 10 + 8 files changed, 199 insertions(+), 200 deletions(-) delete mode 100644 src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs rename src/Umbraco.Cms.ManagementApi/Controllers/{Analytics/AllAnalyticsController.cs => Telemetry/AllTelemetryController.cs} (83%) create mode 100644 src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/GetTelemetryController.cs rename src/Umbraco.Cms.ManagementApi/Controllers/{Analytics/SetAnalyticsController.cs => Telemetry/SetTelemetryController.cs} (53%) rename src/Umbraco.Cms.ManagementApi/Controllers/{Analytics/AnalyticsControllerBase.cs => Telemetry/TelemetryControllerBase.cs} (64%) delete mode 100644 src/Umbraco.Cms.ManagementApi/ViewModels/Analytics/AnalyticsLevelViewModel.cs create mode 100644 src/Umbraco.Cms.ManagementApi/ViewModels/Telemetry/TelemetryLevelViewModel.cs diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs deleted file mode 100644 index 20e1ea0813b8..000000000000 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/GetAnalyticsController.cs +++ /dev/null @@ -1,18 +0,0 @@ -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using Umbraco.Cms.Core.Services; -using Umbraco.Cms.ManagementApi.ViewModels.Analytics; - -namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; - -public class GetAnalyticsController : AnalyticsControllerBase -{ - private readonly IMetricsConsentService _metricsConsentService; - - public GetAnalyticsController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; - - [HttpGet("current")] - [MapToApiVersion("1.0")] - [ProducesResponseType(typeof(AnalyticsLevelViewModel), StatusCodes.Status200OK)] - public async Task Get() => await Task.FromResult(new AnalyticsLevelViewModel { AnalyticsLevel = _metricsConsentService.GetConsentLevel() }); -} diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs similarity index 83% rename from src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs index 68df5e637d6c..af38479a30c0 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AllAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs @@ -3,9 +3,9 @@ using Umbraco.Cms.Core.Models; using Umbraco.Cms.ManagementApi.ViewModels.Pagination; -namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; +namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry; -public class AllAnalyticsController : AnalyticsControllerBase +public class AllTelemetryController : TelemetryControllerBase { [HttpGet] [MapToApiVersion("1.0")] diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/GetTelemetryController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/GetTelemetryController.cs new file mode 100644 index 000000000000..2b17d4aadc5f --- /dev/null +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/GetTelemetryController.cs @@ -0,0 +1,18 @@ +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Umbraco.Cms.Core.Services; +using Umbraco.Cms.ManagementApi.ViewModels.Telemetry; + +namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry; + +public class GetTelemetryController : TelemetryControllerBase +{ + private readonly IMetricsConsentService _metricsConsentService; + + public GetTelemetryController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; + + [HttpGet("current")] + [MapToApiVersion("1.0")] + [ProducesResponseType(typeof(TelemetryLevelViewModel), StatusCodes.Status200OK)] + public async Task Get() => await Task.FromResult(new TelemetryLevelViewModel { TelemetryLevel = _metricsConsentService.GetConsentLevel() }); +} diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/SetTelemetryController.cs similarity index 53% rename from src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/SetTelemetryController.cs index 7dba6e0053db..105e69a374a7 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/SetTelemetryController.cs @@ -1,36 +1,35 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Core.Services; -using Umbraco.Cms.ManagementApi.ViewModels.Analytics; -using Umbraco.Cms.ManagementApi.ViewModels.Server; +using Umbraco.Cms.ManagementApi.ViewModels.Telemetry; -namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; +namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry; -public class SetAnalyticsController : AnalyticsControllerBase +public class SetTelemetryController : TelemetryControllerBase { private readonly IMetricsConsentService _metricsConsentService; - public SetAnalyticsController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; + public SetTelemetryController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService; [HttpPost("current")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status200OK)] - public async Task SetConsentLevel(AnalyticsLevelViewModel analyticsLevelViewModel) + public async Task SetConsentLevel(TelemetryLevelViewModel telemetryLevelViewModel) { - if (!Enum.IsDefined(analyticsLevelViewModel.AnalyticsLevel)) + if (!Enum.IsDefined(telemetryLevelViewModel.TelemetryLevel)) { var invalidModelProblem = new ProblemDetails { - Title = "Invalid AnalyticsLevel value", - Detail = "The provided value for AnalyticsLevel is not valid", + Title = "Invalid TelemetryLevel value", + Detail = "The provided value for TelemetryLevel is not valid", Status = StatusCodes.Status400BadRequest, Type = "Error", }; return BadRequest(invalidModelProblem); } - _metricsConsentService.SetConsentLevel(analyticsLevelViewModel.AnalyticsLevel); + _metricsConsentService.SetConsentLevel(telemetryLevelViewModel.TelemetryLevel); return await Task.FromResult(Ok()); } } diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/TelemetryControllerBase.cs similarity index 64% rename from src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs rename to src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/TelemetryControllerBase.cs index 658d2c00a6e8..b95e35a7e8e4 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Analytics/AnalyticsControllerBase.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/TelemetryControllerBase.cs @@ -2,12 +2,12 @@ using NSwag.Annotations; using Umbraco.New.Cms.Web.Common.Routing; -namespace Umbraco.Cms.ManagementApi.Controllers.Analytics; +namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry; [ApiController] [VersionedApiBackOfficeRoute("telemetry")] [OpenApiTag("Telemetry")] [ApiVersion("1.0")] -public abstract class AnalyticsControllerBase : ManagementApiControllerBase +public abstract class TelemetryControllerBase : ManagementApiControllerBase { } diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index a89317f8fc22..b6a9e5b00851 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -75,17 +75,17 @@ } } }, - "/umbraco/management/api/v1/tracked-reference/descendants/{parentId}": { + "/umbraco/management/api/v1/tracked-reference/{id}": { "get": { "tags": [ "Tracked Reference" ], - "summary": "Gets a page list of the child nodes of the current item used in any kind of relation.", - "description": "Used when deleting and unpublishing a single item to check if this item has any descending items that are in any\nkind of relation.\nThis is basically finding the descending items which are children in relations.", - "operationId": "DescendantsTrackedReference_Descendants", + "summary": "Gets a page list of tracked references for the current item, so you can see where an item is being used.", + "description": "Used by info tabs on content, media etc. and for the delete and unpublish of single items.\nThis is basically finding parents of relations.", + "operationId": "ByIdTrackedReference_Get", "parameters": [ { - "name": "parentId", + "name": "id", "in": "path", "required": true, "schema": { @@ -136,17 +136,17 @@ } } }, - "/umbraco/management/api/v1/tracked-reference/{id}": { + "/umbraco/management/api/v1/tracked-reference/descendants/{parentId}": { "get": { "tags": [ "Tracked Reference" ], - "summary": "Gets a page list of tracked references for the current item, so you can see where an item is being used.", - "description": "Used by info tabs on content, media etc. and for the delete and unpublish of single items.\nThis is basically finding parents of relations.", - "operationId": "ByIdTrackedReference_Get", + "summary": "Gets a page list of the child nodes of the current item used in any kind of relation.", + "description": "Used when deleting and unpublishing a single item to check if this item has any descending items that are in any\nkind of relation.\nThis is basically finding the descending items which are children in relations.", + "operationId": "DescendantsTrackedReference_Descendants", "parameters": [ { - "name": "id", + "name": "parentId", "in": "path", "required": true, "schema": { @@ -397,6 +397,99 @@ } } }, + "/umbraco/management/api/v1/telemetry": { + "get": { + "tags": [ + "Telemetry" + ], + "operationId": "AllTelemetry_GetAll", + "parameters": [ + { + "name": "skip", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-position": 1 + }, + { + "name": "take", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-position": 2 + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedViewModelOfTelemetryLevel" + } + } + } + } + } + } + }, + "/umbraco/management/api/v1/telemetry/current": { + "get": { + "tags": [ + "Telemetry" + ], + "operationId": "GetTelemetry_Get", + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TelemetryLevelViewModel" + } + } + } + } + } + }, + "post": { + "tags": [ + "Telemetry" + ], + "operationId": "SetTelemetry_SetConsentLevel", + "requestBody": { + "x-name": "telemetryLevelViewModel", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TelemetryLevelViewModel" + } + } + }, + "required": true, + "x-position": 1 + }, + "responses": { + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemDetails" + } + } + } + }, + "200": { + "description": "" + } + } + } + }, "/umbraco/management/api/v1/tree/stylesheet/children": { "get": { "tags": [ @@ -3812,99 +3905,6 @@ } } } - }, - "/umbraco/management/api/v1/telemetry": { - "get": { - "tags": [ - "Telemetry" - ], - "operationId": "AllAnalytics_GetAll", - "parameters": [ - { - "name": "skip", - "in": "query", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-position": 1 - }, - { - "name": "take", - "in": "query", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-position": 2 - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedViewModelOfTelemetryLevel" - } - } - } - } - } - } - }, - "/umbraco/management/api/v1/telemetry/current": { - "get": { - "tags": [ - "Telemetry" - ], - "operationId": "GetAnalytics_Get", - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnalyticsLevelViewModel" - } - } - } - } - } - }, - "post": { - "tags": [ - "Telemetry" - ], - "operationId": "SetAnalytics_SetConsentLevel", - "requestBody": { - "x-name": "analyticsLevelViewModel", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnalyticsLevelViewModel" - } - } - }, - "required": true, - "x-position": 1 - }, - "responses": { - "400": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemDetails" - } - } - } - }, - "200": { - "description": "" - } - } - } } }, "components": { @@ -4074,6 +4074,59 @@ } } }, + "PagedViewModelOfTelemetryLevel": { + "type": "object", + "additionalProperties": false, + "properties": { + "total": { + "type": "integer", + "format": "int64" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TelemetryLevel" + } + } + } + }, + "TelemetryLevel": { + "type": "integer", + "description": "", + "x-enumNames": [ + "Minimal", + "Basic", + "Detailed" + ], + "enum": [ + 0, + 1, + 2 + ] + }, + "TelemetryLevelViewModel": { + "type": "object", + "additionalProperties": false, + "properties": { + "telemetryLevel": { + "$ref": "#/components/schemas/TelemetryLevel2" + } + } + }, + "TelemetryLevel2": { + "type": "string", + "description": "", + "x-enumNames": [ + "Minimal", + "Basic", + "Detailed" + ], + "enum": [ + "Minimal", + "Basic", + "Detailed" + ] + }, "PagedViewModelOfFileSystemTreeItemViewModel": { "type": "object", "additionalProperties": false, @@ -4576,27 +4629,13 @@ "additionalProperties": false, "properties": { "level": { - "$ref": "#/components/schemas/TelemetryLevel" + "$ref": "#/components/schemas/TelemetryLevel2" }, "description": { "type": "string" } } }, - "TelemetryLevel": { - "type": "string", - "description": "", - "x-enumNames": [ - "Minimal", - "Basic", - "Detailed" - ], - "enum": [ - "Minimal", - "Basic", - "Detailed" - ] - }, "DatabaseSettingsViewModel": { "type": "object", "additionalProperties": false, @@ -4653,7 +4692,7 @@ "$ref": "#/components/schemas/DatabaseInstallViewModel" }, "telemetryLevel": { - "$ref": "#/components/schemas/TelemetryLevel" + "$ref": "#/components/schemas/TelemetryLevel2" } } }, @@ -5220,45 +5259,6 @@ "type": "string" } } - }, - "PagedViewModelOfTelemetryLevel": { - "type": "object", - "additionalProperties": false, - "properties": { - "total": { - "type": "integer", - "format": "int64" - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TelemetryLevel2" - } - } - } - }, - "TelemetryLevel2": { - "type": "integer", - "description": "", - "x-enumNames": [ - "Minimal", - "Basic", - "Detailed" - ], - "enum": [ - 0, - 1, - 2 - ] - }, - "AnalyticsLevelViewModel": { - "type": "object", - "additionalProperties": false, - "properties": { - "analyticsLevel": { - "$ref": "#/components/schemas/TelemetryLevel" - } - } } } }, diff --git a/src/Umbraco.Cms.ManagementApi/ViewModels/Analytics/AnalyticsLevelViewModel.cs b/src/Umbraco.Cms.ManagementApi/ViewModels/Analytics/AnalyticsLevelViewModel.cs deleted file mode 100644 index 73d442992ea9..000000000000 --- a/src/Umbraco.Cms.ManagementApi/ViewModels/Analytics/AnalyticsLevelViewModel.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Text.Json.Serialization; -using Umbraco.Cms.Core.Models; - -namespace Umbraco.Cms.ManagementApi.ViewModels.Analytics; - -public class AnalyticsLevelViewModel -{ - [JsonConverter(typeof(JsonStringEnumConverter))] - public TelemetryLevel AnalyticsLevel { get; set; } -} diff --git a/src/Umbraco.Cms.ManagementApi/ViewModels/Telemetry/TelemetryLevelViewModel.cs b/src/Umbraco.Cms.ManagementApi/ViewModels/Telemetry/TelemetryLevelViewModel.cs new file mode 100644 index 000000000000..d387be92e908 --- /dev/null +++ b/src/Umbraco.Cms.ManagementApi/ViewModels/Telemetry/TelemetryLevelViewModel.cs @@ -0,0 +1,10 @@ +using System.Text.Json.Serialization; +using Umbraco.Cms.Core.Models; + +namespace Umbraco.Cms.ManagementApi.ViewModels.Telemetry; + +public class TelemetryLevelViewModel +{ + [JsonConverter(typeof(JsonStringEnumConverter))] + public TelemetryLevel TelemetryLevel { get; set; } +} From 42e908dab06ec40dcebb20eb174a127bfda97657 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 26 Oct 2022 09:53:33 +0200 Subject: [PATCH 14/15] Update AllTelemetryController --- .../Controllers/Telemetry/AllTelemetryController.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs index 8984243771e0..43b226244075 100644 --- a/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs +++ b/src/Umbraco.Cms.ManagementApi/Controllers/Telemetry/AllTelemetryController.cs @@ -1,8 +1,8 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Core.Models; -using Umbraco.Cms.ManagementApi.ViewModels.Analytics; using Umbraco.Cms.ManagementApi.ViewModels.Pagination; +using Umbraco.Cms.ManagementApi.ViewModels.Telemetry; namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry; @@ -10,14 +10,14 @@ public class AllTelemetryController : TelemetryControllerBase { [HttpGet] [MapToApiVersion("1.0")] - [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - public async Task> GetAll(int skip, int take) + [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + public async Task> GetAll(int skip, int take) { TelemetryLevel[] levels = Enum.GetValues(); - return await Task.FromResult(new PagedViewModel + return await Task.FromResult(new PagedViewModel { Total = levels.Length, - Items = levels.Skip(skip).Take(take).Select(x => new AnalyticsLevelViewModel { AnalyticsLevel = x }), + Items = levels.Skip(skip).Take(take).Select(x => new TelemetryLevelViewModel { TelemetryLevel = x }), }); } } From ca889d4785e63e55f446897121fe5d1236308b1e Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 26 Oct 2022 09:55:34 +0200 Subject: [PATCH 15/15] Fix Schema --- src/Umbraco.Cms.ManagementApi/OpenApi.json | 26 +++++----------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/src/Umbraco.Cms.ManagementApi/OpenApi.json b/src/Umbraco.Cms.ManagementApi/OpenApi.json index b6a9e5b00851..7df33739f500 100644 --- a/src/Umbraco.Cms.ManagementApi/OpenApi.json +++ b/src/Umbraco.Cms.ManagementApi/OpenApi.json @@ -429,7 +429,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PagedViewModelOfTelemetryLevel" + "$ref": "#/components/schemas/PagedViewModelOfTelemetryLevelViewModel" } } } @@ -4085,35 +4085,21 @@ "items": { "type": "array", "items": { - "$ref": "#/components/schemas/TelemetryLevel" + "$ref": "#/components/schemas/TelemetryLevelViewModel" } } } }, - "TelemetryLevel": { - "type": "integer", - "description": "", - "x-enumNames": [ - "Minimal", - "Basic", - "Detailed" - ], - "enum": [ - 0, - 1, - 2 - ] - }, "TelemetryLevelViewModel": { "type": "object", "additionalProperties": false, "properties": { "telemetryLevel": { - "$ref": "#/components/schemas/TelemetryLevel2" + "$ref": "#/components/schemas/TelemetryLevel" } } }, - "TelemetryLevel2": { + "TelemetryLevel": { "type": "string", "description": "", "x-enumNames": [ @@ -4629,7 +4615,7 @@ "additionalProperties": false, "properties": { "level": { - "$ref": "#/components/schemas/TelemetryLevel2" + "$ref": "#/components/schemas/TelemetryLevel" }, "description": { "type": "string" @@ -4692,7 +4678,7 @@ "$ref": "#/components/schemas/DatabaseInstallViewModel" }, "telemetryLevel": { - "$ref": "#/components/schemas/TelemetryLevel2" + "$ref": "#/components/schemas/TelemetryLevel" } } },