View Javadoc
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    * @author code4crafter@gmail.com
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  }