From 9ead1cc79f3823536ced7d22394f4f30dd32ebd6 Mon Sep 17 00:00:00 2001 From: Ankit Mahato Date: Mon, 27 Mar 2023 14:01:26 +0530 Subject: [PATCH] Model Map Parsing --- lib/models/request_model.dart | 19 +++++++++++-------- lib/models/response_model.dart | 10 ++++++---- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/lib/models/request_model.dart b/lib/models/request_model.dart index 5348d88e..baba83ed 100644 --- a/lib/models/request_model.dart +++ b/lib/models/request_model.dart @@ -87,10 +87,8 @@ class RequestModel { method = kDefaultHttpMethod; } final url = data["url"] as String; - final requestHeaders = - mapToRows(data["requestHeaders"] as Map?); - final requestParams = - mapToRows(data["requestParams"] as Map?); + final requestHeaders = data["requestHeaders"]; + final requestParams = data["requestParams"]; try { requestBodyContentType = ContentType.values.byName(data["requestBodyContentType"] as String); @@ -100,9 +98,10 @@ class RequestModel { final requestBody = data["requestBody"] as String?; final responseStatus = data["responseStatus"] as int?; final message = data["message"] as String?; - final responseModelJson = data["responseModel"] as Map?; + final responseModelJson = data["responseModel"]; if (responseModelJson != null) { - responseModel = ResponseModel.fromJson(responseModelJson); + responseModel = + ResponseModel.fromJson(Map.from(responseModelJson)); } else { responseModel = null; } @@ -112,8 +111,12 @@ class RequestModel { method: method, url: url, requestTabIndex: 0, - requestHeaders: requestHeaders, - requestParams: requestParams, + requestHeaders: requestHeaders != null + ? mapToRows(Map.from(requestHeaders)) + : null, + requestParams: requestParams != null + ? mapToRows(Map.from(requestParams)) + : null, requestBodyContentType: requestBodyContentType, requestBody: requestBody, responseStatus: responseStatus, diff --git a/lib/models/response_model.dart b/lib/models/response_model.dart index c12ab6cc..94df4cbb 100644 --- a/lib/models/response_model.dart +++ b/lib/models/response_model.dart @@ -66,8 +66,8 @@ class ResponseModel { MediaType? mediaType; Duration? timeElapsed; final statusCode = data["statusCode"] as int?; - final headers = data["headers"] as Map?; - final requestHeaders = data["requestHeaders"] as Map?; + final headers = data["headers"]; + final requestHeaders = data["requestHeaders"]; final contentType = headers?[HttpHeaders.contentTypeHeader]; try { mediaType = MediaType.parse(contentType!); @@ -82,8 +82,10 @@ class ResponseModel { } return ResponseModel( statusCode: statusCode, - headers: headers, - requestHeaders: requestHeaders, + headers: headers != null ? Map.from(headers) : null, + requestHeaders: requestHeaders != null + ? Map.from(requestHeaders) + : null, contentType: contentType, mediaType: mediaType, body: body,