2024-04-23 06:24:24 +00:00
|
|
|
import "package:dio/dio.dart";
|
2024-04-23 10:25:22 +00:00
|
|
|
import "package:ente_cast/ente_cast.dart";
|
2024-04-24 09:52:24 +00:00
|
|
|
import "package:ente_cast_normal/ente_cast_normal.dart";
|
2024-04-23 06:24:24 +00:00
|
|
|
import "package:ente_feature_flag/ente_feature_flag.dart";
|
|
|
|
import "package:shared_preferences/shared_preferences.dart";
|
|
|
|
|
|
|
|
class ServiceLocator {
|
|
|
|
late final SharedPreferences prefs;
|
|
|
|
late final Dio enteDio;
|
|
|
|
|
|
|
|
// instance
|
|
|
|
ServiceLocator._privateConstructor();
|
|
|
|
|
|
|
|
static final ServiceLocator instance = ServiceLocator._privateConstructor();
|
|
|
|
|
|
|
|
init(SharedPreferences prefs, Dio enteDio) {
|
|
|
|
this.prefs = prefs;
|
|
|
|
this.enteDio = enteDio;
|
|
|
|
}
|
|
|
|
}
|
2024-04-23 10:38:16 +00:00
|
|
|
|
|
|
|
FlagService? _flagService;
|
|
|
|
|
|
|
|
FlagService get flagService {
|
|
|
|
_flagService ??= FlagService(
|
|
|
|
ServiceLocator.instance.prefs,
|
|
|
|
ServiceLocator.instance.enteDio,
|
|
|
|
);
|
|
|
|
return _flagService!;
|
|
|
|
}
|
|
|
|
|
|
|
|
CastService? _castService;
|
|
|
|
CastService get castService {
|
|
|
|
_castService ??= CastServiceImpl();
|
|
|
|
return _castService!;
|
|
|
|
}
|