extension point for LocalDuplicatedRemovedScheduler #95

master
yihua.huang 2014-04-13 23:31:13 +08:00
parent b249e49748
commit 4a035e729a
1 changed files with 5 additions and 1 deletions

View File

@ -24,11 +24,15 @@ public abstract class LocalDuplicatedRemovedScheduler implements Scheduler {
@Override
public void push(Request request, Task task) {
logger.trace("get a candidate url {}", request.getUrl());
if (request.getExtra(Request.CYCLE_TRIED_TIMES) != null || urls.add(request.getUrl())) {
if (urls.add(request.getUrl()) || shouldReserved(request)) {
logger.debug("push to queue {}", request.getUrl());
pushWhenNoDuplicate(request, task);
}
}
protected boolean shouldReserved(Request request) {
return request.getExtra(Request.CYCLE_TRIED_TIMES) != null;
}
protected abstract void pushWhenNoDuplicate(Request request, Task task);
}