[tbb-commits] [tor-browser/tor-browser-68.9.0esr-9.5-1] Revert "Bug 1633568 - AdjustHelper can inform more listeners about Attribution changes. r=Grisha, a=RyanVM"

sysrqb at torproject.org sysrqb at torproject.org
Thu May 28 17:58:03 UTC 2020


commit 6421b707dd0a0cfcde4c2c45a8747dfd2ca89c49
Author: Matthew Finkel <sysrqb at torproject.org>
Date:   Thu May 28 17:55:11 2020 +0000

    Revert "Bug 1633568 - AdjustHelper can inform more listeners about Attribution changes. r=Grisha, a=RyanVM"
    
    This reverts commit 4d64699b7d664a70793431effc2f4e054ebf9230.
---
 .../org/mozilla/gecko/adjust/AdjustBrowserAppDelegate.java |  8 ++++----
 .../base/java/org/mozilla/gecko/adjust/AdjustHelper.java   | 14 ++++++--------
 .../org/mozilla/gecko/adjust/AdjustHelperInterface.java    |  2 +-
 .../mozilla/gecko/adjust/AttributionHelperListener.java    | 11 ++---------
 .../java/org/mozilla/gecko/adjust/StubAdjustHelper.java    |  2 +-
 .../mozilla/gecko/telemetry/TelemetryCorePingDelegate.java |  7 ++-----
 6 files changed, 16 insertions(+), 28 deletions(-)

diff --git a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustBrowserAppDelegate.java b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustBrowserAppDelegate.java
index f160e971def3..aee0bba63a8a 100644
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustBrowserAppDelegate.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustBrowserAppDelegate.java
@@ -13,18 +13,18 @@ import org.mozilla.gecko.util.IntentUtils;
 
 public class AdjustBrowserAppDelegate extends BrowserAppDelegate {
     private final AdjustHelperInterface adjustHelper;
-    private final AttributionHelperListener[] attributionHelperListeners;
+    private final AttributionHelperListener attributionHelperListener;
 
-    public AdjustBrowserAppDelegate(AttributionHelperListener... attributionHelperListeners) {
+    public AdjustBrowserAppDelegate(AttributionHelperListener attributionHelperListener) {
         this.adjustHelper = AdjustConstants.getAdjustHelper();
-        this.attributionHelperListeners = attributionHelperListeners;
+        this.attributionHelperListener = attributionHelperListener;
     }
 
     @Override
     public void onCreate(BrowserApp browserApp, Bundle savedInstanceState) {
         adjustHelper.onCreate(browserApp,
                 AdjustConstants.MOZ_INSTALL_TRACKING_ADJUST_SDK_APP_TOKEN,
-                attributionHelperListeners);
+                attributionHelperListener);
 
         final boolean isInAutomation = IntentUtils.getIsInAutomationFromEnvironment(
                 new SafeIntent(browserApp.getIntent()));
diff --git a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
index 410a172e7750..19399e735bb5 100644
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
@@ -21,9 +21,9 @@ import org.mozilla.gecko.AppConstants;
 public class AdjustHelper implements AdjustHelperInterface, OnAttributionChangedListener {
 
     private static final String LOGTAG = AdjustHelper.class.getSimpleName();
-    private AttributionHelperListener[] attributionListeners;
+    private AttributionHelperListener attributionListener;
 
-    public void onCreate(final Context context, final String maybeAppToken, final AttributionHelperListener... listeners) {
+    public void onCreate(final Context context, final String maybeAppToken, final AttributionHelperListener listener) {
         final String environment;
         final LogLevel logLevel;
         if (AppConstants.MOZILLA_OFFICIAL) {
@@ -37,7 +37,7 @@ public class AdjustHelper implements AdjustHelperInterface, OnAttributionChanged
             // We've got install tracking turned on -- we better have a token!
             throw new IllegalArgumentException("maybeAppToken must not be null");
         }
-        attributionListeners = listeners;
+        attributionListener = listener;
         AdjustConfig config = new AdjustConfig(context, maybeAppToken, environment);
         config.setLogLevel(logLevel);
         config.setOnAttributionChangedListener(this);
@@ -62,16 +62,14 @@ public class AdjustHelper implements AdjustHelperInterface, OnAttributionChanged
 
     @Override
     public void onAttributionChanged(AdjustAttribution attribution) {
-        if (attributionListeners == null) {
+        if (attributionListener == null) {
             throw new IllegalStateException("Expected non-null attribution listener.");
         }
 
         if (attribution == null) {
-            Log.e(LOGTAG, "Adjust attribution is null. Skipping informing listeners about this.");
+            Log.e(LOGTAG, "Adjust attribution is null; skipping campaign id retrieval.");
             return;
         }
-        for (AttributionHelperListener listener: attributionListeners) {
-            listener.onAttributionChanged(attribution);
-        }
+        attributionListener.onCampaignIdChanged(attribution.campaign);
     }
 }
diff --git a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
index 0e4b9ff6455c..aeb7b4334e9f 100644
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
@@ -13,7 +13,7 @@ public interface AdjustHelperInterface {
      * Register the Application with the Adjust SDK.
      * @param appToken the (secret!) Adjust SDK per-application token to register with; may be null.
      */
-    void onCreate(final Context context, final String appToken, final AttributionHelperListener... listener);
+    void onCreate(final Context context, final String appToken, final AttributionHelperListener listener);
     void onPause();
     void onResume();
 
diff --git a/mobile/android/base/java/org/mozilla/gecko/adjust/AttributionHelperListener.java b/mobile/android/base/java/org/mozilla/gecko/adjust/AttributionHelperListener.java
index ada55838707a..6dadd2261d7a 100644
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AttributionHelperListener.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AttributionHelperListener.java
@@ -5,20 +5,13 @@
 
 package org.mozilla.gecko.adjust;
 
-import android.support.annotation.NonNull;
-
-import com.adjust.sdk.AdjustAttribution;
-
 /**
  * Because of how our build module dependencies are structured, we aren't able to use
  * the {@link com.adjust.sdk.OnAttributionChangedListener} directly outside of {@link AdjustHelper}.
  * If the Adjust SDK is enabled, this listener should be notified when {@link com.adjust.sdk.OnAttributionChangedListener}
  * is fired (i.e. this listener would be daisy-chained to the Adjust one). The listener also
- * inherits thread-safety from GeckoSharedPrefs which is used to store the attribution.
+ * inherits thread-safety from GeckoSharedPrefs which is used to store the campaign ID.
  */
 public interface AttributionHelperListener {
-    /**
-     * @param attribution - new Adjust attribution configuration.
-     */
-    void onAttributionChanged(@NonNull final AdjustAttribution attribution);
+    void onCampaignIdChanged(String campaignId);
 }
diff --git a/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java b/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
index 386bd97c05e2..ddfed84bd73b 100644
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
@@ -9,7 +9,7 @@ import android.content.Context;
 import android.content.Intent;
 
 public class StubAdjustHelper implements AdjustHelperInterface {
-    public void onCreate(final Context context, final String appToken, final AttributionHelperListener... listeners) {
+    public void onCreate(final Context context, final String appToken, final AttributionHelperListener listener) {
         // Do nothing.
     }
 
diff --git a/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingDelegate.java b/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingDelegate.java
index 5b54657d319c..fa00a37a7c16 100644
--- a/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingDelegate.java
+++ b/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingDelegate.java
@@ -9,14 +9,11 @@ package org.mozilla.gecko.telemetry;
 import android.accessibilityservice.AccessibilityServiceInfo;
 import android.content.Context;
 import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.WorkerThread;
 import android.util.Log;
 import android.view.accessibility.AccessibilityManager;
 
-import com.adjust.sdk.AdjustAttribution;
-
 import org.json.JSONArray;
 import org.json.JSONException;
 import org.mozilla.gecko.BrowserApp;
@@ -276,7 +273,7 @@ public class TelemetryCorePingDelegate extends BrowserAppDelegateWithReference
     }
 
     @Override
-    public void onAttributionChanged(@NonNull final AdjustAttribution attribution) {
-        CampaignIdMeasurements.updateCampaignIdPref(getBrowserApp(), attribution.campaign);
+    public void onCampaignIdChanged(String campaignId) {
+        CampaignIdMeasurements.updateCampaignIdPref(getBrowserApp(), campaignId);
     }
 }



More information about the tbb-commits mailing list