Skip to content

Commit 16cf15d

Browse files
committed
chore(ContextGraph): remove publicly accessible member
exposes unnecessary implementation details
1 parent 12eafc8 commit 16cf15d

File tree

3 files changed

+20
-15
lines changed

3 files changed

+20
-15
lines changed

src/JsonApiDotNetCore/Builders/ContextGraphBuilder.cs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
using System;
22
using System.Collections.Generic;
3+
using System.Linq;
34
using System.Reflection;
4-
using Microsoft.EntityFrameworkCore;
5+
using JsonApiDotNetCore.Extensions;
56
using JsonApiDotNetCore.Internal;
67
using JsonApiDotNetCore.Models;
7-
using JsonApiDotNetCore.Extensions;
8-
using System.Linq;
8+
using Microsoft.EntityFrameworkCore;
99

1010
namespace JsonApiDotNetCore.Builders
1111
{
@@ -20,11 +20,8 @@ public IContextGraph Build()
2020
// this must be done at build so that call order doesn't matter
2121
_entities.ForEach(e => e.Links = GetLinkFlags(e.EntityType));
2222

23-
var graph = new ContextGraph()
24-
{
25-
Entities = _entities,
26-
UsesDbContext = _usesDbContext
27-
};
23+
var graph = new ContextGraph(_entities, _usesDbContext);
24+
2825
return graph;
2926
}
3027

src/JsonApiDotNetCore/Internal/ContextGraph.cs

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,28 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4-
using System.Reflection;
54

65
namespace JsonApiDotNetCore.Internal
76
{
87
public class ContextGraph : IContextGraph
98
{
10-
public List<ContextEntity> Entities { get; set; }
11-
public bool UsesDbContext { get; set; }
9+
private List<ContextEntity> _entities;
10+
11+
public ContextGraph() { }
12+
13+
public ContextGraph(List<ContextEntity> entities, bool usesDbContext)
14+
{
15+
_entities = entities;
16+
UsesDbContext = usesDbContext;
17+
}
18+
19+
public bool UsesDbContext { get; }
1220

1321
public ContextEntity GetContextEntity(string entityName)
14-
=> Entities.SingleOrDefault(e => string.Equals(e.EntityName, entityName, StringComparison.OrdinalIgnoreCase));
22+
=> _entities.SingleOrDefault(e => string.Equals(e.EntityName, entityName, StringComparison.OrdinalIgnoreCase));
1523

1624
public ContextEntity GetContextEntity(Type entityType)
17-
=> Entities.SingleOrDefault(e => e.EntityType == entityType);
25+
=> _entities.SingleOrDefault(e => e.EntityType == entityType);
1826

1927
public object GetRelationship<TParent>(TParent entity, string relationshipName)
2028
{
@@ -33,7 +41,7 @@ public object GetRelationship<TParent>(TParent entity, string relationshipName)
3341
public string GetRelationshipName<TParent>(string relationshipName)
3442
{
3543
var entityType = typeof(TParent);
36-
return Entities
44+
return _entities
3745
.SingleOrDefault(e => e.EntityType == entityType)
3846
?.Relationships
3947
.SingleOrDefault(r => string.Equals(r.PublicRelationshipName, relationshipName, StringComparison.OrdinalIgnoreCase))

src/JsonApiDotNetCore/Internal/IContextGraph.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ public interface IContextGraph
88
string GetRelationshipName<TParent>(string relationshipName);
99
ContextEntity GetContextEntity(string dbSetName);
1010
ContextEntity GetContextEntity(Type entityType);
11-
bool UsesDbContext { get; set; }
11+
bool UsesDbContext { get; }
1212
}
1313
}

0 commit comments

Comments
 (0)