11import 'package:appium_flutter_server/src/exceptions/stale_element_reference_exception.dart' ;
22import 'package:appium_flutter_server/src/internal/flutter_element.dart' ;
33import 'package:appium_flutter_server/src/internal/flutter_finder_strategy.dart' ;
4+ import 'package:appium_flutter_server/src/internal/lru_cache.dart' ;
45import 'package:appium_flutter_server/src/logger.dart' ;
5- import 'package:appium_flutter_server/src/utils/element_helper .dart' ;
6+ import 'package:appium_flutter_server/src/utils/test_utils .dart' ;
67import 'package:flutter/widgets.dart' ;
78import 'package:flutter_test/flutter_test.dart' ;
89import 'package:synchronized/extension.dart' ;
9- import 'package:quiver/collection.dart' ;
1010
1111class ElementsCache {
12- late LruMap <String , FlutterElement > cache;
12+ late LRUCache <String , FlutterElement > cache;
1313
1414 ElementsCache (int cacheSize) {
15- cache = LruMap (maximumSize : cacheSize);
15+ cache = LRUCache ( cacheSize);
1616 }
1717
1818 Future <FlutterElement > get (String id, {bool evaluatePresence = true }) async {
1919 return synchronized (() async {
20- FlutterElement ? element = cache[id] ;
20+ FlutterElement ? element = cache. get (id) ;
2121 if (element == null ) {
2222 try {
2323 element = await FlutterFinderStrategy .findElement (id);
@@ -44,8 +44,8 @@ class ElementsCache {
4444 {bool isSingle = true , String ? contextId}) {
4545 return synchronized (() {
4646 FlutterElement flutterElement = FlutterElement .childElement (
47- by, ElementHelper . generateUuid (by), contextId);
48- cache[ flutterElement.id] = flutterElement;
47+ by, generateUUIDFromFinder (by), contextId);
48+ cache. put ( flutterElement.id, flutterElement) ;
4949 return flutterElement;
5050 });
5151 }
0 commit comments