Implementation
Future<FetchedProduct> getFetchedProduct() async {
final ProductQueryConfiguration configuration = ProductQueryConfiguration(
barcode,
fields: ProductQuery.fields,
language: ProductQuery.getLanguage(),
country: ProductQuery.getCountry(),
);
final ProductResult result;
try {
result = await OpenFoodAPIClient.getProduct(configuration);
} catch (e) {
return FetchedProduct.error(FetchedProductStatus.internetError);
}
if (result.status == 1) {
final Product? product = result.product;
if (product != null) {
await daoProduct.put(product);
return FetchedProduct(product);
}
}
return FetchedProduct.error(FetchedProductStatus.internetNotFound);
}