Showing
1 changed file
with
23 additions
and
0 deletions
| 1 | import 'dart:collection'; | 1 | import 'dart:collection'; |
| 2 | import 'dart:convert'; | 2 | import 'dart:convert'; |
| 3 | + | ||
| 3 | import '../exceptions/exceptions.dart'; | 4 | import '../exceptions/exceptions.dart'; |
| 4 | import '../request/request.dart'; | 5 | import '../request/request.dart'; |
| 5 | import '../status/http_status.dart'; | 6 | import '../status/http_status.dart'; |
| 6 | 7 | ||
| 7 | class GraphQLResponse<T> extends Response<T> { | 8 | class GraphQLResponse<T> extends Response<T> { |
| 8 | final List<GraphQLError>? graphQLErrors; | 9 | final List<GraphQLError>? graphQLErrors; |
| 10 | + | ||
| 9 | GraphQLResponse({T? body, this.graphQLErrors}) : super(body: body); | 11 | GraphQLResponse({T? body, this.graphQLErrors}) : super(body: body); |
| 12 | + | ||
| 10 | GraphQLResponse.fromResponse(Response res) | 13 | GraphQLResponse.fromResponse(Response res) |
| 11 | : graphQLErrors = null, | 14 | : graphQLErrors = null, |
| 12 | super( | 15 | super( |
| @@ -30,6 +33,26 @@ class Response<T> { | @@ -30,6 +33,26 @@ class Response<T> { | ||
| 30 | this.body, | 33 | this.body, |
| 31 | }); | 34 | }); |
| 32 | 35 | ||
| 36 | + Response<T> copyWith({ | ||
| 37 | + Request? request, | ||
| 38 | + int? statusCode, | ||
| 39 | + Stream<List<int>>? bodyBytes, | ||
| 40 | + String? bodyString, | ||
| 41 | + String? statusText, | ||
| 42 | + Map<String, String>? headers, | ||
| 43 | + T? body, | ||
| 44 | + }) { | ||
| 45 | + return Response<T>( | ||
| 46 | + request: request ?? this.request, | ||
| 47 | + statusCode: statusCode ?? this.statusCode, | ||
| 48 | + bodyBytes: bodyBytes ?? this.bodyBytes, | ||
| 49 | + bodyString: bodyString ?? this.bodyString, | ||
| 50 | + statusText: statusText ?? this.statusText, | ||
| 51 | + headers: headers ?? this.headers, | ||
| 52 | + body: body ?? this.body, | ||
| 53 | + ); | ||
| 54 | + } | ||
| 55 | + | ||
| 33 | /// The Http [Request] linked with this [Response]. | 56 | /// The Http [Request] linked with this [Response]. |
| 34 | final Request? request; | 57 | final Request? request; |
| 35 | 58 |
-
Please register or login to post a comment