read method

Future<(UResponse<List<UTxnResponse>>?, UEmptyResponse?, String?)> read({
  1. required UTxnReadParams p,
  2. required dynamic onOk(
    1. UResponse<List<UTxnResponse>> r
    )?,
  3. required dynamic onError(
    1. UEmptyResponse e
    )?,
  4. required dynamic onException(
    1. String e
    )?,
})

Implementation

Future<(UResponse<List<UTxnResponse>>?, UEmptyResponse?, String?)> read({
  required UTxnReadParams p,
  required Function(UResponse<List<UTxnResponse>> r)? onOk,
  required Function(UEmptyResponse e)? onError,
  required Function(String e)? onException,
}) async {
  (UResponse<List<UTxnResponse>>?, UEmptyResponse?, String?) result = (null, null, null);
  await UHttpClient.send(
    method: "POST",
    endpoint: "${U.baseUrl}/txn/Read",
    body: p.toMap().add("apiKey", U.apiKey).add("token", ULocalStorage.getToken()),
    onSuccess: (Response r) {
      final UResponse<List<UTxnResponse>> ok = UResponse<List<UTxnResponse>>.fromJson(
        r.body,
        (dynamic i) => List<UTxnResponse>.from((i as List<dynamic>).map((dynamic x) => UTxnResponse.fromMap(x))),
      );
      result = (ok, null, null);
      onOk?.call(ok);
    },
    onError: (Response r) {
      final UEmptyResponse err = UEmptyResponse.fromJson(r.body);
      result = (null, err, null);
      onError?.call(err);
    },
    onException: (String e) {
      result = (null, null, e);
      onException?.call(e);
    },
  );
  return result;
}