APIResponse<T> constructor

APIResponse<T>(
  1. APIResponseStatus status, {
  2. Map<String, dynamic>? headers,
  3. T? payload,
  4. Object? payloadDynamic,
  5. Object? payloadMimeType,
  6. Etag? payloadETag,
  7. CacheControl? cacheControl,
  8. String? payloadFileExtension,
  9. Duration? keepAliveTimeout,
  10. int? keepAliveMaxRequests,
  11. dynamic error,
  12. StackTrace? stackTrace,
  13. Map<String, APIMetric>? metrics,
})

Constructs an APIResponse.

  • payloadDynamic is only used if payload is null and T accepts the payloadDynamic value.

Implementation

APIResponse(
  this.status, {
  Map<String, dynamic>? headers,
  T? payload,
  Object? payloadDynamic,
  Object? payloadMimeType,
  this.payloadETag,
  this.cacheControl,
  this.payloadFileExtension,
  Duration? keepAliveTimeout,
  int? keepAliveMaxRequests,
  this.error,
  this.stackTrace,
  super.metrics,
}) : headers = headers ?? <String, dynamic>{},
     payload = _resolvePayload(payload, payloadDynamic),
     _payloadMimeType = APIPayload.resolveMimeType(payloadMimeType),
     keepAliveTimeout = keepAliveTimeout ?? const Duration(seconds: 10),
     keepAliveMaxRequests = keepAliveMaxRequests ?? 1000;