From c2ae510aad6b05a06e0b1d8185e26ccdd7e95e1c Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 24 Jun 2020 10:46:44 -0400 Subject: [PATCH 1/5] Un-hide EmulatorSettings API --- firebase-common/api.txt | 26 +++++++++++++++++++ firebase-common/gradle.properties | 2 +- .../java/com/google/firebase/FirebaseApp.java | 8 ++---- .../emulators/EmulatedServiceSettings.java | 3 --- .../firebase/emulators/EmulatorSettings.java | 3 --- .../firebase/emulators/FirebaseEmulator.java | 3 --- firebase-database/CHANGELOG.md | 2 ++ firebase-database/api.txt | 1 + firebase-database/gradle.properties | 2 +- .../firebase/database/FirebaseDatabase.java | 8 +----- firebase-firestore/CHANGELOG.md | 2 ++ firebase-firestore/api.txt | 1 + firebase-firestore/gradle.properties | 2 +- .../firebase/firestore/FirebaseFirestore.java | 8 +----- firebase-functions/api.txt | 3 ++- firebase-functions/gradle.properties | 2 +- .../firebase/functions/FirebaseFunctions.java | 13 +++------- 17 files changed, 46 insertions(+), 43 deletions(-) diff --git a/firebase-common/api.txt b/firebase-common/api.txt index adbb4aa440e..4ba4bc16701 100644 --- a/firebase-common/api.txt +++ b/firebase-common/api.txt @@ -2,8 +2,10 @@ package com.google.firebase { public class FirebaseApp { + method public void enableEmulators(@NonNull com.google.firebase.emulators.EmulatorSettings); method @NonNull public android.content.Context getApplicationContext(); method @NonNull public static java.util.List getApps(@NonNull android.content.Context); + method @NonNull public com.google.firebase.emulators.EmulatorSettings getEmulatorSettings(); method @NonNull public static com.google.firebase.FirebaseApp getInstance(); method @NonNull public static com.google.firebase.FirebaseApp getInstance(@NonNull String); method @NonNull public String getName(); @@ -47,6 +49,30 @@ package com.google.firebase { } +package com.google.firebase.emulators { + + public final class EmulatedServiceSettings { + ctor public EmulatedServiceSettings(@NonNull String, int); + method public String getHost(); + method public int getPort(); + } + + public final class EmulatorSettings { + field public static final com.google.firebase.emulators.EmulatorSettings DEFAULT; + } + + public static final class EmulatorSettings.Builder { + ctor public EmulatorSettings.Builder(); + method @NonNull public com.google.firebase.emulators.EmulatorSettings.Builder addEmulatedService(@NonNull com.google.firebase.emulators.FirebaseEmulator, @NonNull com.google.firebase.emulators.EmulatedServiceSettings); + method @NonNull public com.google.firebase.emulators.EmulatorSettings build(); + } + + public final class FirebaseEmulator { + method public String getName(); + } + +} + package com.google.firebase.provider { public class FirebaseInitProvider extends android.content.ContentProvider { diff --git a/firebase-common/gradle.properties b/firebase-common/gradle.properties index 9cf896e0d12..6dd5dfa1d8c 100644 --- a/firebase-common/gradle.properties +++ b/firebase-common/gradle.properties @@ -1,3 +1,3 @@ -version=19.3.1 +version=19.4.0 latestReleasedVersion=19.3.0 android.enableUnitTestBinaryResources=true diff --git a/firebase-common/src/main/java/com/google/firebase/FirebaseApp.java b/firebase-common/src/main/java/com/google/firebase/FirebaseApp.java index dee3e1d9e90..255ffc38bc7 100644 --- a/firebase-common/src/main/java/com/google/firebase/FirebaseApp.java +++ b/firebase-common/src/main/java/com/google/firebase/FirebaseApp.java @@ -149,9 +149,8 @@ public FirebaseOptions getOptions() { /** * Returns the specified {@link EmulatorSettings} or a default. * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * - * @hide + *

Calling this method "freezes" the emulator settings and future calls to enableEmulators on + * the same FirebaseApp instance will fail. */ @NonNull public EmulatorSettings getEmulatorSettings() { @@ -330,10 +329,7 @@ public static FirebaseApp initializeApp( * com.google.firebase.emulators.EmulatedServiceSettings} for {@link FirebaseDatabase#EMULATOR}, * then calls to Cloud Firestore will communicate with the emulator rather than production. * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * * @param emulatorSettings the emulator settings for all services. - * @hide */ public void enableEmulators(@NonNull EmulatorSettings emulatorSettings) { checkNotDeleted(); diff --git a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java index 5acd04e9aa8..219e74778eb 100644 --- a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java +++ b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java @@ -19,10 +19,7 @@ /** * Settings to connect a single Firebase service to a local emulator. * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * * @see EmulatorSettings - * @hide */ public final class EmulatedServiceSettings { diff --git a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatorSettings.java b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatorSettings.java index 0ad3c80a32f..f1baae3882a 100644 --- a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatorSettings.java +++ b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatorSettings.java @@ -25,10 +25,7 @@ * Settings that control which Firebase services should access a local emulator, rather than * production. * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * * @see com.google.firebase.FirebaseApp#enableEmulators(EmulatorSettings) - * @hide */ public final class EmulatorSettings { diff --git a/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java b/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java index 8c5800fd055..4ecec27c2c8 100644 --- a/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java +++ b/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java @@ -19,12 +19,9 @@ /** * Identifier Firebase services that can be emulated using the Firebase Emulator Suite. * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * * @see com.google.firebase.FirebaseApp#enableEmulators(EmulatorSettings) * @see EmulatorSettings * @see EmulatedServiceSettings - * @hide */ public final class FirebaseEmulator { diff --git a/firebase-database/CHANGELOG.md b/firebase-database/CHANGELOG.md index d8fcf6de8da..bc78154582e 100644 --- a/firebase-database/CHANGELOG.md +++ b/firebase-database/CHANGELOG.md @@ -1,6 +1,8 @@ # Unreleased - [changed] Added internal HTTP header to the WebChannel connection. +- [feature] Realtime Database now supports connecting to a local emulator via + `FirebaseApp.enableEmulators()` # 19.3.0 - [feature] Added ServerValue.increment() to support atomic field value increments diff --git a/firebase-database/api.txt b/firebase-database/api.txt index 889baf83670..0d8b3f0816a 100644 --- a/firebase-database/api.txt +++ b/firebase-database/api.txt @@ -96,6 +96,7 @@ package com.google.firebase.database { method public void setLogLevel(@NonNull com.google.firebase.database.Logger.Level); method public void setPersistenceCacheSizeBytes(long); method public void setPersistenceEnabled(boolean); + field public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public abstract class GenericTypeIndicator { diff --git a/firebase-database/gradle.properties b/firebase-database/gradle.properties index cdae8c5da12..9838276bdfb 100644 --- a/firebase-database/gradle.properties +++ b/firebase-database/gradle.properties @@ -12,6 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -version=19.3.1 +version=19.4.0 latestReleasedVersion=19.3.0 android.enableUnitTestBinaryResources=true diff --git a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java index 4232ab7e202..f83c0709318 100644 --- a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java +++ b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java @@ -40,13 +40,7 @@ */ public class FirebaseDatabase { - /** - * Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} - * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * - * @hide - */ + /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("database"); private static final String SDK_VERSION = BuildConfig.VERSION_NAME; diff --git a/firebase-firestore/CHANGELOG.md b/firebase-firestore/CHANGELOG.md index 13d56e5ac6a..fb3b1ad6882 100644 --- a/firebase-firestore/CHANGELOG.md +++ b/firebase-firestore/CHANGELOG.md @@ -1,6 +1,8 @@ # Unreleased - [fixed] Fixed an issue that may have prevented the client from connecting to the backend immediately after a user signed in. +- [feature] Firestore now supports connecting to a local emulator via + `FirebaseApp.enableEmulators()`. # 21.4.3 - [changed] Firestore now limits the number of concurrent document lookups it diff --git a/firebase-firestore/api.txt b/firebase-firestore/api.txt index d077d842a32..23035439662 100644 --- a/firebase-firestore/api.txt +++ b/firebase-firestore/api.txt @@ -152,6 +152,7 @@ package com.google.firebase.firestore { method public static void setLoggingEnabled(boolean); method @NonNull public com.google.android.gms.tasks.Task terminate(); method @NonNull public com.google.android.gms.tasks.Task waitForPendingWrites(); + field public static com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public class FirebaseFirestoreException extends com.google.firebase.FirebaseException { diff --git a/firebase-firestore/gradle.properties b/firebase-firestore/gradle.properties index f5092165c64..d75bd0d3117 100644 --- a/firebase-firestore/gradle.properties +++ b/firebase-firestore/gradle.properties @@ -1,2 +1,2 @@ -version=21.4.4 +version=21.5.0 latestReleasedVersion=21.4.3 diff --git a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java index 3daecfad7d3..79bf1b9a470 100644 --- a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java +++ b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java @@ -58,13 +58,7 @@ */ public class FirebaseFirestore { - /** - * Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} - * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * - * @hide - */ + /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ public static FirebaseEmulator EMULATOR = FirebaseEmulator.forName("firestore"); /** diff --git a/firebase-functions/api.txt b/firebase-functions/api.txt index 61547cc0f12..66865c7915c 100644 --- a/firebase-functions/api.txt +++ b/firebase-functions/api.txt @@ -7,7 +7,8 @@ package com.google.firebase.functions { method @NonNull public static com.google.firebase.functions.FirebaseFunctions getInstance(@NonNull com.google.firebase.FirebaseApp); method @NonNull public static com.google.firebase.functions.FirebaseFunctions getInstance(@NonNull String); method @NonNull public static com.google.firebase.functions.FirebaseFunctions getInstance(); - method public void useFunctionsEmulator(@NonNull String); + method @Deprecated public void useFunctionsEmulator(@NonNull String); + field public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public class FirebaseFunctionsException extends com.google.firebase.FirebaseException { diff --git a/firebase-functions/gradle.properties b/firebase-functions/gradle.properties index 2b96f29ca00..0a7529aa3b7 100644 --- a/firebase-functions/gradle.properties +++ b/firebase-functions/gradle.properties @@ -1,3 +1,3 @@ -version=19.0.3 +version=19.1.0 latestReleasedVersion=19.0.2 android.enableUnitTestBinaryResources=true diff --git a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java index 43fba4fc3f9..a889b94328c 100644 --- a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java +++ b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java @@ -28,6 +28,7 @@ import com.google.android.gms.tasks.Tasks; import com.google.firebase.FirebaseApp; import com.google.firebase.emulators.EmulatedServiceSettings; +import com.google.firebase.emulators.EmulatorSettings; import com.google.firebase.emulators.FirebaseEmulator; import com.google.firebase.functions.FirebaseFunctionsException.Code; import java.io.IOException; @@ -49,15 +50,7 @@ /** FirebaseFunctions lets you call Cloud Functions for Firebase. */ public class FirebaseFunctions { - /** - * Emulator identifier, see {@link - * com.google.firebase.emulators.EmulatorSettings.Builder#addEmulatedService(FirebaseEmulator, - * EmulatedServiceSettings)} - * - *

TODO(samstern): Un-hide this once Firestore, Database, and Functions are implemented - * - * @hide - */ + /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("functions"); /** A task that will be resolved once ProviderInstaller has installed what it needs to. */ @@ -218,7 +211,9 @@ URL getURL(String function) { * https://firebase.google.com/docs/functions/local-emulator * * @param origin The origin of the local emulator, such as "http://10.0.2.2:5005". + * @deprecated use {@link FirebaseApp#enableEmulators(EmulatorSettings)}. */ + @Deprecated public void useFunctionsEmulator(@NonNull String origin) { Preconditions.checkNotNull(origin, "origin cannot be null"); urlFormat = origin + "/%2$s/%1$s/%3$s"; From d5872006498a894eec2aef4f5208808893a1ed5f Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 24 Jun 2020 14:01:16 -0400 Subject: [PATCH 2/5] Fix Nullability --- .../google/firebase/emulators/EmulatedServiceSettings.java | 1 + .../java/com/google/firebase/emulators/FirebaseEmulator.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java index 219e74778eb..a603122dee7 100644 --- a/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java +++ b/firebase-common/src/main/java/com/google/firebase/emulators/EmulatedServiceSettings.java @@ -31,6 +31,7 @@ public EmulatedServiceSettings(@NonNull String host, int port) { this.port = port; } + @NonNull public String getHost() { return host; } diff --git a/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java b/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java index 4ecec27c2c8..dd48f22f46a 100644 --- a/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java +++ b/firebase-common/src/main/java/com/google/firebase/emulators/FirebaseEmulator.java @@ -33,14 +33,15 @@ public final class FirebaseEmulator { * @hide */ @NonNull - public static FirebaseEmulator forName(String name) { + public static FirebaseEmulator forName(@NonNull String name) { return new FirebaseEmulator(name); } - private FirebaseEmulator(String name) { + private FirebaseEmulator(@NonNull String name) { this.name = name; } + @NonNull public String getName() { return name; } From 20a374c0c1c876e1f048a1d46f70ec9b02c2a903 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 24 Jun 2020 14:08:03 -0400 Subject: [PATCH 3/5] api.txt --- firebase-common/api.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/firebase-common/api.txt b/firebase-common/api.txt index 4ba4bc16701..903ebea43af 100644 --- a/firebase-common/api.txt +++ b/firebase-common/api.txt @@ -53,7 +53,7 @@ package com.google.firebase.emulators { public final class EmulatedServiceSettings { ctor public EmulatedServiceSettings(@NonNull String, int); - method public String getHost(); + method @NonNull public String getHost(); method public int getPort(); } @@ -68,7 +68,7 @@ package com.google.firebase.emulators { } public final class FirebaseEmulator { - method public String getName(); + method @NonNull public String getName(); } } From 2dd41776195cb1e58620a1a7f8a188da1b6a3c62 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 24 Jun 2020 14:24:53 -0400 Subject: [PATCH 4/5] NUllability --- firebase-database/api.txt | 2 +- .../java/com/google/firebase/database/FirebaseDatabase.java | 1 + firebase-firestore/api.txt | 2 +- .../java/com/google/firebase/firestore/FirebaseFirestore.java | 3 ++- firebase-functions/api.txt | 2 +- .../java/com/google/firebase/functions/FirebaseFunctions.java | 1 + 6 files changed, 7 insertions(+), 4 deletions(-) diff --git a/firebase-database/api.txt b/firebase-database/api.txt index 0d8b3f0816a..36ad92a3c2e 100644 --- a/firebase-database/api.txt +++ b/firebase-database/api.txt @@ -96,7 +96,7 @@ package com.google.firebase.database { method public void setLogLevel(@NonNull com.google.firebase.database.Logger.Level); method public void setPersistenceCacheSizeBytes(long); method public void setPersistenceEnabled(boolean); - field public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; + field @NonNull public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public abstract class GenericTypeIndicator { diff --git a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java index f83c0709318..82633f6a523 100644 --- a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java +++ b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java @@ -41,6 +41,7 @@ public class FirebaseDatabase { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ + @NonNull public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("database"); private static final String SDK_VERSION = BuildConfig.VERSION_NAME; diff --git a/firebase-firestore/api.txt b/firebase-firestore/api.txt index 23035439662..f6f3d0bf66e 100644 --- a/firebase-firestore/api.txt +++ b/firebase-firestore/api.txt @@ -152,7 +152,7 @@ package com.google.firebase.firestore { method public static void setLoggingEnabled(boolean); method @NonNull public com.google.android.gms.tasks.Task terminate(); method @NonNull public com.google.android.gms.tasks.Task waitForPendingWrites(); - field public static com.google.firebase.emulators.FirebaseEmulator EMULATOR; + field @NonNull public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public class FirebaseFirestoreException extends com.google.firebase.FirebaseException { diff --git a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java index 79bf1b9a470..fb891375033 100644 --- a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java +++ b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java @@ -59,7 +59,8 @@ public class FirebaseFirestore { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ - public static FirebaseEmulator EMULATOR = FirebaseEmulator.forName("firestore"); + @NonNull + public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("firestore"); /** * Provides a registry management interface for {@code FirebaseFirestore} instances. diff --git a/firebase-functions/api.txt b/firebase-functions/api.txt index 66865c7915c..8a37df4c31e 100644 --- a/firebase-functions/api.txt +++ b/firebase-functions/api.txt @@ -8,7 +8,7 @@ package com.google.firebase.functions { method @NonNull public static com.google.firebase.functions.FirebaseFunctions getInstance(@NonNull String); method @NonNull public static com.google.firebase.functions.FirebaseFunctions getInstance(); method @Deprecated public void useFunctionsEmulator(@NonNull String); - field public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; + field @NonNull public static final com.google.firebase.emulators.FirebaseEmulator EMULATOR; } public class FirebaseFunctionsException extends com.google.firebase.FirebaseException { diff --git a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java index a889b94328c..7159b27875a 100644 --- a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java +++ b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java @@ -51,6 +51,7 @@ public class FirebaseFunctions { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ + @NonNull public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("functions"); /** A task that will be resolved once ProviderInstaller has installed what it needs to. */ From f029163d44f9de87040ac89d57bf6874b88b4b65 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 24 Jun 2020 14:38:21 -0400 Subject: [PATCH 5/5] Java Format --- .../java/com/google/firebase/database/FirebaseDatabase.java | 3 +-- .../java/com/google/firebase/firestore/FirebaseFirestore.java | 3 +-- .../java/com/google/firebase/functions/FirebaseFunctions.java | 3 +-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java index 82633f6a523..c0a8f945b8a 100644 --- a/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java +++ b/firebase-database/src/main/java/com/google/firebase/database/FirebaseDatabase.java @@ -41,8 +41,7 @@ public class FirebaseDatabase { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ - @NonNull - public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("database"); + @NonNull public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("database"); private static final String SDK_VERSION = BuildConfig.VERSION_NAME; diff --git a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java index fb891375033..4f1c261f6b0 100644 --- a/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java +++ b/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java @@ -59,8 +59,7 @@ public class FirebaseFirestore { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ - @NonNull - public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("firestore"); + @NonNull public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("firestore"); /** * Provides a registry management interface for {@code FirebaseFirestore} instances. diff --git a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java index 7159b27875a..64ce95c9525 100644 --- a/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java +++ b/firebase-functions/src/main/java/com/google/firebase/functions/FirebaseFunctions.java @@ -51,8 +51,7 @@ public class FirebaseFunctions { /** Emulator identifier. See {@link FirebaseApp#enableEmulators(EmulatorSettings)} */ - @NonNull - public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("functions"); + @NonNull public static final FirebaseEmulator EMULATOR = FirebaseEmulator.forName("functions"); /** A task that will be resolved once ProviderInstaller has installed what it needs to. */ private static final TaskCompletionSource providerInstalled = new TaskCompletionSource<>();