1 package us.codecraft.webmagic.samples.scheduler;
2
3 import us.codecraft.webmagic.Request;
4 import us.codecraft.webmagic.Task;
5 import us.codecraft.webmagic.scheduler.PriorityScheduler;
6
7
8
9
10 public class LevelLimitScheduler extends PriorityScheduler {
11
12 private int levelLimit = 3;
13
14 public LevelLimitScheduler(int levelLimit) {
15 this.levelLimit = levelLimit;
16 }
17
18 @Override
19 public synchronized void push(Request request, Task task) {
20 if (((Integer) request.getExtra("_level")) <= levelLimit) {
21 super.push(request, task);
22 }
23 }
24 }