fix : di for Role

This commit is contained in:
2025-09-03 11:43:52 +03:30
parent ebec27b630
commit 8e9768daf6
9 changed files with 74 additions and 86 deletions

View File

@@ -19,11 +19,11 @@ extension HiveRegistrar on HiveInterface {
extension IsolatedHiveRegistrar on IsolatedHiveInterface {
void registerAdapters() {
registerAdapter(HerdLocalAdapter());
registerAdapter(LivestockLocalAdapter());
registerAdapter(LivestockLocalModelAdapter());
registerAdapter(LocationLocalAdapter());
registerAdapter(RancherLocalAdapter());
registerAdapter(TmpLocationsAdapter());
registerAdapter(HerdLocalAdapter(), override: true);
registerAdapter(LivestockLocalAdapter(), override: true);
registerAdapter(LivestockLocalModelAdapter(), override: true);
registerAdapter(LocationLocalAdapter(), override: true);
registerAdapter(RancherLocalAdapter(), override: true);
registerAdapter(TmpLocationsAdapter(), override: true);
}
}

View File

@@ -1,5 +1,4 @@
import 'package:rasadyar_core/core.dart';
import 'package:rasadyar_livestock/data/common/constant.dart';
import 'package:rasadyar_livestock/data/common/dio_exception_handeler.dart';
import 'package:rasadyar_livestock/data/data_source/remote/auth/auth_remote.dart';
import 'package:rasadyar_livestock/data/data_source/remote/auth/auth_remote_imp.dart';
@@ -14,10 +13,11 @@ import 'package:rasadyar_livestock/presentation/routes/app_pages.dart';
import '../data/data_source/local/tmp/tmp_local_data-source.dart';
GetIt get diLiveStock => GetIt.instance;
GetIt diLiveStock= GetIt.asNewInstance();
Future<void> setupLiveStockDI() async {
diLiveStock.registerSingleton(DioErrorHandler());
await IsolatedHive.initFlutter();
IsolatedHive.registerAdapters();
final tokenService = Get.find<TokenStorageService>();
@@ -30,7 +30,7 @@ Future<void> setupLiveStockDI() async {
diLiveStock.registerLazySingleton<AppInterceptor>(
() => AppInterceptor(
refreshTokenCallback: () async {
// Use lazy access to avoid circular dependency
// Use lazy access to avoid circular dependency
final authRepository = diLiveStock.get<AuthRepository>();
final hasAuthenticated = await authRepository.hasAuthenticated();
if (hasAuthenticated) {
@@ -95,7 +95,12 @@ Future<void> setupLiveStockDI() async {
}
Future<void> removeLiveStockDI() async {
if (diLiveStock.isRegistered<DioErrorHandler>()) {
eLog("removeLiveStockDI");
await diLiveStock.resetScope();
/* if (diLiveStock.isRegistered<DioErrorHandler>()) {
diLiveStock.unregister<DioErrorHandler>();
}
if (diLiveStock.isRegistered<AppInterceptor>()) {
@@ -121,5 +126,5 @@ Future<void> removeLiveStockDI() async {
}
if (diLiveStock.isRegistered<ImagePicker>()) {
diLiveStock.unregister<ImagePicker>();
}
}*/
}