read method

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

Implementation

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