1+ using System ;
2+ using System . Collections . Generic ;
3+ using System . Data ;
4+ using System . Threading . Tasks ;
5+ using Dapper ;
6+
7+ namespace DataAbstractions . Dapper
8+ {
9+ public class GridReaderAdapter : IGridReader
10+ {
11+ private readonly SqlMapper . GridReader _gridReader ;
12+
13+ public GridReaderAdapter ( SqlMapper . GridReader gridReader )
14+ {
15+ _gridReader = gridReader ;
16+ }
17+
18+ public IEnumerable < dynamic > Read ( bool buffered = true ) => _gridReader . Read ( buffered ) ;
19+
20+ public dynamic ReadFirst ( ) => _gridReader . ReadFirst ( ) ;
21+
22+ public dynamic ReadFirstOrDefault ( ) => _gridReader . ReadFirstOrDefault ( ) ;
23+
24+ public dynamic ReadSingle ( ) => _gridReader . ReadSingle ( ) ;
25+
26+ public dynamic ReadSingleOrDefault ( ) => _gridReader . ReadSingleOrDefault ( ) ;
27+
28+ public IEnumerable < T > Read < T > ( bool buffered = true ) => _gridReader . Read < T > ( buffered ) ;
29+
30+ public T ReadFirst < T > ( ) => _gridReader . ReadFirst < T > ( ) ;
31+
32+ public T ReadFirstOrDefault < T > ( ) => _gridReader . ReadFirstOrDefault < T > ( ) ;
33+
34+ public T ReadSingle < T > ( ) => _gridReader . ReadSingle < T > ( ) ;
35+
36+ public T ReadSingleOrDefault < T > ( ) => _gridReader . ReadSingleOrDefault < T > ( ) ;
37+
38+ public IEnumerable < object > Read ( Type type , bool buffered = true ) => _gridReader . Read ( type , buffered ) ;
39+
40+ public object ReadFirst ( Type type ) => _gridReader . ReadFirst ( type ) ;
41+
42+ public object ReadFirstOrDefault ( Type type ) => _gridReader . ReadFirstOrDefault ( type ) ;
43+
44+ public object ReadSingle ( Type type ) => _gridReader . ReadSingle ( type ) ;
45+
46+ public object ReadSingleOrDefault ( Type type ) => _gridReader . ReadSingleOrDefault ( type ) ;
47+
48+ public IEnumerable < TReturn > Read < TFirst , TSecond , TReturn > ( Func < TFirst , TSecond , TReturn > func ,
49+ string splitOn = "id" , bool buffered = true ) =>
50+ _gridReader . Read < TFirst , TSecond , TReturn > ( func , splitOn , buffered ) ;
51+
52+ public IEnumerable < TReturn > Read < TFirst , TSecond , TThird , TReturn > ( Func < TFirst , TSecond , TThird , TReturn > func ,
53+ string splitOn = "id" , bool buffered = true ) =>
54+ _gridReader . Read < TFirst , TSecond , TThird , TReturn > ( func , splitOn , buffered ) ;
55+
56+
57+ public IEnumerable < TReturn > Read < TFirst , TSecond , TThird , TFourth , TReturn > (
58+ Func < TFirst , TSecond , TThird , TFourth , TReturn > func , string splitOn = "id" , bool buffered = true ) =>
59+ _gridReader . Read < TFirst , TSecond , TThird , TFourth , TReturn > ( func , splitOn , buffered ) ;
60+
61+ public IEnumerable < TReturn > Read < TFirst , TSecond , TThird , TFourth , TFifth , TReturn > (
62+ Func < TFirst , TSecond , TThird , TFourth , TFifth , TReturn > func , string splitOn = "id" ,
63+ bool buffered = true ) =>
64+ _gridReader . Read < TFirst , TSecond , TThird , TFourth , TFifth , TReturn > ( func , splitOn , buffered ) ;
65+
66+ public IEnumerable < TReturn > Read < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TReturn > (
67+ Func < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TReturn > func , string splitOn = "id" ,
68+ bool buffered = true ) =>
69+ _gridReader . Read < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TReturn > ( func , splitOn , buffered ) ;
70+
71+ public IEnumerable < TReturn > Read < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TSeventh , TReturn > (
72+ Func < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TSeventh , TReturn > func , string splitOn = "id" ,
73+ bool buffered = true ) =>
74+ _gridReader . Read < TFirst , TSecond , TThird , TFourth , TFifth , TSixth , TSeventh , TReturn > ( func , splitOn ,
75+ buffered ) ;
76+
77+ public IEnumerable < TReturn > Read < TReturn > ( Type [ ] types , Func < object [ ] , TReturn > map , string splitOn = "id" ,
78+ bool buffered = true ) => _gridReader . Read < TReturn > ( types , map , splitOn , buffered ) ;
79+
80+ public bool IsConsumed => _gridReader . IsConsumed ;
81+
82+ public IDbCommand Command
83+ {
84+ get => _gridReader . Command ;
85+ set => _gridReader . Command = value ;
86+ }
87+
88+ public void Dispose ( )
89+ {
90+ _gridReader . Dispose ( ) ;
91+ }
92+
93+ public async Task < IEnumerable < dynamic > > ReadAsync ( bool buffered = true ) => await _gridReader . ReadAsync ( buffered ) ;
94+
95+ public async Task < dynamic > ReadFirstAsync ( ) => await _gridReader . ReadFirstAsync ( ) ;
96+
97+ public async Task < dynamic > ReadFirstOrDefaultAsync ( ) => await _gridReader . ReadFirstOrDefaultAsync ( ) ;
98+
99+ public async Task < dynamic > ReadSingleAsync ( ) => await _gridReader . ReadSingleAsync ( ) ;
100+
101+ public async Task < dynamic > ReadSingleOrDefaultAsync ( ) => await _gridReader . ReadSingleOrDefaultAsync ( ) ;
102+
103+ public async Task < IEnumerable < object > > ReadAsync ( Type type , bool buffered = true ) =>
104+ await _gridReader . ReadAsync ( type , buffered ) ;
105+
106+ public async Task < object > ReadFirstAsync ( Type type ) => await _gridReader . ReadFirstAsync ( type ) ;
107+
108+ public async Task < object > ReadFirstOrDefaultAsync ( Type type ) => await _gridReader . ReadFirstOrDefaultAsync ( type ) ;
109+
110+ public async Task < object > ReadSingleAsync ( Type type ) => await _gridReader . ReadSingleAsync ( type ) ;
111+
112+ public async Task < object > ReadSingleOrDefaultAsync ( Type type ) =>
113+ await _gridReader . ReadSingleOrDefaultAsync ( type ) ;
114+
115+ public async Task < IEnumerable < T > > ReadAsync < T > ( bool buffered = true ) =>
116+ await _gridReader . ReadAsync < T > ( buffered ) ;
117+
118+ public async Task < T > ReadFirstAsync < T > ( ) => await _gridReader . ReadFirstAsync < T > ( ) ;
119+
120+ public async Task < T > ReadFirstOrDefaultAsync < T > ( ) => await _gridReader . ReadFirstOrDefaultAsync < T > ( ) ;
121+
122+ public async Task < T > ReadSingleAsync < T > ( ) => await _gridReader . ReadSingleAsync < T > ( ) ;
123+
124+ public async Task < T > ReadSingleOrDefaultAsync < T > ( ) => await _gridReader . ReadSingleOrDefaultAsync < T > ( ) ;
125+
126+ }
127+ }
0 commit comments