diff --git a/src/Squidex.Domain.Apps.Core/Contents/NamedContentData.cs b/src/Squidex.Domain.Apps.Core/Contents/NamedContentData.cs index 70357875b..f9920fc72 100644 --- a/src/Squidex.Domain.Apps.Core/Contents/NamedContentData.cs +++ b/src/Squidex.Domain.Apps.Core/Contents/NamedContentData.cs @@ -90,7 +90,7 @@ namespace Squidex.Domain.Apps.Core.Contents return result; } - public NamedContentData ToApiModel(Schema schema, LanguagesConfig languagesConfig, IReadOnlyCollection languagePreferences = null, bool excludeHidden = true) + public NamedContentData ToApiModel(Schema schema, LanguagesConfig languagesConfig, bool excludeHidden = true) { Guard.NotNull(schema, nameof(schema)); Guard.NotNull(languagesConfig, nameof(languagesConfig)); diff --git a/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs b/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs index 9affee650..43e92f90f 100644 --- a/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs +++ b/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs @@ -13,7 +13,7 @@ using System.Threading.Tasks; namespace Squidex.Infrastructure.Log.Internal { - public class ConsoleLogProcessor : IDisposable + public class ConsoleLogProcessor : DisposableObjectBase { private readonly IConsole console; private const int MaxQueuedMessages = 1024; @@ -54,19 +54,23 @@ namespace Squidex.Infrastructure.Log.Internal processor.ProcessLogQueue(); } - public void Dispose() + protected override void DisposeObject(bool disposing) { - messageQueue.CompleteAdding(); - - try - { - outputTask.Wait(1500); - } - catch (TaskCanceledException) - { - } - catch (AggregateException ex) when (ex.InnerExceptions.Count == 1 && ex.InnerExceptions[0] is TaskCanceledException) + if (disposing) { + messageQueue.CompleteAdding(); + messageQueue.Dispose(); + + try + { + outputTask.Wait(1500); + } + catch (TaskCanceledException) + { + } + catch (AggregateException ex) when (ex.InnerExceptions.Count == 1 && ex.InnerExceptions[0] is TaskCanceledException) + { + } } } } diff --git a/src/Squidex.Infrastructure/Log/Internal/FileLogProcessor.cs b/src/Squidex.Infrastructure/Log/Internal/FileLogProcessor.cs index bf2993e7b..39c4314b0 100644 --- a/src/Squidex.Infrastructure/Log/Internal/FileLogProcessor.cs +++ b/src/Squidex.Infrastructure/Log/Internal/FileLogProcessor.cs @@ -83,7 +83,7 @@ namespace Squidex.Infrastructure.Log.Internal if (i == Retries) { - Console.WriteLine("Failed to write to log file '{0}': {1}", path, ex); + Console.WriteLine($"Failed to write to log file '{path}': {ex}"); } } } diff --git a/src/Squidex.Infrastructure/Timers/CompletionTimer.cs b/src/Squidex.Infrastructure/Timers/CompletionTimer.cs index 3c571558d..85ea7f6df 100644 --- a/src/Squidex.Infrastructure/Timers/CompletionTimer.cs +++ b/src/Squidex.Infrastructure/Timers/CompletionTimer.cs @@ -30,7 +30,7 @@ namespace Squidex.Infrastructure.Timers Guard.NotNull(callback, nameof(callback)); Guard.GreaterThan(delayInMs, 0, nameof(delayInMs)); - runTask = RunInternal(delayInMs, initialDelay, callback); + runTask = RunInternalAsync(delayInMs, initialDelay, callback); } public Task StopAsync() @@ -50,7 +50,7 @@ namespace Squidex.Infrastructure.Timers } } - private async Task RunInternal(int delay, int initialDelay, Func callback) + private async Task RunInternalAsync(int delay, int initialDelay, Func callback) { try { diff --git a/src/Squidex/Controllers/Api/Apps/AppClientsController.cs b/src/Squidex/Controllers/Api/Apps/AppClientsController.cs index 98364fc35..1afebd934 100644 --- a/src/Squidex/Controllers/Api/Apps/AppClientsController.cs +++ b/src/Squidex/Controllers/Api/Apps/AppClientsController.cs @@ -25,7 +25,7 @@ namespace Squidex.Controllers.Api.Apps [MustBeAppOwner] [ApiExceptionFilter] [AppApi] - [SwaggerTag("Apps")] + [SwaggerTag(nameof(Apps))] public sealed class AppClientsController : ControllerBase { public AppClientsController(ICommandBus commandBus) diff --git a/src/Squidex/Controllers/Api/Apps/AppContributorsController.cs b/src/Squidex/Controllers/Api/Apps/AppContributorsController.cs index e7c1251b8..b752bbe6b 100644 --- a/src/Squidex/Controllers/Api/Apps/AppContributorsController.cs +++ b/src/Squidex/Controllers/Api/Apps/AppContributorsController.cs @@ -26,7 +26,7 @@ namespace Squidex.Controllers.Api.Apps [MustBeAppOwner] [ApiExceptionFilter] [AppApi] - [SwaggerTag("Apps")] + [SwaggerTag(nameof(Apps))] public sealed class AppContributorsController : ControllerBase { private readonly IAppPlansProvider appPlansProvider; diff --git a/src/Squidex/Controllers/Api/Apps/AppLanguagesController.cs b/src/Squidex/Controllers/Api/Apps/AppLanguagesController.cs index 86c5b7d01..5c4e4f891 100644 --- a/src/Squidex/Controllers/Api/Apps/AppLanguagesController.cs +++ b/src/Squidex/Controllers/Api/Apps/AppLanguagesController.cs @@ -28,7 +28,7 @@ namespace Squidex.Controllers.Api.Apps /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Apps")] + [SwaggerTag(nameof(Apps))] public sealed class AppLanguagesController : ControllerBase { public AppLanguagesController(ICommandBus commandBus) diff --git a/src/Squidex/Controllers/Api/Apps/AppsController.cs b/src/Squidex/Controllers/Api/Apps/AppsController.cs index 5fdf1c88c..363e81a0f 100644 --- a/src/Squidex/Controllers/Api/Apps/AppsController.cs +++ b/src/Squidex/Controllers/Api/Apps/AppsController.cs @@ -27,7 +27,7 @@ namespace Squidex.Controllers.Api.Apps /// [Authorize] [ApiExceptionFilter] - [SwaggerTag("Apps")] + [SwaggerTag(nameof(Apps))] public sealed class AppsController : ControllerBase { private readonly IAppRepository appRepository; diff --git a/src/Squidex/Controllers/Api/Assets/AssetContentController.cs b/src/Squidex/Controllers/Api/Assets/AssetContentController.cs index 088ec9b6f..cbe552ec8 100644 --- a/src/Squidex/Controllers/Api/Assets/AssetContentController.cs +++ b/src/Squidex/Controllers/Api/Assets/AssetContentController.cs @@ -25,7 +25,7 @@ namespace Squidex.Controllers.Api.Assets /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Assets")] + [SwaggerTag(nameof(Assets))] public sealed class AssetContentController : ControllerBase { private readonly IAssetStore assetStorage; diff --git a/src/Squidex/Controllers/Api/Assets/AssetsController.cs b/src/Squidex/Controllers/Api/Assets/AssetsController.cs index 245ab471b..dffb38a8c 100644 --- a/src/Squidex/Controllers/Api/Assets/AssetsController.cs +++ b/src/Squidex/Controllers/Api/Assets/AssetsController.cs @@ -35,7 +35,7 @@ namespace Squidex.Controllers.Api.Assets /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Assets")] + [SwaggerTag(nameof(Assets))] public sealed class AssetsController : ControllerBase { private readonly IAssetRepository assetRepository; diff --git a/src/Squidex/Controllers/Api/History/HistoryController.cs b/src/Squidex/Controllers/Api/History/HistoryController.cs index f7f2a2781..b3f8996ec 100644 --- a/src/Squidex/Controllers/Api/History/HistoryController.cs +++ b/src/Squidex/Controllers/Api/History/HistoryController.cs @@ -24,7 +24,7 @@ namespace Squidex.Controllers.Api.History [MustBeAppEditor] [ApiExceptionFilter] [AppApi] - [SwaggerTag("History")] + [SwaggerTag(nameof(History))] public sealed class HistoryController : ControllerBase { private readonly IHistoryEventRepository historyEventRepository; diff --git a/src/Squidex/Controllers/Api/Languages/LanguagesController.cs b/src/Squidex/Controllers/Api/Languages/LanguagesController.cs index 610c22a1b..aac500468 100644 --- a/src/Squidex/Controllers/Api/Languages/LanguagesController.cs +++ b/src/Squidex/Controllers/Api/Languages/LanguagesController.cs @@ -21,7 +21,7 @@ namespace Squidex.Controllers.Api.Languages /// [Authorize] [ApiExceptionFilter] - [SwaggerTag("Languages")] + [SwaggerTag(nameof(Languages))] public sealed class LanguagesController : Controller { /// diff --git a/src/Squidex/Controllers/Api/Ping/PingController.cs b/src/Squidex/Controllers/Api/Ping/PingController.cs index 01fb8f789..004d9b621 100644 --- a/src/Squidex/Controllers/Api/Ping/PingController.cs +++ b/src/Squidex/Controllers/Api/Ping/PingController.cs @@ -18,7 +18,7 @@ namespace Squidex.Controllers.Api.Ping [MustBeAppReader] [ApiExceptionFilter] [AppApi] - [SwaggerTag("Ping")] + [SwaggerTag(nameof(Ping))] public sealed class PingController : Controller { /// diff --git a/src/Squidex/Controllers/Api/Plans/AppPlansController.cs b/src/Squidex/Controllers/Api/Plans/AppPlansController.cs index 6df93786c..61dfa6b40 100644 --- a/src/Squidex/Controllers/Api/Plans/AppPlansController.cs +++ b/src/Squidex/Controllers/Api/Plans/AppPlansController.cs @@ -27,7 +27,7 @@ namespace Squidex.Controllers.Api.Plans /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Plans")] + [SwaggerTag(nameof(Plans))] public sealed class AppPlansController : ControllerBase { private readonly IAppPlansProvider appPlansProvider; diff --git a/src/Squidex/Controllers/Api/Schemas/SchemaFieldsController.cs b/src/Squidex/Controllers/Api/Schemas/SchemaFieldsController.cs index 386f1005e..de164be3b 100644 --- a/src/Squidex/Controllers/Api/Schemas/SchemaFieldsController.cs +++ b/src/Squidex/Controllers/Api/Schemas/SchemaFieldsController.cs @@ -22,7 +22,7 @@ namespace Squidex.Controllers.Api.Schemas [MustBeAppDeveloper] [ApiExceptionFilter] [AppApi] - [SwaggerTag("Schemas")] + [SwaggerTag(nameof(Schemas))] public sealed class SchemaFieldsController : ControllerBase { public SchemaFieldsController(ICommandBus commandBus) diff --git a/src/Squidex/Controllers/Api/Schemas/SchemasController.cs b/src/Squidex/Controllers/Api/Schemas/SchemasController.cs index b933d0090..916706ffd 100644 --- a/src/Squidex/Controllers/Api/Schemas/SchemasController.cs +++ b/src/Squidex/Controllers/Api/Schemas/SchemasController.cs @@ -29,7 +29,7 @@ namespace Squidex.Controllers.Api.Schemas /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Schemas")] + [SwaggerTag(nameof(Schemas))] public sealed class SchemasController : ControllerBase { private readonly ISchemaRepository schemaRepository; diff --git a/src/Squidex/Controllers/Api/Statistics/UsagesController.cs b/src/Squidex/Controllers/Api/Statistics/UsagesController.cs index b36837b2a..d8d64abd2 100644 --- a/src/Squidex/Controllers/Api/Statistics/UsagesController.cs +++ b/src/Squidex/Controllers/Api/Statistics/UsagesController.cs @@ -26,7 +26,7 @@ namespace Squidex.Controllers.Api.Statistics [MustBeAppEditor] [ApiExceptionFilter] [AppApi] - [SwaggerTag("Statistics")] + [SwaggerTag(nameof(Statistics))] public sealed class UsagesController : ControllerBase { private readonly IUsageTracker usageTracker; diff --git a/src/Squidex/Controllers/Api/UI/UIController.cs b/src/Squidex/Controllers/Api/UI/UIController.cs index 71b1a3c85..c94b4450a 100644 --- a/src/Squidex/Controllers/Api/UI/UIController.cs +++ b/src/Squidex/Controllers/Api/UI/UIController.cs @@ -21,7 +21,7 @@ namespace Squidex.Controllers.Api.UI /// Manages ui settings and configs. /// [ApiExceptionFilter] - [SwaggerTag("UI")] + [SwaggerTag(nameof(UI))] public sealed class UIController : Controller { private readonly MyUIOptions uiOptions; diff --git a/src/Squidex/Controllers/Api/Users/UsersController.cs b/src/Squidex/Controllers/Api/Users/UsersController.cs index 4f6bc080d..6b44f3d61 100644 --- a/src/Squidex/Controllers/Api/Users/UsersController.cs +++ b/src/Squidex/Controllers/Api/Users/UsersController.cs @@ -29,7 +29,7 @@ namespace Squidex.Controllers.Api.Users /// Readonly API to retrieve information about squidex users. /// [ApiExceptionFilter] - [SwaggerTag("Users")] + [SwaggerTag(nameof(Users))] public sealed class UsersController : Controller { private static readonly byte[] AvatarBytes; diff --git a/src/Squidex/Controllers/Api/Webhooks/WebhooksController.cs b/src/Squidex/Controllers/Api/Webhooks/WebhooksController.cs index 19f152f11..2bcbc2faf 100644 --- a/src/Squidex/Controllers/Api/Webhooks/WebhooksController.cs +++ b/src/Squidex/Controllers/Api/Webhooks/WebhooksController.cs @@ -27,7 +27,7 @@ namespace Squidex.Controllers.Api.Webhooks /// [ApiExceptionFilter] [AppApi] - [SwaggerTag("Webhooks")] + [SwaggerTag(nameof(Webhooks))] [MustBeAppDeveloper] public sealed class WebhooksController : ControllerBase { diff --git a/src/Squidex/Controllers/ContentApi/ContentsController.cs b/src/Squidex/Controllers/ContentApi/ContentsController.cs index 1a980ce48..85b176b13 100644 --- a/src/Squidex/Controllers/ContentApi/ContentsController.cs +++ b/src/Squidex/Controllers/ContentApi/ContentsController.cs @@ -96,7 +96,7 @@ namespace Squidex.Controllers.ContentApi if (item.Data != null) { - itemModel.Data = item.Data.ToApiModel(contents.Schema.SchemaDef, App.LanguagesConfig, null, !isFrontendClient); + itemModel.Data = item.Data.ToApiModel(contents.Schema.SchemaDef, App.LanguagesConfig, !isFrontendClient); } return itemModel; @@ -120,7 +120,7 @@ namespace Squidex.Controllers.ContentApi { var isFrontendClient = User.IsFrontendClient(); - response.Data = content.Content.Data.ToApiModel(content.Schema.SchemaDef, App.LanguagesConfig, null, !isFrontendClient); + response.Data = content.Content.Data.ToApiModel(content.Schema.SchemaDef, App.LanguagesConfig, !isFrontendClient); } Response.Headers["ETag"] = new StringValues(content.Content.Version.ToString()); diff --git a/src/Squidex/Controllers/UI/Profile/ProfileController.cs b/src/Squidex/Controllers/UI/Profile/ProfileController.cs index c065d6bf4..7a605e673 100644 --- a/src/Squidex/Controllers/UI/Profile/ProfileController.cs +++ b/src/Squidex/Controllers/UI/Profile/ProfileController.cs @@ -76,7 +76,7 @@ namespace Squidex.Controllers.UI.Profile [HttpGet] [Route("/account/profile/login-add-callback/")] - public Task AddLoginCallback(string remoteError = null) + public Task AddLoginCallback() { return MakeChangeAsync(async user => {