Commit 4dc7bcc0 authored by Jonathan Freed's avatar Jonathan Freed Committed by Commit Bot

Removing duplicate upload of dismiss actions.

This excludes dismiss actions from the FeedQuery request for signed in
users. Signed in users' dismiss actions are uploaded via the
ActionsUpload endpoint.

Bug: 1099056
Change-Id: Ibe12e717c346b9f752cd2026ac2f702cf80bcf77
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2274783
Commit-Queue: Jonathan Freed <freedjm@chromium.org>
Reviewed-by: default avatarDan H <harringtond@chromium.org>
Cr-Commit-Position: refs/heads/master@{#784206}
parent 9985cbab
......@@ -42,6 +42,9 @@ import org.chromium.chrome.browser.feed.library.common.time.TimingUtils;
import org.chromium.chrome.browser.feed.library.common.time.TimingUtils.ElapsedTimeTracker;
import org.chromium.chrome.browser.feed.library.feedrequestmanager.internal.Utils;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManager;
import org.chromium.chrome.browser.signin.IdentityServicesProvider;
import org.chromium.components.feed.core.proto.libraries.api.internal.StreamDataProto.StreamToken;
import org.chromium.components.feed.core.proto.wire.ActionTypeProto;
import org.chromium.components.feed.core.proto.wire.CapabilityProto.Capability;
......@@ -72,7 +75,7 @@ import java.util.List;
import java.util.Map;
/** Default implementation of FeedRequestManager. */
public final class FeedRequestManagerImpl implements FeedRequestManager {
public class FeedRequestManagerImpl implements FeedRequestManager {
private static final String TAG = "FeedRequestManagerImpl";
private final Configuration mConfiguration;
......@@ -89,6 +92,7 @@ public final class FeedRequestManagerImpl implements FeedRequestManager {
private final BasicLoggingApi mBasicLoggingApi;
private final TooltipSupportedApi mTooltipSupportedApi;
private final ApplicationInfo mApplicationInfo;
private final boolean mSignedIn;
public FeedRequestManagerImpl(Configuration configuration, NetworkClient networkClient,
ProtocolAdapter protocolAdapter, FeedExtensionRegistry extensionRegistry,
......@@ -110,6 +114,7 @@ public final class FeedRequestManagerImpl implements FeedRequestManager {
this.mMainThreadRunner = mainThreadRunner;
this.mBasicLoggingApi = basicLoggingApi;
this.mTooltipSupportedApi = tooltipSupportedApi;
this.mSignedIn = isSignedIn();
}
@Override
......@@ -177,17 +182,27 @@ public final class FeedRequestManagerImpl implements FeedRequestManager {
}
}
boolean isSignedIn() {
try {
return IdentityServicesProvider.get()
.getIdentityManager(Profile.getLastUsedRegularProfile())
.hasPrimaryAccount();
} catch (IllegalStateException e) {
assert !ProfileManager.isInitialized();
}
return false;
}
private void executeRequest(RequestBuilder requestBuilder, Consumer<Result<Model>> consumer) {
mThreadUtils.checkNotMainThread();
Result<List<DismissActionWithSemanticProperties>> dismissActionsResult =
mActionReader.getDismissActionsWithSemanticProperties();
if (dismissActionsResult.isSuccessful()) {
requestBuilder.setActions(dismissActionsResult.getValue());
for (DismissActionWithSemanticProperties dismiss : dismissActionsResult.getValue()) {
Logger.i(TAG, "Dismiss action: %s", dismiss.getContentId());
// Do not include Dismiss actions in the FeedQuery request for signed in users.
// Dismiss actions for signed in users are uploaded via the ActionsUpload endpoint.
if (!mSignedIn) {
Result<List<DismissActionWithSemanticProperties>> dismissActionsResult =
mActionReader.getDismissActionsWithSemanticProperties();
if (dismissActionsResult.isSuccessful()) {
requestBuilder.setActions(dismissActionsResult.getValue());
}
} else {
Logger.e(TAG, "Error fetching dismiss actions");
}
if (mConfiguration.getValueOrDefault(ConfigKey.CARD_MENU_TOOLTIP_ELIGIBLE, false)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment