Browse Source

Fixes suggested by NDepend

pull/1/head
Sebastian 9 years ago
parent
commit
dc4b8dad5b
  1. 6
      src/Squidex.Core/Schemas/CloneableBase.cs
  2. 3
      src/Squidex.Core/Schemas/Field.cs
  3. 2
      src/Squidex.Core/Schemas/FieldProperties.cs
  4. 4
      src/Squidex.Core/Schemas/NamedElementPropertiesBase.cs
  5. 2
      src/Squidex.Core/Schemas/Schema.cs
  6. 2
      src/Squidex.Core/Schemas/SchemaProperties.cs
  7. 2
      src/Squidex.Core/Schemas/Validators/IValidator.cs
  8. 2
      src/Squidex.Events/SquidexEvent.cs
  9. 25
      src/Squidex.Infrastructure.MongoDb/InstantSerializer.cs
  10. 25
      src/Squidex.Infrastructure.MongoDb/RefTokenSerializer.cs
  11. 1
      src/Squidex.Infrastructure/CQRS/Commands/AggregateHandler.cs
  12. 4
      src/Squidex.Infrastructure/CQRS/DomainObjectBase.cs
  13. 2
      src/Squidex.Infrastructure/CQRS/Events/CommonHeaders.cs
  14. 2
      src/Squidex.Infrastructure/CQRS/Events/DefaultMemoryEventNotifier.cs
  15. 2
      src/Squidex.Infrastructure/CQRS/Events/Envelope.cs
  16. 2
      src/Squidex.Infrastructure/CQRS/Events/EnvelopeExtensions.cs
  17. 3
      src/Squidex.Infrastructure/CQRS/Events/EnvelopeHeaders.cs
  18. 2
      src/Squidex.Infrastructure/CQRS/Events/EventReceiver.cs
  19. 4
      src/Squidex.Infrastructure/DisposableObjectBase.cs
  20. 2
      src/Squidex.Infrastructure/Language.cs
  21. 4
      src/Squidex.Infrastructure/Languages.cs
  22. 2
      src/Squidex.Infrastructure/Timers/CompletionTimer.cs
  23. 1
      src/Squidex.Read.MongoDb/Apps/MongoAppRepository_EventHandling.cs
  24. 1
      src/Squidex.Read.MongoDb/Contents/MongoContentRepository_EventHandling.cs
  25. 1
      src/Squidex.Read.MongoDb/History/MongoHistoryEventRepository.cs
  26. 1
      src/Squidex.Read.MongoDb/Schemas/MongoSchemaRepository_EventHandling.cs
  27. 2
      src/Squidex.Read.MongoDb/Utils/EntityMapper.cs
  28. 2
      src/Squidex.Read.MongoDb/Utils/MongoCollectionExtensions.cs
  29. 1
      src/Squidex.Read/Apps/AppHistoryEventsCreator.cs
  30. 2
      src/Squidex.Read/Apps/Services/Implementations/CachingAppProvider.cs
  31. 2
      src/Squidex.Read/Contents/Builders/EdmModelBuilder.cs
  32. 1
      src/Squidex.Read/Contents/ContentHistoryEventsCreator.cs
  33. 1
      src/Squidex.Read/History/HistoryEventsCreatorBase.cs
  34. 1
      src/Squidex.Read/History/IHistoryEventsCreator.cs
  35. 1
      src/Squidex.Read/Schemas/SchemaHistoryEventsCreator.cs
  36. 2
      src/Squidex.Read/Schemas/Services/Implementations/CachingSchemaProvider.cs
  37. 6
      src/Squidex.Read/Utils/CachingProviderBase.cs
  38. 2
      src/Squidex.Write/Apps/AppDomainObject.cs
  39. 2
      src/Squidex.Write/Contents/ContentDomainObject.cs
  40. 2
      src/Squidex.Write/Schemas/SchemaDomainObject.cs
  41. 2
      src/Squidex/Controllers/ContentApi/PingController.cs
  42. 5
      src/Squidex/Controllers/ControllerBase.cs
  43. 2
      src/Squidex/Pipeline/ApiExceptionFilterAttribute.cs
  44. 1
      src/Squidex/Pipeline/AppFilterAttribute.cs
  45. 2
      src/Squidex/Pipeline/RandomErrorAttribute.cs
  46. 2
      tests/Squidex.Infrastructure.Tests/CQRS/Commands/AggregateHandlerTests.cs
  47. 2
      tests/Squidex.Infrastructure.Tests/CQRS/Commands/DefaultDomainObjectFactoryTests.cs
  48. 2
      tests/Squidex.Infrastructure.Tests/CQRS/Commands/DefaultDomainObjectRepositoryTests.cs
  49. 6
      tests/Squidex.Infrastructure.Tests/CQRS/DomainObjectBaseTests.cs
  50. 4
      tests/Squidex.Infrastructure.Tests/CQRS/Events/DefaultNameResolverTests.cs
  51. 2
      tests/Squidex.Infrastructure.Tests/CQRS/Events/EnvelopeExtensionsTests.cs
  52. 2
      tests/Squidex.Infrastructure.Tests/CQRS/Events/EnvelopeHeaderTests.cs
  53. 6
      tests/Squidex.Infrastructure.Tests/DisposableObjectBaseTests.cs
  54. 4
      tests/Squidex.Infrastructure.Tests/LanguageTests.cs
  55. 1
      tests/Squidex.Write.Tests/TestHelpers/AssertHelper.cs
  56. 2
      tests/Squidex.Write.Tests/TestHelpers/HandlerTestBase.cs
  57. 4
      tools/GenerateLanguages/Program.cs

6
src/Squidex.Core/Schemas/Cloneable.cs → src/Squidex.Core/Schemas/CloneableBase.cs

@ -1,5 +1,5 @@
// ==========================================================================
// Cloneable.cs
// CloneableBase.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -10,9 +10,9 @@ using System;
namespace Squidex.Core.Schemas
{
public abstract class Cloneable
public abstract class CloneableBase
{
protected T Clone<T>(Action<T> updater) where T : Cloneable
protected T Clone<T>(Action<T> updater) where T : CloneableBase
{
var clone = (T)MemberwiseClone();

3
src/Squidex.Core/Schemas/Field.cs

@ -14,6 +14,7 @@ using Microsoft.OData.Edm.Library;
using Newtonsoft.Json.Linq;
using NJsonSchema;
using Squidex.Core.Contents;
using Squidex.Core.Schemas.Validators;
using Squidex.Infrastructure;
// ReSharper disable InvertIf
@ -22,7 +23,7 @@ using Squidex.Infrastructure;
namespace Squidex.Core.Schemas
{
public abstract class Field : Cloneable
public abstract class Field : CloneableBase
{
private readonly Lazy<List<IValidator>> validators;
private readonly long id;

2
src/Squidex.Core/Schemas/FieldProperties.cs

@ -12,7 +12,7 @@ using Squidex.Infrastructure;
namespace Squidex.Core.Schemas
{
public abstract class FieldProperties : NamedElementProperties, IValidatable
public abstract class FieldProperties : NamedElementPropertiesBase, IValidatable
{
private bool isRequired;
private bool isLocalizable;

4
src/Squidex.Core/Schemas/NamedElementProperties.cs → src/Squidex.Core/Schemas/NamedElementPropertiesBase.cs

@ -1,5 +1,5 @@
// ==========================================================================
// NamedElementProperties.cs
// NamedElementPropertiesBase.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -10,7 +10,7 @@ using System;
namespace Squidex.Core.Schemas
{
public abstract class NamedElementProperties
public abstract class NamedElementPropertiesBase
{
private string label;
private string hints;

2
src/Squidex.Core/Schemas/Schema.cs

@ -22,7 +22,7 @@ using Squidex.Infrastructure;
namespace Squidex.Core.Schemas
{
public sealed class Schema : Cloneable
public sealed class Schema : CloneableBase
{
private readonly string name;
private readonly SchemaProperties properties;

2
src/Squidex.Core/Schemas/SchemaProperties.cs

@ -8,7 +8,7 @@
namespace Squidex.Core.Schemas
{
public sealed class SchemaProperties : NamedElementProperties
public sealed class SchemaProperties : NamedElementPropertiesBase
{
}
}

2
src/Squidex.Core/Schemas/IValidator.cs → src/Squidex.Core/Schemas/Validators/IValidator.cs

@ -9,7 +9,7 @@
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Squidex.Core.Schemas
namespace Squidex.Core.Schemas.Validators
{
public interface IValidator
{

2
src/Squidex.Events/SquidexEvent.cs

@ -1,5 +1,5 @@
// ==========================================================================
// SquidexEvent.cs
// SquidexEventBase.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group

25
src/Squidex.Infrastructure.MongoDb/InstantSerializer.cs

@ -9,6 +9,7 @@
using MongoDB.Bson.Serialization;
using MongoDB.Bson.Serialization.Serializers;
using NodaTime;
using System;
// ReSharper disable InvertIf
@ -16,26 +17,16 @@ namespace Squidex.Infrastructure.MongoDb
{
public sealed class InstantSerializer : SerializerBase<Instant>, IBsonPolymorphicSerializer
{
private static bool isRegistered;
private static readonly object LockObject = new object();
private static readonly Lazy<bool> Registerer = new Lazy<bool>(() =>
{
BsonSerializer.RegisterSerializer(new InstantSerializer());
return true;
});
public static bool Register()
{
if (!isRegistered)
{
lock (LockObject)
{
if (!isRegistered)
{
BsonSerializer.RegisterSerializer(new InstantSerializer());
isRegistered = true;
return true;
}
}
}
return false;
return !Registerer.IsValueCreated && Registerer.Value;
}
public bool IsDiscriminatorCompatibleWithObjectSerializer

25
src/Squidex.Infrastructure.MongoDb/RefTokenSerializer.cs

@ -6,6 +6,7 @@
// All rights reserved.
// ==========================================================================
using System;
using MongoDB.Bson.Serialization;
using MongoDB.Bson.Serialization.Serializers;
@ -15,26 +16,16 @@ namespace Squidex.Infrastructure.MongoDb
{
public class RefTokenSerializer : SerializerBase<RefToken>
{
private static bool isRegistered;
private static readonly object LockObject = new object();
private static readonly Lazy<bool> Registerer = new Lazy<bool>(() =>
{
BsonSerializer.RegisterSerializer(new RefTokenSerializer());
return true;
});
public static bool Register()
{
if (!isRegistered)
{
lock (LockObject)
{
if (!isRegistered)
{
BsonSerializer.RegisterSerializer(new RefTokenSerializer());
isRegistered = true;
return true;
}
}
}
return false;
return !Registerer.IsValueCreated && Registerer.Value;
}
public override RefToken Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)

1
src/Squidex.Infrastructure/CQRS/Commands/AggregateHandler.cs

@ -8,6 +8,7 @@
using System;
using System.Threading.Tasks;
using Squidex.Infrastructure.CQRS.Events;
namespace Squidex.Infrastructure.CQRS.Commands
{

4
src/Squidex.Infrastructure/CQRS/DomainObject.cs → src/Squidex.Infrastructure/CQRS/DomainObjectBase.cs

@ -12,7 +12,7 @@ using Squidex.Infrastructure.CQRS.Events;
namespace Squidex.Infrastructure.CQRS
{
public abstract class DomainObject : IAggregate, IEquatable<IAggregate>
public abstract class DomainObjectBase : IAggregate, IEquatable<IAggregate>
{
private readonly List<Envelope<IEvent>> uncomittedEvents = new List<Envelope<IEvent>>();
private readonly Guid id;
@ -28,7 +28,7 @@ namespace Squidex.Infrastructure.CQRS
get { return id; }
}
protected DomainObject(Guid id, int version)
protected DomainObjectBase(Guid id, int version)
{
Guard.NotEmpty(id, nameof(id));
Guard.GreaterEquals(version, -1, nameof(version));

2
src/Squidex.Infrastructure/CQRS/CommonHeaders.cs → src/Squidex.Infrastructure/CQRS/Events/CommonHeaders.cs

@ -6,7 +6,7 @@
// All rights reserved.
// ==========================================================================
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public sealed class CommonHeaders
{

2
src/Squidex.Infrastructure/CQRS/Events/DefaultMemoryEventNotifier.cs

@ -12,7 +12,7 @@ namespace Squidex.Infrastructure.CQRS.Events
{
public sealed class DefaultMemoryEventNotifier : IEventNotifier
{
private readonly string ChannelName = typeof(DefaultMemoryEventNotifier).Name;
private static readonly string ChannelName = typeof(DefaultMemoryEventNotifier).Name;
private readonly IPubSub invalidator;

2
src/Squidex.Infrastructure/CQRS/Envelope.cs → src/Squidex.Infrastructure/CQRS/Events/Envelope.cs

@ -9,7 +9,7 @@
using System;
using NodaTime;
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public class Envelope<TPayload> where TPayload : class
{

2
src/Squidex.Infrastructure/CQRS/EnvelopeExtensions.cs → src/Squidex.Infrastructure/CQRS/Events/EnvelopeExtensions.cs

@ -10,7 +10,7 @@ using System;
using System.Globalization;
using NodaTime;
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public static class EnvelopeExtensions
{

3
src/Squidex.Infrastructure/CQRS/EnvelopeHeaders.cs → src/Squidex.Infrastructure/CQRS/Events/EnvelopeHeaders.cs

@ -5,7 +5,8 @@
// Copyright (c) Squidex Group
// All rights reserved.
// ==========================================================================
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public sealed class EnvelopeHeaders : PropertiesBag
{

2
src/Squidex.Infrastructure/CQRS/Events/EventReceiver.cs

@ -18,7 +18,7 @@ using Squidex.Infrastructure.Timers;
namespace Squidex.Infrastructure.CQRS.Events
{
public sealed class EventReceiver : DisposableObject
public sealed class EventReceiver : DisposableObjectBase
{
private readonly EventDataFormatter formatter;
private readonly IEventStore eventStore;

4
src/Squidex.Infrastructure/DisposableObject.cs → src/Squidex.Infrastructure/DisposableObjectBase.cs

@ -1,5 +1,5 @@
// ==========================================================================
// EnumExtensions.cs
// DisposableObjectBase.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -10,7 +10,7 @@ using System;
namespace Squidex.Infrastructure
{
public abstract class DisposableObject : IDisposable
public abstract class DisposableObjectBase : IDisposable
{
private readonly object disposeLock = new object();
private bool isDisposed;

2
src/Squidex.Infrastructure/Language.cs

@ -82,7 +82,7 @@ namespace Squidex.Infrastructure
return allLanguages.TryGetValue(iso2Code, out language);
}
public static Language TryParse(string input)
public static Language ParseOrNull(string input)
{
if (string.IsNullOrWhiteSpace(input))
{

4
src/Squidex.Infrastructure/Languages.cs

@ -5,9 +5,13 @@
// Copyright (c) Squidex Group
// All rights reserved.
// ==========================================================================
// <autogenerated/>
using System.CodeDom.Compiler;
namespace Squidex.Infrastructure
{
[GeneratedCode("LanguagesGenerator", "1.0")]
partial class Language
{
public static readonly Language AA = AddLanguage("aa", "Afar");

2
src/Squidex.Infrastructure/Timers/CompletionTimer.cs

@ -14,7 +14,7 @@ using System.Threading.Tasks;
namespace Squidex.Infrastructure.Timers
{
public sealed class CompletionTimer : DisposableObject
public sealed class CompletionTimer : DisposableObjectBase
{
private readonly CancellationTokenSource disposeToken = new CancellationTokenSource();
private readonly Task runTask;

1
src/Squidex.Read.MongoDb/Apps/MongoAppRepository_EventHandling.cs

@ -11,7 +11,6 @@ using System.Threading.Tasks;
using Squidex.Events;
using Squidex.Events.Apps;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.Dispatching;
using Squidex.Infrastructure.Reflection;

1
src/Squidex.Read.MongoDb/Contents/MongoContentRepository_EventHandling.cs

@ -12,7 +12,6 @@ using MongoDB.Bson;
using MongoDB.Driver;
using Squidex.Events.Contents;
using Squidex.Events.Schemas;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.Dispatching;
using Squidex.Infrastructure.Reflection;

1
src/Squidex.Read.MongoDb/History/MongoHistoryEventRepository.cs

@ -13,7 +13,6 @@ using System.Threading;
using System.Threading.Tasks;
using MongoDB.Driver;
using Squidex.Events;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.MongoDb;
using Squidex.Read.History;

1
src/Squidex.Read.MongoDb/Schemas/MongoSchemaRepository_EventHandling.cs

@ -14,7 +14,6 @@ using Squidex.Events;
using Squidex.Events.Schemas;
using Squidex.Events.Schemas.Utils;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.Dispatching;
using Squidex.Infrastructure.Reflection;

2
src/Squidex.Read.MongoDb/Utils/EntityMapper.cs

@ -7,7 +7,7 @@
// ==========================================================================
using Squidex.Events;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.MongoDb;
// ReSharper disable ConvertIfStatementToConditionalTernaryExpression

2
src/Squidex.Read.MongoDb/Utils/MongoCollectionExtensions.cs

@ -11,7 +11,7 @@ using System.Threading.Tasks;
using MongoDB.Driver;
using Squidex.Events;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.MongoDb;
namespace Squidex.Read.MongoDb.Utils

1
src/Squidex.Read/Apps/AppHistoryEventsCreator.cs

@ -9,7 +9,6 @@
using System.Threading.Tasks;
using Squidex.Events.Apps;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Infrastructure.Dispatching;
using Squidex.Read.History;

2
src/Squidex.Read/Apps/Services/Implementations/CachingAppProvider.cs

@ -18,7 +18,7 @@ using Squidex.Read.Utils;
namespace Squidex.Read.Apps.Services.Implementations
{
public class CachingAppProvider : CachingProvider, IAppProvider
public class CachingAppProvider : CachingProviderBase, IAppProvider
{
private static readonly TimeSpan CacheDuration = TimeSpan.FromMinutes(30);
private readonly IAppRepository repository;

2
src/Squidex.Read/Contents/Builders/EdmModelBuilder.cs

@ -19,7 +19,7 @@ using Squidex.Read.Utils;
namespace Squidex.Read.Contents.Builders
{
public sealed class EdmModelBuilder : CachingProvider
public sealed class EdmModelBuilder : CachingProviderBase
{
public EdmModelBuilder(IMemoryCache cache)
: base(cache)

1
src/Squidex.Read/Contents/ContentHistoryEventsCreator.cs

@ -9,7 +9,6 @@
using System.Threading.Tasks;
using Squidex.Events.Contents;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Read.History;

1
src/Squidex.Read/History/HistoryEventsCreatorBase.cs

@ -9,7 +9,6 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
// ReSharper disable ConvertIfStatementToReturnStatement

1
src/Squidex.Read/History/IHistoryEventsCreator.cs

@ -8,7 +8,6 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
namespace Squidex.Read.History

1
src/Squidex.Read/Schemas/SchemaHistoryEventsCreator.cs

@ -10,7 +10,6 @@ using System.Threading.Tasks;
using Squidex.Events;
using Squidex.Events.Schemas;
using Squidex.Infrastructure;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
using Squidex.Read.History;

2
src/Squidex.Read/Schemas/Services/Implementations/CachingSchemaProvider.cs

@ -19,7 +19,7 @@ using Squidex.Read.Utils;
namespace Squidex.Read.Schemas.Services.Implementations
{
public class CachingSchemaProvider : CachingProvider, ISchemaProvider
public class CachingSchemaProvider : CachingProviderBase, ISchemaProvider
{
private static readonly TimeSpan CacheDuration = TimeSpan.FromMinutes(10);
private readonly ISchemaRepository repository;

6
src/Squidex.Read/Utils/CachingProvider.cs → src/Squidex.Read/Utils/CachingProviderBase.cs

@ -1,5 +1,5 @@
// ==========================================================================
// CachingProvider.cs
// CachingProviderBase.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -11,7 +11,7 @@ using Squidex.Infrastructure;
namespace Squidex.Read.Utils
{
public abstract class CachingProvider
public abstract class CachingProviderBase
{
private readonly IMemoryCache cache;
@ -20,7 +20,7 @@ namespace Squidex.Read.Utils
get { return cache; }
}
protected CachingProvider(IMemoryCache cache)
protected CachingProviderBase(IMemoryCache cache)
{
Guard.NotNull(cache, nameof(cache));

2
src/Squidex.Write/Apps/AppDomainObject.cs

@ -22,7 +22,7 @@ using Squidex.Write.Apps.Commands;
namespace Squidex.Write.Apps
{
public class AppDomainObject : DomainObject
public class AppDomainObject : DomainObjectBase
{
private static readonly Language DefaultLanguage = Language.EN;
private readonly AppContributors contributors = new AppContributors();

2
src/Squidex.Write/Contents/ContentDomainObject.cs

@ -18,7 +18,7 @@ using Squidex.Write.Contents.Commands;
namespace Squidex.Write.Contents
{
public class ContentDomainObject : DomainObject
public class ContentDomainObject : DomainObjectBase
{
private bool isDeleted;
private bool isCreated;

2
src/Squidex.Write/Schemas/SchemaDomainObject.cs

@ -19,7 +19,7 @@ using Squidex.Write.Schemas.Commands;
namespace Squidex.Write.Schemas
{
public class SchemaDomainObject : DomainObject
public class SchemaDomainObject : DomainObjectBase
{
private readonly FieldRegistry registry;
private bool isDeleted;

2
src/Squidex/Controllers/ContentApi/PingController.cs

@ -16,7 +16,7 @@ namespace Squidex.Controllers.ContentApi
[Authorize(Roles = SquidexRoles.AppEditor)]
[ApiExceptionFilter]
[ServiceFilter(typeof(AppFilterAttribute))]
public class PingController : ControllerBase
public class PingController : Controller
{
[HttpGet]
[Route("ping/{app}/")]

5
src/Squidex/Controllers/ControllerBase.cs

@ -23,11 +23,6 @@ namespace Squidex.Controllers
CommandBus = commandBus;
}
protected ControllerBase()
{
throw new NotImplementedException();
}
protected IAppEntity App
{
get

2
src/Squidex/Pipeline/ApiExceptionFilterAttribute.cs

@ -18,7 +18,7 @@ using Squidex.Controllers.Api;
namespace Squidex.Pipeline
{
public class ApiExceptionFilterAttribute : ActionFilterAttribute, IExceptionFilter
public sealed class ApiExceptionFilterAttribute : ActionFilterAttribute, IExceptionFilter
{
private static readonly List<Func<Exception, IActionResult>> handlers = new List<Func<Exception, IActionResult>>();

1
src/Squidex/Pipeline/AppFilterAttribute.cs

@ -22,6 +22,7 @@ using Squidex.Read.Apps.Services;
namespace Squidex.Pipeline
{
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public sealed class AppFilterAttribute : Attribute, IAsyncAuthorizationFilter
{
private readonly IAppProvider appProvider;

2
src/Squidex/Pipeline/RandomErrorAttribute.cs

@ -12,7 +12,7 @@ using Microsoft.AspNetCore.Mvc.Filters;
namespace Squidex.Pipeline
{
public class RandomErrorAttribute : ActionFilterAttribute
public sealed class RandomErrorAttribute : ActionFilterAttribute
{
private static readonly Random random = new Random();

2
tests/Squidex.Infrastructure.Tests/CQRS/Commands/AggregateHandlerTests.cs

@ -29,7 +29,7 @@ namespace Squidex.Infrastructure.CQRS.Commands
public long? ExpectedVersion { get; set; }
}
private sealed class MyDomainObject : DomainObject
private sealed class MyDomainObject : DomainObjectBase
{
public MyDomainObject(Guid id, int version)
: base(id, version)

2
tests/Squidex.Infrastructure.Tests/CQRS/Commands/DefaultDomainObjectFactoryTests.cs

@ -17,7 +17,7 @@ namespace Squidex.Infrastructure.CQRS.Commands
{
public class DefaultDomainObjectFactoryTests
{
private sealed class DO : DomainObject
private sealed class DO : DomainObjectBase
{
public DO(Guid id, int version) : base(id, version)
{

2
tests/Squidex.Infrastructure.Tests/CQRS/Commands/DefaultDomainObjectRepositoryTests.cs

@ -47,7 +47,7 @@ namespace Squidex.Infrastructure.CQRS.Commands
{
}
public sealed class MyDomainObject : DomainObject
public sealed class MyDomainObject : DomainObjectBase
{
private readonly List<IEvent> appliedEvents = new List<IEvent>();

6
tests/Squidex.Infrastructure.Tests/CQRS/DomainObjectTest.cs → tests/Squidex.Infrastructure.Tests/CQRS/DomainObjectBaseTests.cs

@ -1,5 +1,5 @@
// ==========================================================================
// DomainObjectTest.cs
// DomainObjectBaseTests.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -15,13 +15,13 @@ using System.Linq;
namespace Squidex.Infrastructure.CQRS
{
public class DomainObjectTest
public class DomainObjectBaseTests
{
private sealed class MyEvent : IEvent
{
}
private sealed class DO : DomainObject
private sealed class DO : DomainObjectBase
{
public DO(Guid id, int version)
: base(id, version)

4
tests/Squidex.Infrastructure.Tests/CQRS/Events/DefaultNameResolverTests.cs

@ -15,7 +15,7 @@ namespace Squidex.Infrastructure.CQRS.Events
{
private readonly DefaultNameResolver sut = new DefaultNameResolver();
private sealed class MyUser : DomainObject
private sealed class MyUser : DomainObjectBase
{
public MyUser(Guid id, int version)
: base(id, version)
@ -27,7 +27,7 @@ namespace Squidex.Infrastructure.CQRS.Events
}
}
private sealed class MyUserDomainObject : DomainObject
private sealed class MyUserDomainObject : DomainObjectBase
{
public MyUserDomainObject(Guid id, int version)
: base(id, version)

2
tests/Squidex.Infrastructure.Tests/CQRS/EnvelopeExtensionsTests.cs → tests/Squidex.Infrastructure.Tests/CQRS/Events/EnvelopeExtensionsTests.cs

@ -11,7 +11,7 @@ using System.Globalization;
using NodaTime;
using Xunit;
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public class EnvelopeExtensionsTests
{

2
tests/Squidex.Infrastructure.Tests/CQRS/EnvelopeHeaderTests.cs → tests/Squidex.Infrastructure.Tests/CQRS/Events/EnvelopeHeaderTests.cs

@ -9,7 +9,7 @@
using System.Linq;
using Xunit;
namespace Squidex.Infrastructure.CQRS
namespace Squidex.Infrastructure.CQRS.Events
{
public class EnvelopeHeaderTests
{

6
tests/Squidex.Infrastructure.Tests/DisposableObjectTests.cs → tests/Squidex.Infrastructure.Tests/DisposableObjectBaseTests.cs

@ -1,5 +1,5 @@
// ==========================================================================
// DisposableObjectTest.cs
// DisposableObjectBaseTests.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex Group
@ -11,9 +11,9 @@ using Xunit;
namespace Squidex.Infrastructure
{
public class DisposableObjectTests
public class DisposableObjectBaseTests
{
public sealed class MyDisposableObject : DisposableObject
public sealed class MyDisposableObject : DisposableObjectBase
{
public int DisposeCallCount { get; set; }

4
tests/Squidex.Infrastructure.Tests/LanguageTests.cs

@ -74,7 +74,7 @@ namespace Squidex.Infrastructure
[InlineData("en ", "en")]
public void Should_parse_valid_languages(string input, string languageCode)
{
var language = Language.TryParse(input);
var language = Language.ParseOrNull(input);
Assert.Equal(language, Language.GetLanguage(languageCode));
}
@ -87,7 +87,7 @@ namespace Squidex.Infrastructure
[InlineData(null)]
public void Should_parse_invalid_languages(string input)
{
var language = Language.TryParse(input);
var language = Language.ParseOrNull(input);
Assert.Null(language);
}

1
tests/Squidex.Write.Tests/TestHelpers/AssertHelper.cs

@ -9,7 +9,6 @@
using System.Collections.Generic;
using System.Linq;
using FluentAssertions;
using Squidex.Infrastructure.CQRS;
using Squidex.Infrastructure.CQRS.Events;
namespace Squidex.Write.TestHelpers

2
tests/Squidex.Write.Tests/TestHelpers/HandlerTestBase.cs

@ -15,7 +15,7 @@ using Squidex.Infrastructure.CQRS.Commands;
namespace Squidex.Write.TestHelpers
{
public abstract class HandlerTestBase<T> where T : DomainObject
public abstract class HandlerTestBase<T> where T : DomainObjectBase
{
private sealed class MockupHandler : IAggregateHandler
{

4
tools/GenerateLanguages/Program.cs

@ -30,9 +30,13 @@ namespace GenerateLanguages
writer.WriteLine("// Copyright (c) Squidex Group");
writer.WriteLine("// All rights reserved.");
writer.WriteLine("// ==========================================================================");
writer.WriteLine("// <autogenerated/>");
writer.WriteLine();
writer.WriteLine("using System.CodeDom.Compiler;");
writer.WriteLine();
writer.WriteLine("namespace Squidex.Infrastructure");
writer.WriteLine("{");
writer.WriteLine(" [GeneratedCode(\"LanguagesGenerator\", \"1.0\")]");
writer.WriteLine(" partial class Language");
writer.WriteLine(" {");

Loading…
Cancel
Save