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;