/* * SPDX-FileCopyrightText: 2020, microG Project Team * SPDX-License-Identifier: Apache-2.0 */ package org.microg.gms.tasks; import com.google.android.gms.tasks.OnSuccessListener; import com.google.android.gms.tasks.Task; import java.util.concurrent.Executor; public class SuccessExecutor extends UpdateExecutor { private OnSuccessListener listener; public SuccessExecutor(Executor executor, OnSuccessListener listener) { super(executor); this.listener = listener; } @Override public void onTaskUpdate(Task task) { if (task.isSuccessful()) { execute(() -> listener.onSuccess(task.getResult())); } } @Override public void cancel() { super.cancel(); listener = null; } }