readOrgData method

Future<void> readOrgData(
  1. Organization org
)

Implementation

Future<void> readOrgData(Organization org) async {
  emit(state.startLoading(readOrgDataLoading));

  try {
    final orgData = await provider.getOrgData(org.orgId);
    emit(state.copyWith(selectedOrgData: orgData));
  } on OrgDoesNotExistError catch (e) {
    _logger.severe('Error reading org data: $e');
    emit(
      state
          .addMessage(Message.error(
            _localizations.orgNotFoundError(org.name),
          ))
          .copyWith(resetSelectedOrgData: true),
    );
  } on OrgDataReadError catch (_) {
    emit(
      state
          .addMessage(Message.error(
            _localizations.readOrgDataError,
          ))
          .copyWith(selectedOrgData: null),
    );
  } catch (e) {
    _logger.severe('Error reading org data: $e');

    emit(
      state
          .addMessage(Message.error(
            _localizations.unknownError,
          ))
          .copyWith(selectedOrgData: null),
    );
  } finally {
    emit(state.endLoading(readOrgDataLoading));
  }
}