get method

  1. @override
Future get(
  1. ApiRequest request
)
override

Implementation

@override
Future get(ApiRequest request) async {
  final id = request.route.getParam<Id?>(idParam);
  if (id != null) {
    if (TypeCheck<void>().isSubtypeOf<Id>()) {
      throw ApiRequestException.notFound();
    }

    return await getItemById(request, id);
  }

  if (request.getParam<String?>('\$count') != null) {
    return JsonResponse({'count': await getLength(request)});
  }

  final offset = request.getParam<int?>('offset') ?? 0;
  final length = request.getParam<int?>('length') ?? defaultQueryLength;
  return await getItems(request, offset, length);
}