That fuck shit the fascists are using
1package org.tm.archive.net;
2
3import androidx.annotation.NonNull;
4
5import com.annimon.stream.Stream;
6
7import java.util.ArrayList;
8import java.util.List;
9
10public class CompositeRequestController implements RequestController {
11
12 private final List<RequestController> controllers = new ArrayList<>();
13 private boolean canceled = false;
14
15 public synchronized void addController(@NonNull RequestController controller) {
16 if (canceled) {
17 controller.cancel();
18 } else {
19 controllers.add(controller);
20 }
21 }
22
23 @Override
24 public synchronized void cancel() {
25 canceled = true;
26 Stream.of(controllers).forEach(RequestController::cancel);
27 }
28
29 public synchronized boolean isCanceled() {
30 return canceled;
31 }
32}