@@ -286,22 +286,22 @@ private boolean isFireperfSdkVersionInList(String versions) {
286
286
}
287
287
288
288
/** Returns what percentage of Traces should be collected, range is [0.00f, 1.00f]. */
289
- public float getTraceSamplingRate () {
289
+ public double getTraceSamplingRate () {
290
290
// Order of precedence is:
291
291
// 1. If the value exists through Firebase Remote Config, cache and return this value.
292
292
// 2. If the value exists in device cache, return this value.
293
293
// 3. Otherwise, return default value.
294
294
TraceSamplingRate config = TraceSamplingRate .getInstance ();
295
295
296
296
// 1. Reads value from Firebase Remote Config, saves this value in cache layer if valid.
297
- Optional <Float > rcValue = getRemoteConfigFloat (config );
297
+ Optional <Double > rcValue = getRemoteConfigDouble (config );
298
298
if (rcValue .isAvailable () && isSamplingRateValid (rcValue .get ())) {
299
299
deviceCacheManager .setValue (config .getDeviceCacheFlag (), rcValue .get ());
300
300
return rcValue .get ();
301
301
}
302
302
303
303
// 2. Reads value from cache layer.
304
- Optional <Float > deviceCacheValue = getDeviceCacheFloat (config );
304
+ Optional <Double > deviceCacheValue = getDeviceCacheDouble (config );
305
305
if (deviceCacheValue .isAvailable () && isSamplingRateValid (deviceCacheValue .get ())) {
306
306
return deviceCacheValue .get ();
307
307
}
@@ -311,22 +311,22 @@ public float getTraceSamplingRate() {
311
311
}
312
312
313
313
/** Returns what percentage of NetworkRequest should be collected, range is [0.00f, 1.00f]. */
314
- public float getNetworkRequestSamplingRate () {
314
+ public double getNetworkRequestSamplingRate () {
315
315
// Order of precedence is:
316
316
// 1. If the value exists through Firebase Remote Config, cache and return this value.
317
317
// 2. If the value exists in device cache, return this value.
318
318
// 3. Otherwise, return default value.
319
319
NetworkRequestSamplingRate config = NetworkRequestSamplingRate .getInstance ();
320
320
321
321
// 1. Reads value from Firebase Remote Config, saves this value in cache layer if valid.
322
- Optional <Float > rcValue = getRemoteConfigFloat (config );
322
+ Optional <Double > rcValue = getRemoteConfigDouble (config );
323
323
if (rcValue .isAvailable () && isSamplingRateValid (rcValue .get ())) {
324
324
deviceCacheManager .setValue (config .getDeviceCacheFlag (), rcValue .get ());
325
325
return rcValue .get ();
326
326
}
327
327
328
328
// 2. Reads value from cache layer.
329
- Optional <Float > deviceCacheValue = getDeviceCacheFloat (config );
329
+ Optional <Double > deviceCacheValue = getDeviceCacheDouble (config );
330
330
if (deviceCacheValue .isAvailable () && isSamplingRateValid (deviceCacheValue .get ())) {
331
331
return deviceCacheValue .get ();
332
332
}
@@ -336,7 +336,7 @@ public float getNetworkRequestSamplingRate() {
336
336
}
337
337
338
338
/** Returns what percentage of Session gauge should be collected, range is [0.00f, 1.00f]. */
339
- public float getSessionsSamplingRate () {
339
+ public double getSessionsSamplingRate () {
340
340
// Order of precedence is:
341
341
// 1. If the value exists in Android Manifest, convert from [0.00f, 100.00f] to [0.00f, 1.00f]
342
342
// and return this value.
@@ -346,24 +346,24 @@ public float getSessionsSamplingRate() {
346
346
SessionsSamplingRate config = SessionsSamplingRate .getInstance ();
347
347
348
348
// 1. Reads value in Android Manifest (it is set by developers during build time).
349
- Optional <Float > metadataValue = getMetadataFloat (config );
349
+ Optional <Double > metadataValue = getMetadataDouble (config );
350
350
if (metadataValue .isAvailable ()) {
351
351
// Sampling percentage from metadata needs to convert from [0.00f, 100.00f] to [0.00f, 1.00f].
352
- float samplingRate = metadataValue .get () / 100.0f ;
352
+ double samplingRate = metadataValue .get () / 100 ;
353
353
if (isSamplingRateValid (samplingRate )) {
354
354
return samplingRate ;
355
355
}
356
356
}
357
357
358
358
// 2. Reads value from Firebase Remote Config, saves this value in cache layer if valid.
359
- Optional <Float > rcValue = getRemoteConfigFloat (config );
359
+ Optional <Double > rcValue = getRemoteConfigDouble (config );
360
360
if (rcValue .isAvailable () && isSamplingRateValid (rcValue .get ())) {
361
361
deviceCacheManager .setValue (config .getDeviceCacheFlag (), rcValue .get ());
362
362
return rcValue .get ();
363
363
}
364
364
365
365
// 3. Reads value from cache layer.
366
- Optional <Float > deviceCacheValue = getDeviceCacheFloat (config );
366
+ Optional <Double > deviceCacheValue = getDeviceCacheDouble (config );
367
367
if (deviceCacheValue .isAvailable () && isSamplingRateValid (deviceCacheValue .get ())) {
368
368
return deviceCacheValue .get ();
369
369
}
@@ -732,7 +732,7 @@ public String getAndCacheLogSourceName() {
732
732
}
733
733
734
734
/** Returns what percentage of fragment traces should be collected, range is [0.00f, 1.00f]. */
735
- public float getFragmentSamplingRate () {
735
+ public double getFragmentSamplingRate () {
736
736
// Order of precedence is:
737
737
// 1. If the value exists in Android Manifest, convert from [0.00f, 100.00f] to [0.00f, 1.00f]
738
738
// and return this value.
@@ -742,24 +742,24 @@ public float getFragmentSamplingRate() {
742
742
FragmentSamplingRate config = FragmentSamplingRate .getInstance ();
743
743
744
744
// 1. Reads value in Android Manifest (it is set by developers during build time).
745
- Optional <Float > metadataValue = getMetadataFloat (config );
745
+ Optional <Double > metadataValue = getMetadataDouble (config );
746
746
if (metadataValue .isAvailable ()) {
747
747
// Sampling percentage from metadata needs to convert from [0.00f, 100.00f] to [0.00f, 1.00f].
748
- float samplingRate = metadataValue .get () / 100.0f ;
748
+ double samplingRate = metadataValue .get () / 100.0f ;
749
749
if (isSamplingRateValid (samplingRate )) {
750
750
return samplingRate ;
751
751
}
752
752
}
753
753
754
754
// 2. Reads value from Firebase Remote Config, saves this value in cache layer if valid.
755
- Optional <Float > rcValue = getRemoteConfigFloat (config );
755
+ Optional <Double > rcValue = getRemoteConfigDouble (config );
756
756
if (rcValue .isAvailable () && isSamplingRateValid (rcValue .get ())) {
757
757
deviceCacheManager .setValue (config .getDeviceCacheFlag (), rcValue .get ());
758
758
return rcValue .get ();
759
759
}
760
760
761
761
// 3. Reads value from cache layer.
762
- Optional <Float > deviceCacheValue = getDeviceCacheFloat (config );
762
+ Optional <Double > deviceCacheValue = getDeviceCacheDouble (config );
763
763
if (deviceCacheValue .isAvailable () && isSamplingRateValid (deviceCacheValue .get ())) {
764
764
return deviceCacheValue .get ();
765
765
}
@@ -807,17 +807,17 @@ private Optional<Boolean> getMetadataBoolean(ConfigurationFlag<Boolean> config)
807
807
return metadataBundle .getBoolean (config .getMetadataFlag ());
808
808
}
809
809
810
- private Optional <Float > getMetadataFloat (ConfigurationFlag <Float > config ) {
811
- return metadataBundle .getFloat (config .getMetadataFlag ());
810
+ private Optional <Double > getMetadataDouble (ConfigurationFlag <Double > config ) {
811
+ return metadataBundle .getDouble (config .getMetadataFlag ());
812
812
}
813
813
814
814
private Optional <Long > getMetadataLong (ConfigurationFlag <Long > config ) {
815
815
return metadataBundle .getLong (config .getMetadataFlag ());
816
816
}
817
817
818
818
// Helper functions for interaction with Firebase Remote Config.
819
- private Optional <Float > getRemoteConfigFloat (ConfigurationFlag <Float > config ) {
820
- return remoteConfigManager .getFloat (config .getRemoteConfigFlag ());
819
+ private Optional <Double > getRemoteConfigDouble (ConfigurationFlag <Double > config ) {
820
+ return remoteConfigManager .getDouble (config .getRemoteConfigFlag ());
821
821
}
822
822
823
823
private Optional <Long > getRemoteConfigLong (ConfigurationFlag <Long > config ) {
@@ -841,8 +841,8 @@ private Long getRemoteConfigValue(ConfigurationFlag<Long> configFlag) {
841
841
}
842
842
843
843
// Helper functions for interaction with Device Caching layer.
844
- private Optional <Float > getDeviceCacheFloat (ConfigurationFlag <Float > config ) {
845
- return deviceCacheManager .getFloat (config .getDeviceCacheFlag ());
844
+ private Optional <Double > getDeviceCacheDouble (ConfigurationFlag <Double > config ) {
845
+ return deviceCacheManager .getDouble (config .getDeviceCacheFlag ());
846
846
}
847
847
848
848
private Optional <Long > getDeviceCacheLong (ConfigurationFlag <Long > config ) {
@@ -858,7 +858,7 @@ private Optional<String> getDeviceCacheString(ConfigurationFlag<String> config)
858
858
}
859
859
860
860
// Helper functions for config value validation.
861
- private boolean isSamplingRateValid (float samplingRate ) {
861
+ private boolean isSamplingRateValid (double samplingRate ) {
862
862
return MIN_SAMPLING_RATE <= samplingRate && samplingRate <= MAX_SAMPLING_RATE ;
863
863
}
864
864
0 commit comments