-
Notifications
You must be signed in to change notification settings - Fork 625
Implement local manifest override configs #4877
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement local manifest override configs #4877
Conversation
a2e95eb
to
4e98eb2
Compare
Coverage Report 1Affected Products
Test Logs |
Javadoc Changes:--- /Users/runner/diff/original/firebase-kotlindoc/android/client/firebase-sessions/_toc.yaml 2023-04-07 22:54:31.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/client/firebase-sessions/_toc.yaml 2023-04-07 22:49:34.000000000 +0000
@@ -9,4 +9,14 @@
- title: "FirebaseSessions"
path: "/docs/reference/android/com/google/firebase/sessions/FirebaseSessions.html"
+- title: "firebase.sessions.settings"
+ path: "/docs/reference/android/com/google/firebase/sessions/settings/package-summary.html"
+
+ section:
+ - title: "Interfaces"
+
+ section:
+ - title: "SettingsProvider"
+ path: "/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html"
+
--- /Users/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/sessions/settings/SettingsProvider.html 1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/sessions/settings/SettingsProvider.html 2023-04-07 22:49:34.000000000 +0000
@@ -0,0 +1,103 @@
+<html devsite="true">
+ <head>
+ <title>SettingsProvider</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>SettingsProvider</h1>
+ <p>
+ <pre>public interface <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html">SettingsProvider</a></pre>
+ </p>
+ <hr>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public fields</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code>abstract <a href="https://developer.android.com/reference/kotlin/java/lang/Double.html">Double</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#samplingRate()">samplingRate</a></code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>abstract <a href="https://developer.android.com/reference/kotlin/java/lang/Boolean.html">Boolean</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#sessionEnabled()">sessionEnabled</a></code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>abstract <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html">Duration</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#sessionRestartTimeout()">sessionRestartTimeout</a></code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public methods</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code>abstract boolean</code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#isSettingsStale()">isSettingsStale</a>()</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>abstract void</code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#updateSettings()">updateSettings</a>()</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="list">
+ <h2>Public fields</h2>
+ <div class="api-item"><a name="getSamplingRate()"></a><a name="setSamplingRate()"></a><a name="getSamplingRate--"></a><a name="setSamplingRate--"></a>
+ <h3 class="api-name" id="samplingRate()">samplingRate</h3>
+ <pre class="api-signature no-pretty-print">abstract <a href="https://developer.android.com/reference/kotlin/java/lang/Double.html">Double</a> <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#samplingRate()">samplingRate</a></pre>
+ </div>
+ <div class="api-item"><a name="getSessionEnabled()"></a><a name="setSessionEnabled()"></a><a name="getSessionEnabled--"></a><a name="setSessionEnabled--"></a>
+ <h3 class="api-name" id="sessionEnabled()">sessionEnabled</h3>
+ <pre class="api-signature no-pretty-print">abstract <a href="https://developer.android.com/reference/kotlin/java/lang/Boolean.html">Boolean</a> <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#sessionEnabled()">sessionEnabled</a></pre>
+ </div>
+ <div class="api-item"><a name="getSessionRestartTimeout()"></a><a name="setSessionRestartTimeout()"></a><a name="getSessionRestartTimeout--"></a><a name="setSessionRestartTimeout--"></a>
+ <h3 class="api-name" id="sessionRestartTimeout()">sessionRestartTimeout</h3>
+ <pre class="api-signature no-pretty-print">abstract <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html">Duration</a> <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#sessionRestartTimeout()">sessionRestartTimeout</a></pre>
+ </div>
+ </div>
+ <div class="list">
+ <h2>Public methods</h2>
+ <div class="api-item"><a name="isSettingsStale--"></a><a name="issettingsstale"></a>
+ <h3 class="api-name" id="isSettingsStale()">isSettingsStale</h3>
+ <pre class="api-signature no-pretty-print">abstract boolean <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#isSettingsStale()">isSettingsStale</a>()</pre>
+ </div>
+ <div class="api-item"><a name="updateSettings--"></a><a name="updatesettings"></a>
+ <h3 class="api-name" id="updateSettings()">updateSettings</h3>
+ <pre class="api-signature no-pretty-print">abstract void <a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html#updateSettings()">updateSettings</a>()</pre>
+ </div>
+ </div>
+ </body>
+</html>
+ --- /Users/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/sessions/settings/package-summary.html 1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/sessions/settings/package-summary.html 2023-04-07 22:49:34.000000000 +0000
@@ -0,0 +1,26 @@
+<html devsite="true">
+ <head>
+ <title>com.google.firebase.sessions.settings</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <h1>com.google.firebase.sessions.settings</h1>
+ <h2>Interfaces</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <tbody class="list">
+ <tr>
+ <td><code><a href="/docs/reference/android/com/google/firebase/sessions/settings/SettingsProvider.html">SettingsProvider</a></code></td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </body>
+</html>
+ --- /Users/runner/diff/original/firebase-kotlindoc/kotlin/client/firebase-sessions/_toc.yaml 2023-04-07 22:54:31.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/client/firebase-sessions/_toc.yaml 2023-04-07 22:49:34.000000000 +0000
@@ -9,4 +9,14 @@
- title: "FirebaseSessions"
path: "/docs/reference/kotlin/com/google/firebase/sessions/FirebaseSessions.html"
+- title: "com.google.firebase.sessions.settings"
+ path: "/docs/reference/kotlin/com/google/firebase/sessions/settings/package-summary.html"
+
+ section:
+ - title: "Interfaces"
+
+ section:
+ - title: "SettingsProvider"
+ path: "/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html"
+
--- /Users/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html 1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html 2023-04-07 22:49:34.000000000 +0000
@@ -0,0 +1,103 @@
+<html devsite="true">
+ <head>
+ <title>SettingsProvider</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>SettingsProvider</h1>
+ <p>
+ <pre>interface <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html">SettingsProvider</a></pre>
+ </p>
+ <hr>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public functions</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#isSettingsStale()">isSettingsStale</a>()</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#updateSettings()">updateSettings</a>()</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public properties</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>?</code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#samplingRate()">samplingRate</a></code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>?</code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#sessionEnabled()">sessionEnabled</a></code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html">Duration</a>?</code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#sessionRestartTimeout()">sessionRestartTimeout</a></code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="list">
+ <h2>Public functions</h2>
+ <div class="api-item"><a name="isSettingsStale--"></a><a name="issettingsstale"></a>
+ <h3 class="api-name" id="isSettingsStale()">isSettingsStale</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#isSettingsStale()">isSettingsStale</a>(): <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+ </div>
+ <div class="api-item"><a name="updateSettings--"></a><a name="updatesettings"></a>
+ <h3 class="api-name" id="updateSettings()">updateSettings</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#updateSettings()">updateSettings</a>(): <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+ </div>
+ </div>
+ <div class="list">
+ <h2>Public properties</h2>
+ <div class="api-item"><a name="getSamplingRate()"></a><a name="setSamplingRate()"></a><a name="getSamplingRate--"></a><a name="setSamplingRate--"></a>
+ <h3 class="api-name" id="samplingRate()">samplingRate</h3>
+ <pre class="api-signature no-pretty-print">val <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#samplingRate()">samplingRate</a>: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>?</pre>
+ </div>
+ <div class="api-item"><a name="getSessionEnabled()"></a><a name="setSessionEnabled()"></a><a name="getSessionEnabled--"></a><a name="setSessionEnabled--"></a>
+ <h3 class="api-name" id="sessionEnabled()">sessionEnabled</h3>
+ <pre class="api-signature no-pretty-print">val <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#sessionEnabled()">sessionEnabled</a>: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>?</pre>
+ </div>
+ <div class="api-item"><a name="getSessionRestartTimeout()"></a><a name="setSessionRestartTimeout()"></a><a name="getSessionRestartTimeout--"></a><a name="setSessionRestartTimeout--"></a>
+ <h3 class="api-name" id="sessionRestartTimeout()">sessionRestartTimeout</h3>
+ <pre class="api-signature no-pretty-print">val <a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html#sessionRestartTimeout()">sessionRestartTimeout</a>: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html">Duration</a>?</pre>
+ </div>
+ </div>
+ </body>
+</html>
+ --- /Users/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/sessions/settings/package-summary.html 1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/sessions/settings/package-summary.html 2023-04-07 22:49:34.000000000 +0000
@@ -0,0 +1,26 @@
+<html devsite="true">
+ <head>
+ <title>com.google.firebase.sessions.settings</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <h1>com.google.firebase.sessions.settings</h1>
+ <h2>Interfaces</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <tbody class="list">
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/sessions/settings/SettingsProvider.html">SettingsProvider</a></code></td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </body>
+</html>
+ |
Size Report 1Affected Products
Test Logs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
// Setting to qualify if sessions service is enabled. | ||
val sessionsEnabled: Boolean | ||
get() { | ||
if (localOverrideSettings.sessionEnabled != null) { | ||
return localOverrideSettings.sessionEnabled!! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of this pattern and using !!
, Kotlin has nice syntax for dealing with null like:
Elvis if it's just 1 or the other:
get() = localOverrideSettings.sessionEnabled ?: true
There is also this for when we have multiple cases:
localOverrideSettings.sessionEnabled?.let { return it }
someOtherCases?.let { return it }
return true
Implement local overrides for configs from the application's manifest file.