getLatestBackendVersion method
Retrieves the latest backend version from Firestore. Returns a Future of FirewayModel.
Implementation
Future<FirewayModel> getLatestBackendVersion() async {
try {
final query = _db
.collection('fireway')
.orderBy('installed_on', descending: true)
.limit(1);
final snapshot = await query.get();
final list = snapshot.docs.map<Future<FirewayModel>>((document) async {
final model = await FirewayModel.fromJson(document.data());
model.uid = document.id;
return model;
}).toList();
if (list.isNotEmpty) {
return list.first;
}
throw FirewayDataServiceException(
code: RdevCode.NotFound, message: 'Fireway Version data not found');
} catch (err) {
if (err is FirewayDataServiceException) {
rethrow;
}
throw FirewayDataServiceException(
message: err.toString(),
);
}
}