fix(feature-flag): Removed FeatureFlag metrics (except FeatureFlagAwaitTotal).

This commit is contained in:
Neil Marietta 2024-03-21 18:19:54 +01:00
parent 1e890eb103
commit 9780725d1a
13 changed files with 20 additions and 276 deletions

View File

@ -276,18 +276,18 @@ public final class me/proton/core/featureflag/data/remote/response/GetUnleashTog
}
public final class me/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager {
public fun <init> (Landroid/content/Context;Landroidx/work/WorkManager;Lme/proton/core/observability/domain/ObservabilityManager;)V
public fun <init> (Landroid/content/Context;Landroidx/work/WorkManager;)V
public final fun cancel (Lme/proton/core/domain/entity/UserId;)V
public final fun enqueueOneTime (Lme/proton/core/domain/entity/UserId;)V
public final fun enqueuePeriodic (Lme/proton/core/domain/entity/UserId;Z)V
}
public final class me/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager_Factory : dagger/internal/Factory {
public fun <init> (Ljavax/inject/Provider;Ljavax/inject/Provider;Ljavax/inject/Provider;)V
public static fun create (Ljavax/inject/Provider;Ljavax/inject/Provider;Ljavax/inject/Provider;)Lme/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager_Factory;
public fun <init> (Ljavax/inject/Provider;Ljavax/inject/Provider;)V
public static fun create (Ljavax/inject/Provider;Ljavax/inject/Provider;)Lme/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager_Factory;
public synthetic fun get ()Ljava/lang/Object;
public fun get ()Lme/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager;
public static fun newInstance (Landroid/content/Context;Landroidx/work/WorkManager;Lme/proton/core/observability/domain/ObservabilityManager;)Lme/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager;
public static fun newInstance (Landroid/content/Context;Landroidx/work/WorkManager;)Lme/proton/core/featureflag/data/remote/worker/FeatureFlagWorkerManager;
}
public abstract interface class me/proton/core/featureflag/data/remote/worker/FetchFeatureIdsWorker_AssistedFactory : androidx/hilt/work/WorkerAssistedFactory {

View File

@ -25,8 +25,8 @@ plugins {
}
protonCoverage {
branchCoveragePercentage.set(53)
lineCoveragePercentage.set(85)
branchCoveragePercentage.set(50)
lineCoveragePercentage.set(83)
}
protonDagger {

View File

@ -7,8 +7,6 @@ import androidx.work.WorkManager
import dagger.hilt.android.qualifiers.ApplicationContext
import me.proton.core.domain.entity.UserId
import me.proton.core.featureflag.data.R
import me.proton.core.observability.domain.ObservabilityManager
import me.proton.core.observability.domain.metrics.FeatureFlagRefreshRequestTotal
import javax.inject.Inject
import kotlin.time.Duration
import kotlin.time.DurationUnit
@ -17,8 +15,7 @@ import kotlin.time.toDuration
public class FeatureFlagWorkerManager @Inject constructor(
@ApplicationContext
private val context: Context,
private val workManager: WorkManager,
private val obsManager: ObservabilityManager,
private val workManager: WorkManager
) {
public fun enqueueOneTime(userId: UserId?) {
@ -26,9 +23,7 @@ public class FeatureFlagWorkerManager @Inject constructor(
FetchUnleashTogglesWorker.getOneTimeUniqueWorkName(userId),
ExistingWorkPolicy.REPLACE,
FetchUnleashTogglesWorker.getOneTimeWorkRequest(userId)
).also {
obsManager.enqueue(FeatureFlagRefreshRequestTotal.Onetime)
}
)
}
public fun enqueuePeriodic(userId: UserId?, immediately: Boolean) {
@ -40,9 +35,7 @@ public class FeatureFlagWorkerManager @Inject constructor(
FetchUnleashTogglesWorker.getPeriodicUniqueWorkName(userId),
if (immediately) ExistingPeriodicWorkPolicy.REPLACE else ExistingPeriodicWorkPolicy.KEEP,
FetchUnleashTogglesWorker.getPeriodicWorkRequest(userId, repeatInterval),
).also {
obsManager.enqueue(FeatureFlagRefreshRequestTotal.Periodic)
}
)
}
public fun cancel(userId: UserId?) {

View File

@ -42,9 +42,6 @@ import me.proton.core.featureflag.domain.repository.FeatureFlagRepository
import me.proton.core.observability.domain.ObservabilityContext
import me.proton.core.observability.domain.ObservabilityManager
import me.proton.core.observability.domain.metrics.FeatureFlagAwaitTotal
import me.proton.core.observability.domain.metrics.FeatureFlagGetAllTotal
import me.proton.core.observability.domain.metrics.FeatureFlagGetAllTotal.ApiStatus
import me.proton.core.observability.domain.metrics.FeatureFlagGetValueTotal
import me.proton.core.util.kotlin.CoroutineScopeProvider
import javax.inject.Inject
import javax.inject.Singleton
@ -105,12 +102,6 @@ public class FeatureFlagRepositoryImpl @Inject internal constructor(
} else {
runBlocking { initJob.join() } // ~10ms
unleashFeatureMap[userId]?.get(featureId)?.value
}.also {
when (it) {
null -> enqueueObservability(FeatureFlagGetValueTotal.Unknown)
true -> enqueueObservability(FeatureFlagGetValueTotal.Enabled)
false -> enqueueObservability(FeatureFlagGetValueTotal.Disabled)
}
}
override suspend fun getAll(
@ -120,9 +111,6 @@ public class FeatureFlagRepositoryImpl @Inject internal constructor(
localDataSource.replaceAll(userId, Scope.Unleash, list)
putAllUnleashInMemory()
return@runCatching list
}.also {
it.onSuccess { enqueueObservability(FeatureFlagGetAllTotal(ApiStatus.http2xx)) }
it.onFailure { throwable -> enqueueObservability(FeatureFlagGetAllTotal(throwable)) }
}.getOrThrow()
override fun refreshAllOneTime(

View File

@ -29,8 +29,6 @@ import io.mockk.mockk
import io.mockk.verify
import kotlinx.coroutines.test.runTest
import me.proton.core.featureflag.data.testdata.UserIdTestData
import me.proton.core.observability.domain.ObservabilityManager
import me.proton.core.observability.domain.metrics.FeatureFlagRefreshRequestTotal
import org.junit.Test
class FeatureFlagWorkerManagerTest {
@ -43,9 +41,8 @@ class FeatureFlagWorkerManagerTest {
}
}
private val workManager = mockk<WorkManager>(relaxed = true)
private val observabilityManager = mockk<ObservabilityManager>(relaxed = true)
private fun mockManager() = FeatureFlagWorkerManager(context, workManager, observabilityManager)
private fun mockManager() = FeatureFlagWorkerManager(context, workManager)
@Test
fun enqueueOneTime() = runTest {
@ -60,8 +57,6 @@ class FeatureFlagWorkerManagerTest {
any<OneTimeWorkRequest>()
)
}
verify { observabilityManager.enqueue(FeatureFlagRefreshRequestTotal.Onetime, any()) }
}
@Test
@ -77,8 +72,6 @@ class FeatureFlagWorkerManagerTest {
any<PeriodicWorkRequest>()
)
}
verify { observabilityManager.enqueue(FeatureFlagRefreshRequestTotal.Periodic, any()) }
}
@Test
@ -94,7 +87,5 @@ class FeatureFlagWorkerManagerTest {
any<PeriodicWorkRequest>()
)
}
verify { observabilityManager.enqueue(FeatureFlagRefreshRequestTotal.Periodic, any()) }
}
}

View File

@ -67,13 +67,10 @@ import me.proton.core.featureflag.domain.repository.FeatureFlagRemoteDataSource
import me.proton.core.featureflag.domain.repository.FeatureFlagRepository
import me.proton.core.network.data.ApiManagerFactory
import me.proton.core.network.data.ApiProvider
import me.proton.core.network.data.protonApi.GenericResponse
import me.proton.core.network.domain.ResponseCodes
import me.proton.core.network.domain.session.SessionProvider
import me.proton.core.observability.domain.ObservabilityManager
import me.proton.core.observability.domain.metrics.FeatureFlagAwaitTotal
import me.proton.core.observability.domain.metrics.FeatureFlagGetAllTotal
import me.proton.core.observability.domain.metrics.FeatureFlagGetValueTotal
import me.proton.core.test.android.api.TestApiManager
import me.proton.core.test.kotlin.CoroutinesTest
import me.proton.core.test.kotlin.TestCoroutineScopeProvider
@ -417,9 +414,6 @@ class FeatureFlagRepositoryImplTest : CoroutinesTest by UnconfinedCoroutinesTest
val result = repository.getValue(userId, featureId)
assertNotNull(result)
assertTrue(result)
coVerify { observabilityManager.enqueue(FeatureFlagGetValueTotal.Enabled, any()) }
coVerify { observabilityManager.enqueue(any<FeatureFlagGetAllTotal>(), any()) }
}
@Test
@ -448,9 +442,6 @@ class FeatureFlagRepositoryImplTest : CoroutinesTest by UnconfinedCoroutinesTest
val result = repository.getValue(userId, featureId)
assertNotNull(result)
assertFalse(result)
coVerify { observabilityManager.enqueue(FeatureFlagGetValueTotal.Disabled, any()) }
coVerify { observabilityManager.enqueue(any<FeatureFlagGetAllTotal>(), any()) }
}
@Test
@ -470,9 +461,6 @@ class FeatureFlagRepositoryImplTest : CoroutinesTest by UnconfinedCoroutinesTest
val result = repository.getValue(userId, featureId)
assertNull(result)
coVerify { observabilityManager.enqueue(FeatureFlagGetValueTotal.Unknown, any()) }
coVerify { observabilityManager.enqueue(any<FeatureFlagGetAllTotal>(), any()) }
}
@Test

View File

@ -39,6 +39,7 @@ public interface FeatureFlagManager {
* Note: May suspend indefinitely, if a given scope is never fetched or is empty.
*/
@ExperimentalProtonFeatureFlag
@Deprecated("Will be removed when CredentialLessDisabled FF will be removed.")
public suspend fun awaitNotEmptyScope(
userId: UserId? = null,
scope: Scope

View File

@ -33,6 +33,7 @@ public interface FeatureFlagRepository {
*
* Note: May suspend indefinitely, if a given scope is never fetched or is empty.
*/
@Deprecated("Will be removed when CredentialLessDisabled FF will be removed.")
public suspend fun awaitNotEmptyScope(userId: UserId? = null, scope: Scope)
/**

View File

@ -1346,228 +1346,6 @@ public final class me/proton/core/observability/domain/metrics/FeatureFlagAwaitT
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal : me/proton/core/observability/domain/metrics/CoreObservabilityData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$Companion;
public fun <init> (Ljava/lang/Throwable;)V
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;)V
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;J)V
public synthetic fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;JILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;
public final fun component2 ()J
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;J)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal;Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;JILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal;
public fun equals (Ljava/lang/Object;)Z
public synthetic fun getLabels ()Ljava/lang/Object;
public fun getLabels ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;
public fun getValue ()J
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus : java/lang/Enum {
public static final field cancellation Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field connectionError Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http1xx Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http2xx Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http3xx Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http409 Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http422 Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http4xx Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field http5xx Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field notConnected Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field parseError Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field sslError Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static final field unknown Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public static fun valueOf (Ljava/lang/String;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public static fun values ()[Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$Companion {
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;ILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;
public fun equals (Ljava/lang/Object;)Z
public final fun getStatus ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$LabelsData$Companion {
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetAllTotalKt {
public static final fun toFeatureFlagApiStatus (Lme/proton/core/observability/domain/metrics/common/HttpApiStatus;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetAllTotal$ApiStatus;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal : me/proton/core/observability/domain/metrics/CoreObservabilityData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;J)V
public synthetic fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;JILkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;
public final fun component2 ()J
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;J)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;JILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public fun equals (Ljava/lang/Object;)Z
public synthetic fun getLabels ()Ljava/lang/Object;
public fun getLabels ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;
public fun getValue ()J
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$Companion {
public final fun getDisabled ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public final fun getEnabled ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public final fun getUnknown ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal;
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;ILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;
public fun equals (Ljava/lang/Object;)Z
public final fun getStatus ()Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$LabelsData$Companion {
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus : java/lang/Enum {
public static final field disabled Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public static final field enabled Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public static final field unknown Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public static fun valueOf (Ljava/lang/String;)Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
public static fun values ()[Lme/proton/core/observability/domain/metrics/FeatureFlagGetValueTotal$ValueStatus;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal : me/proton/core/observability/domain/metrics/CoreObservabilityData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;J)V
public synthetic fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;JILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;
public final fun component2 ()J
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;J)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;JILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;
public fun equals (Ljava/lang/Object;)Z
public synthetic fun getLabels ()Ljava/lang/Object;
public fun getLabels ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;
public fun getValue ()J
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$Companion {
public final fun getOnetime ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;
public final fun getPeriodic ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal;
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData {
public static final field Companion Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;)V
public final fun component1 ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
public final fun copy (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;
public static synthetic fun copy$default (Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;ILjava/lang/Object;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;
public fun equals (Ljava/lang/Object;)Z
public final fun getType ()Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
public static final field INSTANCE Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData$$serializer;
public fun childSerializers ()[Lkotlinx/serialization/KSerializer;
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
public fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;
public fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
public fun serialize (Lkotlinx/serialization/encoding/Encoder;Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData;)V
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$LabelsData$Companion {
public final fun serializer ()Lkotlinx/serialization/KSerializer;
}
public final class me/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType : java/lang/Enum {
public static final field onetime Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
public static final field periodic Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public static fun valueOf (Ljava/lang/String;)Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
public static fun values ()[Lme/proton/core/observability/domain/metrics/FeatureFlagRefreshRequestTotal$RefreshType;
}
public final class me/proton/core/observability/domain/metrics/HvPageLoadTotal : me/proton/core/observability/domain/metrics/CoreObservabilityData {
public static final field Companion Lme/proton/core/observability/domain/metrics/HvPageLoadTotal$Companion;
public fun <init> (Lme/proton/core/observability/domain/metrics/HvPageLoadTotal$LabelsData;J)V

View File

@ -26,6 +26,7 @@ import me.proton.core.observability.domain.entity.SchemaId
@Serializable
@Schema(description = "Feature Flag Await.")
@SchemaId("https://proton.me/android_core_featureflag_await_total_v1.schema.json")
@Deprecated("Will be removed when CredentialLessDisabled FF will be removed. Keep for documentation.")
public data class FeatureFlagAwaitTotal(
override val Labels: LabelsData,
@Required override val Value: Long = 1

View File

@ -28,7 +28,8 @@ import me.proton.core.observability.domain.metrics.common.toHttpApiStatus
@Serializable
@Schema(description = "Feature Flag GetAll (network).")
@SchemaId("https://proton.me/android_core_featureflag_getall_total_v1.schema.json")
public data class FeatureFlagGetAllTotal(
@Deprecated("Please do not use. Kept for documentation.")
private data class FeatureFlagGetAllTotal(
override val Labels: LabelsData,
@Required override val Value: Long = 1
) : CoreObservabilityData() {
@ -63,7 +64,7 @@ public data class FeatureFlagGetAllTotal(
}
}
public fun HttpApiStatus.toFeatureFlagApiStatus(): FeatureFlagGetAllTotal.ApiStatus = when (this) {
private fun HttpApiStatus.toFeatureFlagApiStatus(): FeatureFlagGetAllTotal.ApiStatus = when (this) {
HttpApiStatus.http1xx -> FeatureFlagGetAllTotal.ApiStatus.http1xx
HttpApiStatus.http2xx -> FeatureFlagGetAllTotal.ApiStatus.http2xx
HttpApiStatus.http3xx -> FeatureFlagGetAllTotal.ApiStatus.http3xx

View File

@ -26,7 +26,8 @@ import me.proton.core.observability.domain.entity.SchemaId
@Serializable
@Schema(description = "Feature Flag GetValue.")
@SchemaId("https://proton.me/android_core_featureflag_getvalue_total_v1.schema.json")
public data class FeatureFlagGetValueTotal(
@Deprecated("Please do not use. Kept for documentation.")
private data class FeatureFlagGetValueTotal(
@Required override val Labels: LabelsData,
@Required override val Value: Long = 1
) : CoreObservabilityData() {

View File

@ -26,7 +26,8 @@ import me.proton.core.observability.domain.entity.SchemaId
@Serializable
@Schema(description = "Feature Flag Refresh Request (onetime/periodic).")
@SchemaId("https://proton.me/android_core_featureflag_refreshrequest_total_v1.schema.json")
public data class FeatureFlagRefreshRequestTotal(
@Deprecated("Please do not use. Kept for documentation.")
private data class FeatureFlagRefreshRequestTotal(
override val Labels: LabelsData,
@Required override val Value: Long = 1
) : CoreObservabilityData() {