Skip to content

Commit a3e0268

Browse files
committed
style(*): code cleaning
1 parent 11450e5 commit a3e0268

File tree

51 files changed

+294
-309
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+294
-309
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
\.vs/
2+
3+
*.user

src/JsonApiDotNetCore/Builders/ContextGraphBuilder.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,18 @@ namespace JsonApiDotNetCore.Builders
1010
{
1111
public class ContextGraphBuilder : IContextGraphBuilder
1212
{
13-
private List<ContextEntity> Entities;
13+
private List<ContextEntity> _entities;
1414
private bool _usesDbContext;
1515
public ContextGraphBuilder()
1616
{
17-
Entities = new List<ContextEntity>();
17+
_entities = new List<ContextEntity>();
1818
}
1919

2020
public IContextGraph Build()
2121
{
2222
var graph = new ContextGraph()
2323
{
24-
Entities = Entities,
24+
Entities = _entities,
2525
UsesDbContext = _usesDbContext
2626
};
2727
return graph;
@@ -30,7 +30,7 @@ public IContextGraph Build()
3030
public void AddResource<TResource>(string pluralizedTypeName) where TResource : class
3131
{
3232
var entityType = typeof(TResource);
33-
Entities.Add(new ContextEntity
33+
_entities.Add(new ContextEntity
3434
{
3535
EntityName = pluralizedTypeName,
3636
EntityType = entityType,
@@ -108,7 +108,7 @@ public void AddDbContext<T>() where T : DbContext
108108
}
109109
}
110110

111-
Entities = entities;
111+
_entities = entities;
112112
}
113113

114114
private string GetResourceName(PropertyInfo property)

src/JsonApiDotNetCore/Builders/DocumentBuilder.cs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ namespace JsonApiDotNetCore.Builders
99
{
1010
public class DocumentBuilder : IDocumentBuilder
1111
{
12-
private IJsonApiContext _jsonApiContext;
13-
private IContextGraph _contextGraph;
12+
private readonly IJsonApiContext _jsonApiContext;
13+
private readonly IContextGraph _contextGraph;
1414
private readonly IRequestMeta _requestMeta;
1515

1616
public DocumentBuilder(IJsonApiContext jsonApiContext)
@@ -50,14 +50,15 @@ public Documents Build(IEnumerable<IIdentifiable> entities)
5050

5151
var contextEntity = _contextGraph.GetContextEntity(entityType);
5252

53+
var enumeratedEntities = entities as IList<IIdentifiable> ?? entities.ToList();
5354
var documents = new Documents
5455
{
5556
Data = new List<DocumentData>(),
56-
Meta = GetMeta(entities.FirstOrDefault()),
57+
Meta = GetMeta(enumeratedEntities.FirstOrDefault()),
5758
Links = _jsonApiContext.PageManager.GetPageLinks(new LinkBuilder(_jsonApiContext))
5859
};
5960

60-
foreach (var entity in entities)
61+
foreach (var entity in enumeratedEntities)
6162
{
6263
documents.Data.Add(GetData(contextEntity, entity));
6364
documents.Included = AppendIncludedObject(documents.Included, contextEntity, entity);
@@ -155,9 +156,9 @@ private void AddRelationships(DocumentData data, ContextEntity contextEntity, II
155156
if(navigationEntity == null)
156157
relationshipData.SingleData = null;
157158
else if (navigationEntity is IEnumerable)
158-
relationshipData.ManyData = GetRelationships((IEnumerable<object>)navigationEntity, r.InternalRelationshipName);
159+
relationshipData.ManyData = GetRelationships((IEnumerable<object>)navigationEntity);
159160
else
160-
relationshipData.SingleData = GetRelationship(navigationEntity, r.InternalRelationshipName);
161+
relationshipData.SingleData = GetRelationship(navigationEntity);
161162
}
162163

163164
data.Relationships.Add(r.PublicRelationshipName, relationshipData);
@@ -174,9 +175,9 @@ private List<DocumentData> GetIncludedEntities(ContextEntity contextEntity, IIde
174175

175176
var navigationEntity = _jsonApiContext.ContextGraph.GetRelationship(entity, r.InternalRelationshipName);
176177

177-
if (navigationEntity is IEnumerable)
178-
foreach (var includedEntity in (IEnumerable)navigationEntity)
179-
AddIncludedEntity(included, (IIdentifiable)includedEntity);
178+
if (navigationEntity is IEnumerable hasManyNavigationEntity)
179+
foreach (IIdentifiable includedEntity in hasManyNavigationEntity)
180+
AddIncludedEntity(included, includedEntity);
180181
else
181182
AddIncludedEntity(included, (IIdentifiable)navigationEntity);
182183
});
@@ -216,7 +217,7 @@ private bool RelationshipIsIncluded(string relationshipName)
216217
_jsonApiContext.IncludedRelationships.Contains(relationshipName);
217218
}
218219

219-
private List<Dictionary<string, string>> GetRelationships(IEnumerable<object> entities, string relationshipName)
220+
private List<Dictionary<string, string>> GetRelationships(IEnumerable<object> entities)
220221
{
221222
var objType = entities.GetType().GenericTypeArguments[0];
222223

@@ -232,7 +233,7 @@ private List<Dictionary<string, string>> GetRelationships(IEnumerable<object> en
232233
}
233234
return relationships;
234235
}
235-
private Dictionary<string, string> GetRelationship(object entity, string relationshipName)
236+
private Dictionary<string, string> GetRelationship(object entity)
236237
{
237238
var objType = entity.GetType();
238239

src/JsonApiDotNetCore/Builders/LinkBuilder.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1-
using JsonApiDotNetCore.Extensions;
21
using JsonApiDotNetCore.Services;
32
using Microsoft.AspNetCore.Http;
43

54
namespace JsonApiDotNetCore.Builders
65
{
76
public class LinkBuilder
87
{
9-
IJsonApiContext _context;
8+
private readonly IJsonApiContext _context;
109

1110
public LinkBuilder(IJsonApiContext context)
1211
{

src/JsonApiDotNetCore/Configuration/JsonApiOptions.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@ public void BuildContextGraph<TContext>(Action<IContextGraphBuilder> builder)
2020

2121
contextGraphBuilder.AddDbContext<TContext>();
2222

23-
if(builder != null)
24-
builder(contextGraphBuilder);
23+
builder?.Invoke(contextGraphBuilder);
2524

2625
ContextGraph = contextGraphBuilder.Build();
2726
}

src/JsonApiDotNetCore/Controllers/JsonApiControllerMixin.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ namespace JsonApiDotNetCore.Controllers
44
{
55
public abstract class JsonApiControllerMixin : Controller
66
{
7-
protected JsonApiControllerMixin()
8-
{ }
9-
107
protected IActionResult UnprocessableEntity()
118
{
129
return new StatusCodeResult(422);

src/JsonApiDotNetCore/Data/DefaultEntityRepository.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System.Threading.Tasks;
44
using JsonApiDotNetCore.Extensions;
55
using JsonApiDotNetCore.Internal;
6+
using JsonApiDotNetCore.Internal.Generics;
67
using JsonApiDotNetCore.Internal.Query;
78
using JsonApiDotNetCore.Models;
89
using JsonApiDotNetCore.Services;
@@ -69,9 +70,10 @@ public virtual IQueryable<TEntity> Sort(IQueryable<TEntity> entities, List<SortQ
6970

7071
var orderedEntities = entities.Sort(sortQueries[0]);
7172

72-
if(sortQueries.Count() > 1)
73-
for(var i=1; i < sortQueries.Count(); i++)
74-
orderedEntities = orderedEntities.Sort(sortQueries[i]);
73+
if (sortQueries.Count <= 1) return orderedEntities;
74+
75+
for(var i=1; i < sortQueries.Count; i++)
76+
orderedEntities = orderedEntities.Sort(sortQueries[i]);
7577

7678
return orderedEntities;
7779
}

src/JsonApiDotNetCore/Data/IEntityRepository.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
using System.Collections.Generic;
22
using System.Linq;
33
using System.Threading.Tasks;
4-
using JsonApiDotNetCore.Internal;
54
using JsonApiDotNetCore.Internal.Query;
65
using JsonApiDotNetCore.Models;
76

src/JsonApiDotNetCore/Extensions/IApplicationBuilderExtensions.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
using JsonApiDotNetCore.Middleware;
22
using Microsoft.AspNetCore.Builder;
33

4-
namespace JsonApiDotNetCore.Routing
4+
namespace JsonApiDotNetCore.Extensions
55
{
6+
// ReSharper disable once InconsistentNaming
67
public static class IApplicationBuilderExtensions
78
{
89
public static IApplicationBuilder UseJsonApi(this IApplicationBuilder app, bool useMvc = true)

src/JsonApiDotNetCore/Extensions/IQueryableExtensions.cs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,21 @@
88

99
namespace JsonApiDotNetCore.Extensions
1010
{
11+
// ReSharper disable once InconsistentNaming
1112
public static class IQueryableExtensions
1213
{
1314
public static IOrderedQueryable<TSource> Sort<TSource>(this IQueryable<TSource> source, SortQuery sortQuery)
1415
{
15-
if (sortQuery.Direction == SortDirection.Descending)
16-
return source.OrderByDescending(sortQuery.SortedAttribute.InternalAttributeName);
17-
18-
return source.OrderBy(sortQuery.SortedAttribute.InternalAttributeName);
16+
return sortQuery.Direction == SortDirection.Descending
17+
? source.OrderByDescending(sortQuery.SortedAttribute.InternalAttributeName)
18+
: source.OrderBy(sortQuery.SortedAttribute.InternalAttributeName);
1919
}
2020

2121
public static IOrderedQueryable<TSource> Sort<TSource>(this IOrderedQueryable<TSource> source, SortQuery sortQuery)
2222
{
23-
if (sortQuery.Direction == SortDirection.Descending)
24-
return source.ThenByDescending(sortQuery.SortedAttribute.InternalAttributeName);
25-
26-
return source.ThenBy(sortQuery.SortedAttribute.InternalAttributeName);
23+
return sortQuery.Direction == SortDirection.Descending
24+
? source.ThenByDescending(sortQuery.SortedAttribute.InternalAttributeName)
25+
: source.ThenBy(sortQuery.SortedAttribute.InternalAttributeName);
2726
}
2827

2928
public static IOrderedQueryable<TSource> OrderBy<TSource>(this IQueryable<TSource> source, string propertyName)
@@ -181,7 +180,9 @@ private static Expression GetFilterExpressionLambda(Expression left, Expression
181180

182181
public static IQueryable<TSource> Select<TSource>(this IQueryable<TSource> source, IEnumerable<string> columns)
183182
{
184-
if (columns == null || columns.Count() == 0)
183+
var enumeratedColumns = columns as IList<string> ?? columns.ToList();
184+
185+
if (columns == null || enumeratedColumns.Any() == false)
185186
return source;
186187

187188
var sourceType = source.ElementType;
@@ -191,7 +192,7 @@ public static IQueryable<TSource> Select<TSource>(this IQueryable<TSource> sourc
191192
// {model}
192193
var parameter = Expression.Parameter(sourceType, "model");
193194

194-
var bindings = columns.Select(column => Expression.Bind(
195+
var bindings = enumeratedColumns.Select(column => Expression.Bind(
195196
resultType.GetProperty(column), Expression.PropertyOrField(parameter, column)));
196197

197198
// { new Model () { Property = model.Property } }
@@ -201,7 +202,7 @@ public static IQueryable<TSource> Select<TSource>(this IQueryable<TSource> sourc
201202
var selector = Expression.Lambda(body, parameter);
202203

203204
return source.Provider.CreateQuery<TSource>(
204-
Expression.Call(typeof(Queryable), "Select", new Type[] { sourceType, resultType },
205+
Expression.Call(typeof(Queryable), "Select", new[] { sourceType, resultType },
205206
source.Expression, Expression.Quote(selector)));
206207
}
207208
}

src/JsonApiDotNetCore/Extensions/IServiceCollectionExtensions.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
using JsonApiDotNetCore.Data;
55
using JsonApiDotNetCore.Formatters;
66
using JsonApiDotNetCore.Internal;
7+
using JsonApiDotNetCore.Internal.Generics;
8+
using JsonApiDotNetCore.Middleware;
79
using JsonApiDotNetCore.Serialization;
810
using JsonApiDotNetCore.Services;
911
using Microsoft.AspNetCore.Http;
@@ -13,6 +15,7 @@
1315

1416
namespace JsonApiDotNetCore.Extensions
1517
{
18+
// ReSharper disable once InconsistentNaming
1619
public static class IServiceCollectionExtensions
1720
{
1821
public static void AddJsonApi<TContext>(this IServiceCollection services)

src/JsonApiDotNetCore/Formatters/JsonApiReader.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
using JsonApiDotNetCore.Serialization;
55
using JsonApiDotNetCore.Services;
66
using Microsoft.AspNetCore.Mvc.Formatters;
7-
using Microsoft.EntityFrameworkCore;
87
using Microsoft.Extensions.Logging;
98
using Newtonsoft.Json;
109

src/JsonApiDotNetCore/Internal/DasherizedRoutingConvention.cs

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ namespace JsonApiDotNetCore.Internal
1010
{
1111
public class DasherizedRoutingConvention : IApplicationModelConvention
1212
{
13-
private string _namespace;
13+
private readonly string _namespace;
1414
public DasherizedRoutingConvention(string nspace)
1515
{
1616
_namespace = nspace;
@@ -20,12 +20,9 @@ public void Apply(ApplicationModel application)
2020
{
2121
foreach (var controller in application.Controllers)
2222
{
23-
var template = string.Empty;
24-
25-
if (IsDasherizedJsonApiController(controller))
26-
template = $"{_namespace}/{controller.ControllerName.Dasherize()}";
27-
else
28-
template = GetTemplate(controller);
23+
var template = IsDasherizedJsonApiController(controller)
24+
? $"{_namespace}/{controller.ControllerName.Dasherize()}"
25+
: GetTemplate(controller);
2926

3027
controller.Selectors[0].AttributeRouteModel = new AttributeRouteModel()
3128
{
@@ -45,10 +42,9 @@ private string GetTemplate(ControllerModel controller)
4542
{
4643
var type = controller.ControllerType;
4744
var routeAttr = type.GetCustomAttribute<RouteAttribute>();
48-
if(routeAttr != null)
49-
return ((RouteAttribute)routeAttr).Template;
50-
51-
return controller.ControllerName;
45+
return routeAttr != null
46+
? routeAttr.Template
47+
: controller.ControllerName;
5248
}
5349
}
5450
}

src/JsonApiDotNetCore/Internal/Error.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ public Error(string status, string title, string detail)
3030
public string Status { get; set; }
3131

3232
[JsonIgnore]
33-
public int StatusCode { get { return int.Parse(Status); } }
33+
public int StatusCode => int.Parse(Status);
3434
}
3535
}

src/JsonApiDotNetCore/Internal/Generics/GenericProcessor.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
using JsonApiDotNetCore.Models;
66
using Microsoft.EntityFrameworkCore;
77

8-
namespace JsonApiDotNetCore.Internal
8+
namespace JsonApiDotNetCore.Internal.Generics
99
{
1010
public class GenericProcessor<T> : IGenericProcessor where T : class, IIdentifiable
1111
{
@@ -24,8 +24,6 @@ public async Task UpdateRelationshipsAsync(object parent, RelationshipAttribute
2424

2525
public void SetRelationships(object parent, RelationshipAttribute relationship, IEnumerable<string> relationshipIds)
2626
{
27-
var relationshipType = relationship.Type;
28-
2927
if (relationship.IsHasMany)
3028
{
3129
var entities = _context.GetDbSet<T>().Where(x => relationshipIds.Contains(x.StringId)).ToList();

src/JsonApiDotNetCore/Internal/Generics/GenericProcessorFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
using System;
22
using Microsoft.EntityFrameworkCore;
33

4-
namespace JsonApiDotNetCore.Internal
4+
namespace JsonApiDotNetCore.Internal.Generics
55
{
66
public class GenericProcessorFactory : IGenericProcessorFactory
77
{

src/JsonApiDotNetCore/Internal/Generics/IGenericProcessor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
using System.Threading.Tasks;
33
using JsonApiDotNetCore.Models;
44

5-
namespace JsonApiDotNetCore.Internal
5+
namespace JsonApiDotNetCore.Internal.Generics
66
{
77
public interface IGenericProcessor
88
{

src/JsonApiDotNetCore/Internal/Generics/IGenericProcessorFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using System;
22

3-
namespace JsonApiDotNetCore.Internal
3+
namespace JsonApiDotNetCore.Internal.Generics
44
{
55
/// <summary>
66
/// Used to generate a generic operations processor when the types

src/JsonApiDotNetCore/Internal/JsonApiException.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ namespace JsonApiDotNetCore.Internal
55
{
66
public class JsonApiException : Exception
77
{
8-
private ErrorCollection _errors = new ErrorCollection();
8+
private readonly ErrorCollection _errors = new ErrorCollection();
99

1010
public JsonApiException(ErrorCollection errorCollection)
1111
{

src/JsonApiDotNetCore/Internal/JsonApiRouteHandler.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@ namespace JsonApiDotNetCore.Internal
1111
{
1212
public class JsonApiRouteHandler : IRouter
1313
{
14-
private IActionContextAccessor _actionContextAccessor;
15-
private IActionInvokerFactory _actionInvokerFactory;
16-
private IActionSelector _actionSelector;
17-
public JsonApiRouteHandler(IActionInvokerFactory actionInvokerFactory,
14+
private readonly IActionContextAccessor _actionContextAccessor;
15+
private readonly IActionInvokerFactory _actionInvokerFactory;
16+
private readonly IActionSelector _actionSelector;
17+
18+
public JsonApiRouteHandler(
19+
IActionInvokerFactory actionInvokerFactory,
1820
IActionSelector actionSelector)
1921
: this(actionInvokerFactory, actionSelector, actionContextAccessor: null)
2022
{
@@ -28,7 +30,6 @@ public JsonApiRouteHandler(
2830
// The IActionContextAccessor is optional. We want to avoid the overhead of using CallContext
2931
// if possible.
3032
_actionContextAccessor = actionContextAccessor;
31-
3233
_actionInvokerFactory = actionInvokerFactory;
3334
_actionSelector = actionSelector;
3435
}

0 commit comments

Comments
 (0)