             }
             let string = String(data: responseData, encoding: .utf8)
 
-            success(json as? [String : Any], string, responseJSON.data, httpStatusCode)
+            success(json as? [String : Any], string, responseJSON.data, httpStatusCode, request, .json(responseJSON))
             RGNetwork.hideIndicator()
         }
     }

            }
            let string = String(data: data, encoding: .utf8)

            success(nil, string, data, httpStatusCode)
            RGNetwork.hideIndicator()
        }
    }

    case data(DataResponse<Data>)
}

typealias SuccessTask = (ResponseJSON?, ResponseString?, ResponseData?, HttpStatusCode?, DataRequest, DataResponsePackage) -> Void
typealias FailureTask = (Error?, HttpStatusCode?, DataRequest, DataResponsePackage) -> Void

enum ResponseType {
