securitySession method
Implementation
@override
Future<SessionData?> securitySession(SessionData? responseData) async {
if (sessionState == SecurityState.REQUEST1) {
sessionState = SecurityState.RESPONSE1_REQUEST2;
return await setup0Request();
}
if (sessionState == SecurityState.RESPONSE1_REQUEST2) {
sessionState = SecurityState.RESPONSE2;
if (responseData == null) {
throw Exception('Response Data is null, when needed: if-Statement SecurityState.RESPONSE1_REQUEST2');
}
await setup0Response(responseData);
return await setup1Request(responseData);
}
if (sessionState == SecurityState.RESPONSE2) {
sessionState = SecurityState.FINISH;
if (responseData == null) {
throw Exception('Response Data is null, when needed: if-Statement SecurityState.RESPONSE2');
}
await setup1Response(responseData);
return null;
}
throw Exception('Unexpected state');
}