@@ -48,6 +48,7 @@ public DefaultEntityRepository(
48
48
_genericProcessorFactory = _jsonApiContext . GenericProcessorFactory ;
49
49
}
50
50
51
+ /// </ inheritdoc>
51
52
public virtual IQueryable < TEntity > Get ( )
52
53
{
53
54
if ( _jsonApiContext . QuerySet ? . Fields != null && _jsonApiContext . QuerySet . Fields . Count > 0 )
@@ -56,21 +57,25 @@ public virtual IQueryable<TEntity> Get()
56
57
return _dbSet ;
57
58
}
58
59
60
+ /// </ inheritdoc>
59
61
public virtual IQueryable < TEntity > Filter ( IQueryable < TEntity > entities , FilterQuery filterQuery )
60
62
{
61
63
return entities . Filter ( _jsonApiContext , filterQuery ) ;
62
64
}
63
65
66
+ /// </ inheritdoc>
64
67
public virtual IQueryable < TEntity > Sort ( IQueryable < TEntity > entities , List < SortQuery > sortQueries )
65
68
{
66
69
return entities . Sort ( sortQueries ) ;
67
70
}
68
71
72
+ /// </ inheritdoc>
69
73
public virtual async Task < TEntity > GetAsync ( TId id )
70
74
{
71
75
return await Get ( ) . SingleOrDefaultAsync ( e => e . Id . Equals ( id ) ) ;
72
76
}
73
77
78
+ /// </ inheritdoc>
74
79
public virtual async Task < TEntity > GetAndIncludeAsync ( TId id , string relationshipName )
75
80
{
76
81
_logger . LogDebug ( $ "[JADN] GetAndIncludeAsync({ id } , { relationshipName } )") ;
@@ -80,6 +85,7 @@ public virtual async Task<TEntity> GetAndIncludeAsync(TId id, string relationshi
80
85
return result ;
81
86
}
82
87
88
+ /// </ inheritdoc>
83
89
public virtual async Task < TEntity > CreateAsync ( TEntity entity )
84
90
{
85
91
AttachRelationships ( ) ;
@@ -102,9 +108,9 @@ protected virtual void AttachRelationships()
102
108
private void AttachHasManyPointers ( )
103
109
{
104
110
var relationships = _jsonApiContext . HasManyRelationshipPointers . Get ( ) ;
105
- foreach ( var relationship in relationships )
111
+ foreach ( var relationship in relationships )
106
112
{
107
- foreach ( var pointer in relationship . Value )
113
+ foreach ( var pointer in relationship . Value )
108
114
{
109
115
_context . Entry ( pointer ) . State = EntityState . Unchanged ;
110
116
}
@@ -123,6 +129,7 @@ private void AttachHasOnePointers()
123
129
_context . Entry ( relationship . Value ) . State = EntityState . Unchanged ;
124
130
}
125
131
132
+ /// </ inheritdoc>
126
133
public virtual async Task < TEntity > UpdateAsync ( TId id , TEntity entity )
127
134
{
128
135
var oldEntity = await GetAsync ( id ) ;
@@ -141,12 +148,14 @@ public virtual async Task<TEntity> UpdateAsync(TId id, TEntity entity)
141
148
return oldEntity ;
142
149
}
143
150
151
+ /// </ inheritdoc>
144
152
public async Task UpdateRelationshipsAsync ( object parent , RelationshipAttribute relationship , IEnumerable < string > relationshipIds )
145
153
{
146
154
var genericProcessor = _genericProcessorFactory . GetProcessor < IGenericProcessor > ( typeof ( GenericProcessor < > ) , relationship . Type ) ;
147
155
await genericProcessor . UpdateRelationshipsAsync ( parent , relationship , relationshipIds ) ;
148
156
}
149
157
158
+ /// </ inheritdoc>
150
159
public virtual async Task < bool > DeleteAsync ( TId id )
151
160
{
152
161
var entity = await GetAsync ( id ) ;
@@ -161,11 +170,12 @@ public virtual async Task<bool> DeleteAsync(TId id)
161
170
return true ;
162
171
}
163
172
173
+ /// </ inheritdoc>
164
174
public virtual IQueryable < TEntity > Include ( IQueryable < TEntity > entities , string relationshipName )
165
175
{
166
176
var entity = _jsonApiContext . RequestEntity ;
167
177
var relationship = entity . Relationships . FirstOrDefault ( r => r . PublicRelationshipName == relationshipName ) ;
168
- if ( relationship == null )
178
+ if ( relationship == null )
169
179
{
170
180
throw new JsonApiException ( 400 , $ "Invalid relationship { relationshipName } on { entity . EntityName } ",
171
181
$ "{ entity . EntityName } does not have a relationship named { relationshipName } ") ;
@@ -178,6 +188,7 @@ public virtual IQueryable<TEntity> Include(IQueryable<TEntity> entities, string
178
188
return entities . Include ( relationship . InternalRelationshipName ) ;
179
189
}
180
190
191
+ /// </ inheritdoc>
181
192
public virtual async Task < IEnumerable < TEntity > > PageAsync ( IQueryable < TEntity > entities , int pageSize , int pageNumber )
182
193
{
183
194
if ( pageNumber >= 0 )
@@ -198,20 +209,23 @@ public virtual async Task<IEnumerable<TEntity>> PageAsync(IQueryable<TEntity> en
198
209
. ToListAsync ( ) ;
199
210
}
200
211
212
+ /// </ inheritdoc>
201
213
public async Task < int > CountAsync ( IQueryable < TEntity > entities )
202
214
{
203
215
return ( entities is IAsyncEnumerable < TEntity > )
204
216
? await entities . CountAsync ( )
205
217
: entities . Count ( ) ;
206
218
}
207
219
220
+ /// </ inheritdoc>
208
221
public async Task < TEntity > FirstOrDefaultAsync ( IQueryable < TEntity > entities )
209
222
{
210
223
return ( entities is IAsyncEnumerable < TEntity > )
211
224
? await entities . FirstOrDefaultAsync ( )
212
225
: entities . FirstOrDefault ( ) ;
213
226
}
214
227
228
+ /// </ inheritdoc>
215
229
public async Task < IReadOnlyList < TEntity > > ToListAsync ( IQueryable < TEntity > entities )
216
230
{
217
231
return ( entities is IAsyncEnumerable < TEntity > )
0 commit comments