getMassiveActionsItem method Null safety
- GlpiItemType itemType,
- int id
Return the availables massive actions for a given itemType
and id
.
Reference: https://github.com/glpi-project/glpi/blob/master/apirest.md#get-available-massive-actions-for-an-item
Implementation
Future<List<Map<String, String>>> getMassiveActionsItem(
GlpiItemType itemType, int id) async {
if (_sessionToken!.isEmpty) {
throw Exception('No session token, initSession first');
}
final Map<String, String> headers = {
'Session-Token': _sessionToken!,
'Content-Type': 'application/json',
...?appToken != null ? {'App-Token': appToken!} : null,
};
final uri = Uri.parse(
'$baseUrl/getMassiveActions/${itemType.toString().split('.').last}/$id');
final response = await http.get(uri, headers: headers);
if (response.statusCode != 200 && response.statusCode != 207) {
throw GlpiException.fromResponse(
response.statusCode, json.decode(response.body));
}
List<dynamic> decodedJson = json.decode(response.body);
List<Map<String, String>> formatted = decodedJson.map((element) {
return element as Map<String, String>;
}).toList();
return Future.value(formatted);
}