Skip to content

Commit

Permalink
Add onAuthFailure method for AuthProvider (#18)
Browse files Browse the repository at this point in the history
* Add onAuthFailure method for AuthProvider

* Add onAuthFailure method for AuthProvider

* Add onAuthFailure method for AuthProvider
  • Loading branch information
alfianlosari authored Oct 20, 2023
1 parent fd8550c commit 7e12627
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 2 deletions.
1 change: 1 addition & 0 deletions courier_dart_sdk/lib/auth/auth_provider.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ import 'package:courier_dart_sdk/courier_connect_options.dart';

abstract class AuthProvider {
Future<CourierConnectOptions> fetchConnectOptions();
Future<void> onAuthFailure();
}
3 changes: 3 additions & 0 deletions courier_dart_sdk/lib/auth/dio_auth_provider.dart
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,7 @@ class DioAuthProvider implements AuthProvider {
type: DioExceptionType.connectionError);
}
}

@override
Future<void> onAuthFailure() async {}
}
5 changes: 3 additions & 2 deletions courier_dart_sdk/lib/courier_client.dart
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ class _CourierClientImpl implements CourierClient {
Future<dynamic> _callbackHandler(MethodCall methodCall) async {
switch (methodCall.method) {
case 'onAuthFailure':
_handleAuthFailure();
await _handleAuthFailure();
return;
case 'onMessageReceive':
_handleMessage(methodCall.arguments);
Expand All @@ -278,7 +278,8 @@ class _CourierClientImpl implements CourierClient {
}
}

void _handleAuthFailure() {
Future<void> _handleAuthFailure() async {
await authProvider.onAuthFailure();
connect();
}

Expand Down
3 changes: 3 additions & 0 deletions courier_dart_sdk_demo/lib/local_auth_provider.dart
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,7 @@ class LocalAuthProvider implements AuthProvider {
Future<CourierConnectOptions> fetchConnectOptions() {
return Future<CourierConnectOptions>.value(connectOptions);
}

@override
Future<void> onAuthFailure() async {}
}

0 comments on commit 7e12627

Please sign in to comment.