initialize method
Initializes the cache manager
Implementation
Future<void> initialize() async {
if (_isInitialized) return;
try {
// Initialize the disk cache directory
if (diskCacheDirectory != null) {
_diskCacheDir = Directory(diskCacheDirectory!);
} else {
final appDir = await getApplicationDocumentsDirectory();
_diskCacheDir = Directory(path.join(appDir.path, 'cache'));
}
// Create the directory if it doesn't exist
if (!await _diskCacheDir.exists()) {
await _diskCacheDir.create(recursive: true);
}
// Clean up expired cache entries
await _cleanupExpiredEntries();
_isInitialized = true;
logger?.info('Cache manager initialized');
} catch (e) {
logger?.error('Error initializing cache manager: $e');
rethrow;
}
}