24 lines
617 B
Dart
24 lines
617 B
Dart
import 'dart:convert';
|
|
import 'dart:developer';
|
|
|
|
import '../../webuntis_api.dart';
|
|
import 'get_rooms_response.dart';
|
|
|
|
class GetRooms extends WebuntisApi {
|
|
GetRooms() : super('getRooms', null);
|
|
|
|
@override
|
|
Future<GetRoomsResponse> run() async {
|
|
final rawAnswer = await query(this);
|
|
try {
|
|
return finalize(GetRoomsResponse.fromJson(jsonDecode(rawAnswer) as Map<String, dynamic>));
|
|
} catch (e, trace) {
|
|
log(trace.toString());
|
|
log('Failed to parse getRoom data with server response: $rawAnswer');
|
|
}
|
|
|
|
throw Exception('Failed to parse getRoom server response: $rawAnswer');
|
|
}
|
|
|
|
}
|