TF-571 Setup and get OIDC configuration
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
|
||||
import 'package:model/oidc/oidc_configuration.dart';
|
||||
import 'package:model/oidc/request/oidc_request.dart';
|
||||
|
||||
abstract class AuthenticationOIDCRepository {
|
||||
Future<bool> checkOIDCIsAvailable(OIDCRequest oidcRequest);
|
||||
|
||||
Future<OIDCConfiguration> getOIDCConfiguration(Uri baseUri);
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
import 'package:core/core.dart';
|
||||
import 'package:model/model.dart';
|
||||
|
||||
class GetOIDCConfigurationSuccess extends UIState {
|
||||
|
||||
final OIDCConfiguration oidcConfiguration;
|
||||
|
||||
GetOIDCConfigurationSuccess(this.oidcConfiguration);
|
||||
|
||||
@override
|
||||
List<Object> get props => [oidcConfiguration];
|
||||
}
|
||||
|
||||
class GetOIDCConfigurationFailure extends FeatureFailure {
|
||||
final dynamic exception;
|
||||
|
||||
GetOIDCConfigurationFailure(this.exception);
|
||||
|
||||
@override
|
||||
List<Object> get props => [exception];
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
import 'package:core/core.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_oidc_configuration_state.dart';
|
||||
|
||||
class GetOIDCConfigurationInteractor {
|
||||
final AuthenticationOIDCRepository _oidcRepository;
|
||||
|
||||
GetOIDCConfigurationInteractor(this._oidcRepository);
|
||||
|
||||
Future<Either<Failure, Success>> execute(Uri baseUri) async {
|
||||
try {
|
||||
final oidcConfiguration = await _oidcRepository.getOIDCConfiguration(baseUri);
|
||||
log('GetOIDCConfigurationInteractor::execute(): oidcConfiguration: $oidcConfiguration');
|
||||
return Right<Failure, Success>(GetOIDCConfigurationSuccess(oidcConfiguration));
|
||||
} catch (e) {
|
||||
log('GetOIDCConfigurationInteractor::execute(): ERROR: $e');
|
||||
return Left<Failure, Success>(GetOIDCConfigurationFailure(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user