[mob][photos] Init magic cache service only if internal user (#2445)

This commit is contained in:
Ashil
2024-07-15 18:23:30 +05:30
committed by GitHub
2 changed files with 8 additions and 5 deletions

View File

@@ -307,7 +307,9 @@ Future<void> _init(bool isBackground, {String via = ''}) async {
preferences,
);
MagicCacheService.instance.init(preferences);
if (flagService.internalUser) {
MagicCacheService.instance.init(preferences);
}
initComplete = true;
_logger.info("Initialization done");

View File

@@ -77,11 +77,12 @@ class MagicCacheService {
MagicCacheService._privateConstructor();
void init(SharedPreferences preferences) {
_logger.info("Initializing MagicCacheService");
_prefs = preferences;
_updateCacheIfTheTimeHasCome();
}
Future<void> resetLastMagicCacheUpdateTime() async {
Future<void> _resetLastMagicCacheUpdateTime() async {
await _prefs.setInt(
_lastMagicCacheUpdateTime,
DateTime.now().millisecondsSinceEpoch,
@@ -130,14 +131,14 @@ class MagicCacheService {
try {
_logger.info("updating magic cache");
final magicPromptsData = await _loadMagicPrompts();
final magicCaches = await nonEmptyMagicResults(magicPromptsData);
final magicCaches = await _nonEmptyMagicResults(magicPromptsData);
final file = File(await _getCachePath());
if (!file.existsSync()) {
file.createSync(recursive: true);
}
file.writeAsBytesSync(MagicCache.encodeListToJson(magicCaches).codeUnits);
unawaited(
resetLastMagicCacheUpdateTime().onError((error, stackTrace) {
_resetLastMagicCacheUpdateTime().onError((error, stackTrace) {
_logger.warning(
"Error resetting last magic cache update time",
error,
@@ -194,7 +195,7 @@ class MagicCacheService {
///Returns random non-empty magic results from magicPromptsData
///Length is capped at [limit], can be less than [limit] if there are not enough
///non-empty results
Future<List<MagicCache>> nonEmptyMagicResults(
Future<List<MagicCache>> _nonEmptyMagicResults(
List<dynamic> magicPromptsData,
) async {
//Show all magic prompts to internal users for feedback on results