Skip to content

Commit 08f12e6

Browse files
committed
Add feature flag to SharedLoginProvider
1 parent c41ad3a commit 08f12e6

File tree

3 files changed

+27
-0
lines changed

3 files changed

+27
-0
lines changed

WordPress/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ android {
122122
buildConfigField "boolean", "JETPACK_POWERED_BOTTOM_SHEET", "false"
123123
buildConfigField "boolean", "JETPACK_SHARED_LOGIN", "false"
124124
buildConfigField "boolean", "JETPACK_LOCAL_USER_FLAGS", "false"
125+
buildConfigField "boolean", "JETPACK_PROVIDER_SYNC", "false"
125126

126127
// Override these constants in jetpack product flavor to enable/ disable features
127128
buildConfigField "boolean", "ENABLE_SITE_CREATION", "true"

WordPress/src/main/java/org/wordpress/android/sharedlogin/provider/SharedLoginProvider.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import org.wordpress.android.fluxc.store.AccountStore
77
import org.wordpress.android.provider.query.QueryContentProvider
88
import org.wordpress.android.provider.query.QueryResult
99
import org.wordpress.android.sharedlogin.data.JetpackPublicData
10+
import org.wordpress.android.util.config.JetpackProviderSyncFeatureConfig
1011
import org.wordpress.android.util.signature.SignatureNotFoundException
1112
import org.wordpress.android.util.signature.SignatureUtils
1213
import javax.inject.Inject
@@ -16,6 +17,7 @@ class SharedLoginProvider : QueryContentProvider() {
1617
@Inject lateinit var signatureUtils: SignatureUtils
1718
@Inject lateinit var queryResult: QueryResult
1819
@Inject lateinit var jetpackPublicData: JetpackPublicData
20+
@Inject lateinit var jetpackProviderSyncFeatureConfig: JetpackProviderSyncFeatureConfig
1921

2022
override fun onCreate(): Boolean {
2123
return true
@@ -30,6 +32,9 @@ class SharedLoginProvider : QueryContentProvider() {
3032
sortOrder: String?
3133
): Cursor? {
3234
inject()
35+
if (!jetpackProviderSyncFeatureConfig.isEnabled()) {
36+
return null
37+
}
3338
return context?.let {
3439
try {
3540
val callerPackageId = callingPackage
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package org.wordpress.android.util.config
2+
3+
import org.wordpress.android.BuildConfig
4+
import org.wordpress.android.annotation.Feature
5+
import org.wordpress.android.util.config.JetpackProviderSyncFeatureConfig.Companion.JETPACK_PROVIDER_SYNC_REMOTE_FIELD
6+
import javax.inject.Inject
7+
8+
@Feature(JETPACK_PROVIDER_SYNC_REMOTE_FIELD, false)
9+
class JetpackProviderSyncFeatureConfig
10+
@Inject constructor(
11+
appConfig: AppConfig
12+
) : FeatureConfig(
13+
appConfig,
14+
BuildConfig.JETPACK_PROVIDER_SYNC,
15+
JETPACK_PROVIDER_SYNC_REMOTE_FIELD
16+
) {
17+
companion object {
18+
const val JETPACK_PROVIDER_SYNC_REMOTE_FIELD = "provider_sync_remote_field"
19+
}
20+
}
21+

0 commit comments

Comments
 (0)