queryFiles method
Returns file objects in the study based on a query
.
If query
is omitted, all file objects are returned.
Implementation
Future<List<CarpFileResponse>> queryFiles([String? query]) async {
final String url =
(query != null) ? "$fileEndpointUri?query=$query" : fileEndpointUri;
http.Response response =
await httpr.get(Uri.encodeFull(url), headers: headers);
int httpStatusCode = response.statusCode;
print(response.body);
switch (httpStatusCode) {
case 200:
{
List<dynamic> list = json.decode(response.body) as List<dynamic>;
List<CarpFileResponse> fileList = [];
for (var element in list) {
fileList.add(CarpFileResponse._(element as Map<String, dynamic>));
}
return fileList;
}
default:
// All other cases are treated as an error.
{
Map<String, dynamic> responseJson =
json.decode(response.body) as Map<String, dynamic>;
throw CarpServiceException(
httpStatus: HTTPStatus(httpStatusCode, response.reasonPhrase),
message: responseJson["message"].toString(),
path: responseJson["path"].toString(),
);
}
}
}