setup method
void
setup()
Implementation
void setup() {
// api
coreLocator.registerFactory(
() => TokenApi(
settings:
coreLocator.get<PreferencesSettings>(instanceName: 'preferences'),
),
);
// data source
coreLocator.registerFactory<TokenRemoteDataSource>(
() => TokenRemoteDataSourceImpl(
api: coreLocator.get<TokenApi>(),
),
);
// repository
coreLocator.registerFactory<TokenRepository>(
() => TokenRepositoryImpl(
remoteDataSource: coreLocator.get<TokenRemoteDataSource>(),
settings:
coreLocator.get<PreferencesSettings>(instanceName: 'preferences'),
),
);
// use cases
coreLocator.registerFactory<LoginUseCase>(
() => LoginUseCaseImpl(
repository: coreLocator.get<TokenRepository>(),
),
);
coreLocator.registerFactory(
() => LogoutUseCase(
repository: coreLocator.get<TokenRepository>(),
),
);
coreLocator.registerFactory(
() => SetTokenUseCase(
repository: coreLocator.get<TokenRepository>(),
),
);
coreLocator.registerFactory(
() => GetTokenUseCase(
repository: coreLocator.get<TokenRepository>(),
),
);
}