diff --git a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestoreMessageCodec.java b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestoreMessageCodec.java index 0cda45241cb0..c7ceb6b36f7c 100644 --- a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestoreMessageCodec.java +++ b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestoreMessageCodec.java @@ -388,6 +388,7 @@ private Filter filterFromJson(Map map) { } // Deserialize a FilterOperator String op = (String) map.get("op"); + @SuppressWarnings("unchecked") List> queries = (List>) map.get("queries"); // Map queries recursively @@ -428,7 +429,9 @@ private Query readFirestoreQuery(ByteBuffer buffer) { boolean isFilterQuery = parameters.containsKey("filters"); if (isFilterQuery) { - Filter filter = filterFromJson((Map) parameters.get("filters")); + @SuppressWarnings("unchecked") + Filter filter = + filterFromJson((Map) Objects.requireNonNull(parameters.get("filters"))); query = query.where(filter); } diff --git a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestorePlugin.java b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestorePlugin.java index 719493f009a4..3bc4f26bf2a7 100644 --- a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestorePlugin.java +++ b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestorePlugin.java @@ -262,14 +262,14 @@ private String registerEventChannel(String prefix, String identifier, StreamHand private void removeEventListeners() { synchronized (eventChannels) { for (String identifier : eventChannels.keySet()) { - eventChannels.get(identifier).setStreamHandler(null); + Objects.requireNonNull(eventChannels.get(identifier)).setStreamHandler(null); } eventChannels.clear(); } synchronized (streamHandlers) { for (String identifier : streamHandlers.keySet()) { - streamHandlers.get(identifier).onCancel(null); + Objects.requireNonNull(streamHandlers.get(identifier)).onCancel(null); } streamHandlers.clear(); } @@ -291,7 +291,7 @@ static FirebaseFirestoreSettings getSettingsFromPigeon( Long receivedCacheSizeBytes = pigeonApp.getSettings().getCacheSizeBytes(); // This is the maximum amount of cache allowed: // https://firebase.google.com/docs/firestore/manage-data/enable-offline#configure_cache_size - Long cacheSizeBytes = 104857600L; + long cacheSizeBytes = 104857600L; if (receivedCacheSizeBytes != null && receivedCacheSizeBytes != -1) { cacheSizeBytes = receivedCacheSizeBytes; } @@ -454,6 +454,8 @@ public void waitForPendingWrites( } @Override + // Suppressed because we have already annotated the user facing Dart API as deprecated. + @SuppressWarnings("deprecation") public void setIndexConfiguration( @NonNull GeneratedAndroidFirebaseFirestore.FirestorePigeonFirebaseApp app, @NonNull String indexConfiguration, diff --git a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/utils/PigeonParser.java b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/utils/PigeonParser.java index 8dde6bd14439..6595e952e934 100644 --- a/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/utils/PigeonParser.java +++ b/packages/cloud_firestore/cloud_firestore/android/src/main/java/io/flutter/plugins/firebase/firestore/utils/PigeonParser.java @@ -292,6 +292,7 @@ private static Filter filterFromJson(Map map) { } // Deserialize a FilterOperator String op = (String) map.get("op"); + @SuppressWarnings("unchecked") List> queries = (List>) map.get("queries"); // Map queries recursively diff --git a/packages/cloud_firestore/cloud_firestore/example/integration_test/instance_e2e.dart b/packages/cloud_firestore/cloud_firestore/example/integration_test/instance_e2e.dart index a599d0935dce..be1f4a37bff0 100644 --- a/packages/cloud_firestore/cloud_firestore/example/integration_test/instance_e2e.dart +++ b/packages/cloud_firestore/cloud_firestore/example/integration_test/instance_e2e.dart @@ -226,7 +226,7 @@ void runInstanceTests() { ], collectionGroup: 'collectiongroup', ); - + // ignore_for_file: deprecated_member_use await firestore.setIndexConfiguration( indexes: [index1, index2], fieldOverrides: [fieldOverride1, fieldOverride2], diff --git a/packages/cloud_firestore/cloud_firestore/lib/src/firestore.dart b/packages/cloud_firestore/cloud_firestore/lib/src/firestore.dart index be5d6a47e757..cf5d0c5bdb9c 100644 --- a/packages/cloud_firestore/cloud_firestore/lib/src/firestore.dart +++ b/packages/cloud_firestore/cloud_firestore/lib/src/firestore.dart @@ -334,8 +334,8 @@ class FirebaseFirestore extends FirebasePluginPlatform { /// require indexing even if the indices are not yet available. Query execution will automatically /// start using the index once the index entries have been written. /// - /// This API is in preview mode and is subject to change. - @experimental + /// This API is now deprecated + @Deprecated('setIndexConfiguration() has been deprecated.') Future setIndexConfiguration({ required List indexes, List? fieldOverrides,