setup method
void
setup()
Implementation
void setup() {
// api
coreLocator.registerFactory(
() => UserApi(
settings:
coreLocator.get<PreferencesSettings>(instanceName: 'preferences'),
),
);
// data source
coreLocator.registerFactory<UserRemoteDataSource>(
() => UserRemoteDataSourceImpl(
api: coreLocator.get<UserApi>(),
),
);
// repository
coreLocator.registerFactory<UserRepository>(
() => UserRepositoryImpl(
remoteDataSource: coreLocator.get<UserRemoteDataSource>(),
settings:
coreLocator.get<PreferencesSettings>(instanceName: 'preferences'),
),
);
// use cases
coreLocator.registerFactory(
() => CreateUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetRolesFromUserIdUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetUserByIdUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetUsersByParamsUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetUsersDisponiveisUseCase(
repository: coreLocator.get(),
),
);
coreLocator.registerFactory(
() => UpdateUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => SetUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => GetRoutesFromUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => RestorePasswordUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => UpdatePasswordUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => UploadPhotoUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => DeletePhotoUserUseCase(
repository: coreLocator.get<UserRepository>(),
),
);
coreLocator.registerFactory(
() => UserUpdateSettingsUseCase(repository: coreLocator.get()));
// view models
coreLocator.registerFactory(
() => UserFastCadastroViewModel(
getUsersByParams: coreLocator.get(),
createUser: coreLocator.get(),
),
);
}