validateSession method
Future<void>
validateSession(
)
Implementation
Future<void> validateSession() async {
try {
if (await provider.validateSession()) {
final user = state.user;
if (!user.isValid ||
(user.username != await provider.getLoggedInUsername()) ||
state.session.isTimedout(user)) {
// if user is not valid or session
// as timedout sign out the user
provider.signOut();
} else {
// session and user in context is valid
return;
}
}
// reset the state
emit(const IdentityState());
} catch (error, stackTrace) {
_logger.severe('Error validating session: ', error, stackTrace);
emit(state.addMessage(
Message.error(_localizations.sessionValidationFailed),
error,
stackTrace,
));
}
}