dolittle/DotNET.SDK

View on GitHub
Source/Projections/Builder/ConventionProjectionBuilder.cs

Summary

Maintainability
C
1 day
Test Coverage
F
0%

File ConventionProjectionBuilder.cs has 279 lines of code (exceeds 250 allowed). Consider refactoring.
Open

using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Reflection;
Severity: Minor
Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 2 hrs to fix

    Class ConventionProjectionBuilder has 21 methods (exceeds 20 allowed). Consider refactoring.
    Open

    public class ConventionProjectionBuilder<TProjection> : ICanTryBuildProjection
        where TProjection : ReadModel, new()
    {
        readonly ProjectionModelId _identifier;
        const string MethodName = "On";
    Severity: Minor
    Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 2 hrs to fix

      Method TryAddConventionOnMethods has 47 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

          bool TryAddConventionOnMethods(
              ProjectionModelId identifier,
              IEnumerable<MethodInfo> methods,
              IEventTypes eventTypes,
              IDictionary<EventType, IProjectionMethod<TProjection>> eventTypesToMethods,
      Severity: Minor
      Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 1 hr to fix

        Method TryAddDecoratedOnMethods has 44 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

            bool TryAddDecoratedOnMethods(
                ProjectionModelId identifier,
                IEnumerable<MethodInfo> methods,
                IDictionary<EventType, IProjectionMethod<TProjection>> eventTypesToMethods,
                IClientBuildResults buildResults)
        Severity: Minor
        Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 1 hr to fix

          Method TryAddConventionOnMethods has 5 arguments (exceeds 4 allowed). Consider refactoring.
          Open

                  ProjectionModelId identifier,
                  IEnumerable<MethodInfo> methods,
                  IEventTypes eventTypes,
                  IDictionary<EventType, IProjectionMethod<TProjection>> eventTypesToMethods,
                  IClientBuildResults buildResults)
          Severity: Minor
          Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 35 mins to fix

            Method ParametersAreOkay has 5 arguments (exceeds 4 allowed). Consider refactoring.
            Open

                bool ParametersAreOkay(ProjectionModelId identifier, MethodInfo method, IClientBuildResults buildResults,
                    [NotNullWhen(true)] out ProjectionParametersType? parametersType,
                    [NotNullWhen(true)] out ProjectionMethodResponseType? responseType
            Severity: Minor
            Found in Source/Projections/Builder/ConventionProjectionBuilder.cs - About 35 mins to fix

              There are no issues that match your filters.

              Category
              Status