Skip to content

Commit 50c0420

Browse files
committed
Async regen
1 parent 3160055 commit 50c0420

File tree

9 files changed

+22
-260
lines changed

9 files changed

+22
-260
lines changed

src/NHibernate.Test/Async/GenericTest/Methods/Fixture.cs

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -102,20 +102,6 @@ public async Task QueryListAsync()
102102
}
103103
}
104104

105-
[Test]
106-
public async Task QueryEnumerableAsync()
107-
{
108-
using (var s = OpenSession())
109-
using (var t = s.BeginTransaction())
110-
{
111-
var results = s.CreateQuery("from One").AsyncEnumerable<One>();
112-
var enumerator = results.GetAsyncEnumerator();
113-
114-
Assert.That(await enumerator.MoveNextAsync(), Is.True);
115-
Assert.That(await enumerator.MoveNextAsync(), Is.False);
116-
}
117-
}
118-
119105
[Test]
120106
public async Task FilterAsync()
121107
{
@@ -131,22 +117,5 @@ public async Task FilterAsync()
131117
await (t.CommitAsync());
132118
}
133119
}
134-
135-
[Test]
136-
public async Task FilterEnumerableAsync()
137-
{
138-
using (var s = OpenSession())
139-
using (var t = s.BeginTransaction())
140-
{
141-
One one2 = (One) await s.CreateQuery("from One").UniqueResultAsync();
142-
var results = s.CreateFilter(one2.Manies, "where X = 10").AsyncEnumerable<Many>();
143-
var en = results.GetAsyncEnumerator();
144-
145-
Assert.That(await en.MoveNextAsync(), Is.True);
146-
Assert.That(en.Current.X, Is.EqualTo(10));
147-
Assert.That(await en.MoveNextAsync(), Is.False);
148-
await t.CommitAsync();
149-
}
150-
}
151120
}
152121
}

src/NHibernate.Test/Async/ReadOnly/ReadOnlySessionTest.cs

Lines changed: 0 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -385,46 +385,6 @@ public async Task QueryReadOnlyIterateAsync()
385385
}
386386
}
387387

388-
[Test]
389-
public async Task QueryReadOnlyAsyncIterate()
390-
{
391-
int nExpectedChanges = 0;
392-
QueryIterateCreate(out var lastDataPointId);
393-
394-
using (ISession s = OpenSession())
395-
{
396-
s.CacheMode = CacheMode.Ignore;
397-
398-
using (ITransaction t = s.BeginTransaction())
399-
{
400-
s.DefaultReadOnly = false;
401-
402-
IQuery query = s.CreateQuery("from DataPoint dp order by dp.X asc");
403-
QueryReadOnlyIterateAssertReadOnly(query, s);
404-
405-
var it = query.AsyncEnumerable<DataPoint>().GetAsyncEnumerator();
406-
Assert.That(query.IsReadOnly, Is.True);
407-
DataPoint dpLast = s.Get<DataPoint>(lastDataPointId);
408-
Assert.That(s.IsReadOnly(dpLast), Is.False);
409-
query.SetReadOnly(false);
410-
Assert.That(query.IsReadOnly, Is.False);
411-
Assert.That(s.DefaultReadOnly, Is.False);
412-
413-
int i = 0;
414-
while (await it.MoveNextAsync())
415-
{
416-
QueryReadOnlyIterateAssertRow(s, it.Current, dpLast, ref i, ref nExpectedChanges);
417-
}
418-
419-
Assert.That(s.DefaultReadOnly, Is.False);
420-
421-
t.Commit();
422-
}
423-
424-
QueryIterateClear(s, nExpectedChanges);
425-
}
426-
}
427-
428388
private void QueryReadOnlyIterateAssertReadOnly(IQuery query, ISession s)
429389
{
430390
Assert.That(query.IsReadOnly, Is.False);
@@ -510,45 +470,6 @@ public async Task QueryModifiableIterateAsync()
510470
}
511471
}
512472

513-
[Test]
514-
public async Task QueryModifiableAsyncIterate()
515-
{
516-
int nExpectedChanges = 0;
517-
QueryIterateCreate(out var lastDataPointId);
518-
519-
using (ISession s = OpenSession())
520-
{
521-
s.CacheMode = CacheMode.Ignore;
522-
523-
using (ITransaction t = s.BeginTransaction())
524-
{
525-
s.DefaultReadOnly = true;
526-
527-
IQuery query = s.CreateQuery("from DataPoint dp order by dp.X asc");
528-
QueryModifiableIterateAssertReadOnly(query, s);
529-
530-
var it = query.AsyncEnumerable<DataPoint>().GetAsyncEnumerator();
531-
Assert.That(query.IsReadOnly, Is.False);
532-
DataPoint dpLast = s.Get<DataPoint>(lastDataPointId);
533-
Assert.That(s.IsReadOnly(dpLast), Is.True);
534-
query.SetReadOnly(true);
535-
Assert.That(query.IsReadOnly, Is.True);
536-
Assert.That(s.DefaultReadOnly, Is.True);
537-
538-
int i = 0;
539-
while (await it.MoveNextAsync())
540-
{
541-
QueryModifiableIterateAssertRow(s, it.Current, dpLast, ref i, ref nExpectedChanges);
542-
}
543-
544-
Assert.That(s.DefaultReadOnly, Is.True);
545-
t.Commit();
546-
}
547-
548-
QueryIterateClear(s, nExpectedChanges);
549-
}
550-
}
551-
552473
private void QueryModifiableIterateAssertReadOnly(IQuery query, ISession s)
553474
{
554475
Assert.That(query.IsReadOnly, Is.True);
@@ -641,26 +562,6 @@ private void QueryIterateCreate(out long lastDataPointId)
641562
}
642563
}
643564

644-
private void QueryIterateClear(ISession s, int nExpectedChanges)
645-
{
646-
s.Clear();
647-
using (ITransaction t = s.BeginTransaction())
648-
{
649-
try
650-
{
651-
IList single = s.CreateQuery("from DataPoint where Description = 'done!'").List();
652-
Assert.That(single.Count, Is.EqualTo(nExpectedChanges));
653-
}
654-
finally
655-
{
656-
// cleanup
657-
s.CreateQuery("delete from DataPoint").ExecuteUpdate();
658-
}
659-
660-
t.Commit();
661-
}
662-
}
663-
664565
[Test]
665566
public async Task ReadOnlyRefreshAsync()
666567
{

src/NHibernate/Async/Engine/Query/HQLQueryPlan.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ public async Task PerformListAsync(QueryParameters queryParameters, ISessionImpl
9797
}
9898
}
9999
// Since v5.3
100+
/// <inheritdoc />
100101
[Obsolete("This method has no more usages and will be removed in a future version")]
101102
public Task<IEnumerable> PerformIterateAsync(QueryParameters queryParameters, IEventSource session, CancellationToken cancellationToken)
102103
{
@@ -114,6 +115,7 @@ public Task<IEnumerable> PerformIterateAsync(QueryParameters queryParameters, IE
114115
}
115116
}
116117
// Since v5.3
118+
/// <inheritdoc />
117119
[Obsolete("This method has no more usages and will be removed in a future version")]
118120
public async Task<IEnumerable<T>> PerformIterateAsync<T>(QueryParameters queryParameters, IEventSource session, CancellationToken cancellationToken)
119121
{

src/NHibernate/Async/Impl/AbstractQueryImpl2.cs

Lines changed: 4 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,7 @@ public abstract partial class AbstractQueryImpl2 : AbstractQueryImpl
3838
}
3939
}
4040

41-
/// <summary>
42-
/// Return the query results as an <see cref="IEnumerable"/>. If the query contains multiple results
43-
/// per row, the results are returned in an instance of <c>object[]</c>.
44-
/// </summary>
45-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
46-
/// <remarks>
47-
/// <p>
48-
/// Entities returned as results are initialized on demand. The first SQL query returns
49-
/// identifiers only.
50-
/// </p>
51-
/// <p>
52-
/// This is a good strategy to use if you expect a high number of the objects
53-
/// returned to be already loaded in the <see cref="ISession"/> or in the 2nd level cache.
54-
/// </p>
55-
/// </remarks>
41+
/// <inheritdoc />
5642
// Since v5.3
5743
[Obsolete("Use AsyncEnumerable extension method instead.")]
5844
public override Task<IEnumerable> EnumerableAsync(CancellationToken cancellationToken = default(CancellationToken))
@@ -63,30 +49,15 @@ public abstract partial class AbstractQueryImpl2 : AbstractQueryImpl
6349
}
6450
try
6551
{
66-
VerifyParameters();
67-
var namedParams = NamedParams;
68-
Before();
69-
try
70-
{
71-
return Task.FromResult<IEnumerable>(Session.Enumerable(ExpandParameters(namedParams), GetQueryParameters(namedParams)));
72-
}
73-
finally
74-
{
75-
After();
76-
}
52+
return Task.FromResult<IEnumerable>(Enumerable());
7753
}
7854
catch (System.Exception ex)
7955
{
8056
return Task.FromException<IEnumerable>(ex);
8157
}
8258
}
8359

84-
/// <summary>
85-
/// Strongly-typed version of <see cref="Enumerable()"/>.
86-
/// </summary>
87-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
88-
/// <typeparam name="T"></typeparam>
89-
/// <returns></returns>
60+
/// <inheritdoc />
9061
// Since v5.3
9162
[Obsolete("Use AsyncEnumerable extension method instead.")]
9263
public override Task<IEnumerable<T>> EnumerableAsync<T>(CancellationToken cancellationToken = default(CancellationToken))
@@ -97,17 +68,7 @@ public abstract partial class AbstractQueryImpl2 : AbstractQueryImpl
9768
}
9869
try
9970
{
100-
VerifyParameters();
101-
var namedParams = NamedParams;
102-
Before();
103-
try
104-
{
105-
return Task.FromResult<IEnumerable<T>>(Session.Enumerable<T>(ExpandParameters(namedParams), GetQueryParameters(namedParams)));
106-
}
107-
finally
108-
{
109-
After();
110-
}
71+
return Task.FromResult<IEnumerable<T>>(Enumerable<T>());
11172
}
11273
catch (System.Exception ex)
11374
{

src/NHibernate/Async/Impl/CollectionFilterImpl.cs

Lines changed: 4 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,7 @@ namespace NHibernate.Impl
2424
public partial class CollectionFilterImpl : QueryImpl
2525
{
2626

27-
/// <summary>
28-
/// Return the query results as an <see cref="IEnumerable"/>. If the query contains multiple results
29-
/// per row, the results are returned in an instance of <c>object[]</c>.
30-
/// </summary>
31-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
32-
/// <remarks>
33-
/// <p>
34-
/// Entities returned as results are initialized on demand. The first SQL query returns
35-
/// identifiers only.
36-
/// </p>
37-
/// <p>
38-
/// This is a good strategy to use if you expect a high number of the objects
39-
/// returned to be already loaded in the <see cref="ISession"/> or in the 2nd level cache.
40-
/// </p>
41-
/// </remarks>
27+
/// <inheritdoc />
4228
// Since v5.3
4329
[Obsolete("Use AsyncEnumerable extension method instead.")]
4430
public override Task<IEnumerable> EnumerableAsync(CancellationToken cancellationToken = default(CancellationToken))
@@ -49,22 +35,15 @@ public partial class CollectionFilterImpl : QueryImpl
4935
}
5036
try
5137
{
52-
VerifyParameters();
53-
IDictionary<string, TypedValue> namedParams = NamedParams;
54-
return Task.FromResult<IEnumerable>(Session.EnumerableFilter(collection, ExpandParameterLists(namedParams), GetQueryParameters(namedParams)));
38+
return Task.FromResult<IEnumerable>(Enumerable());
5539
}
5640
catch (Exception ex)
5741
{
5842
return Task.FromException<IEnumerable>(ex);
5943
}
6044
}
6145

62-
/// <summary>
63-
/// Strongly-typed version of <see cref="Enumerable()"/>.
64-
/// </summary>
65-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
66-
/// <typeparam name="T"></typeparam>
67-
/// <returns></returns>
46+
/// <inheritdoc />
6847
// Since v5.3
6948
[Obsolete("Use AsyncEnumerable extension method instead.")]
7049
public override Task<IEnumerable<T>> EnumerableAsync<T>(CancellationToken cancellationToken = default(CancellationToken))
@@ -75,9 +54,7 @@ public partial class CollectionFilterImpl : QueryImpl
7554
}
7655
try
7756
{
78-
VerifyParameters();
79-
IDictionary<string, TypedValue> namedParams = NamedParams;
80-
return Task.FromResult<IEnumerable<T>>(Session.EnumerableFilter<T>(collection, ExpandParameterLists(namedParams), GetQueryParameters(namedParams)));
57+
return Task.FromResult<IEnumerable<T>>(Enumerable<T>());
8158
}
8259
catch (Exception ex)
8360
{

src/NHibernate/Async/Impl/ExpressionQueryImpl.cs

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -70,34 +70,15 @@ internal partial class ExpressionFilterImpl : ExpressionQueryImpl
7070
ArrayHelper.AddAll(results, await (ListAsync(cancellationToken)).ConfigureAwait(false));
7171
}
7272

73-
/// <summary>
74-
/// Return the query results as an <see cref="IEnumerable"/>. If the query contains multiple results
75-
/// per row, the results are returned in an instance of <c>object[]</c>.
76-
/// </summary>
77-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
78-
/// <remarks>
79-
/// <p>
80-
/// Entities returned as results are initialized on demand. The first SQL query returns
81-
/// identifiers only.
82-
/// </p>
83-
/// <p>
84-
/// This is a good strategy to use if you expect a high number of the objects
85-
/// returned to be already loaded in the <see cref="ISession"/> or in the 2nd level cache.
86-
/// </p>
87-
/// </remarks>
73+
/// <inheritdoc />
8874
// Since v5.3
8975
[Obsolete("Use AsyncEnumerable extension method instead.")]
9076
public override Task<IEnumerable> EnumerableAsync(CancellationToken cancellationToken = default(CancellationToken))
9177
{
9278
throw new NotImplementedException();
9379
}
9480

95-
/// <summary>
96-
/// Strongly-typed version of <see cref="Enumerable()"/>.
97-
/// </summary>
98-
/// <param name="cancellationToken">A cancellation token that can be used to cancel the work</param>
99-
/// <typeparam name="T"></typeparam>
100-
/// <returns></returns>
81+
/// <inheritdoc />
10182
// Since v5.3
10283
[Obsolete("Use AsyncEnumerable extension method instead.")]
10384
public override Task<IEnumerable<T>> EnumerableAsync<T>(CancellationToken cancellationToken = default(CancellationToken))

src/NHibernate/Async/Impl/SessionImpl.cs

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -299,9 +299,7 @@ public override async Task<IQueryTranslator[]> GetQueriesAsync(IQueryExpression
299299
}
300300
}
301301

302-
/// <summary>
303-
/// Strongly-typed version of <see cref="Enumerable(IQueryExpression, QueryParameters)" />
304-
/// </summary>
302+
/// <inheritdoc />
305303
// Since v5.3
306304
[Obsolete("Use AsyncEnumerable extension method instead.")]
307305
public override async Task<IEnumerable<T>> EnumerableAsync<T>(IQueryExpression queryExpression, QueryParameters queryParameters, CancellationToken cancellationToken)
@@ -320,6 +318,7 @@ public override async Task<IEnumerable<T>> EnumerableAsync<T>(IQueryExpression q
320318
}
321319
}
322320

321+
/// <inheritdoc />
323322
// Since v5.3
324323
[Obsolete("Use AsyncEnumerable extension method instead.")]
325324
public override async Task<IEnumerable> EnumerableAsync(IQueryExpression queryExpression, QueryParameters queryParameters, CancellationToken cancellationToken)
@@ -1108,9 +1107,7 @@ public override async Task<IList<T>> ListFilterAsync<T>(object collection, strin
11081107
return results;
11091108
}
11101109

1111-
/// <summary>
1112-
/// Collection from a filter
1113-
/// </summary>
1110+
/// <inheritdoc />
11141111
// Since v5.3
11151112
[Obsolete("Use AsyncEnumerableFilter extension method instead.")]
11161113
public override async Task<IEnumerable> EnumerableFilterAsync(object collection, string filter, QueryParameters queryParameters, CancellationToken cancellationToken)
@@ -1123,9 +1120,7 @@ public override async Task<IEnumerable> EnumerableFilterAsync(object collection,
11231120
}
11241121
}
11251122

1126-
/// <summary>
1127-
/// Strongly-typed version of <see cref="EnumerableFilter(object, string, QueryParameters)" />
1128-
/// </summary>
1123+
/// <inheritdoc />
11291124
// Since v5.3
11301125
[Obsolete("Use AsyncEnumerableFilter extension method instead.")]
11311126
public override async Task<IEnumerable<T>> EnumerableFilterAsync<T>(object collection, string filter, QueryParameters queryParameters, CancellationToken cancellationToken)

0 commit comments

Comments
 (0)