
mtons.spider.bucket.Bucket Maven / Gradle / Ivy
package mtons.spider.bucket;
import mtons.spider.http.Request;
import java.util.Collection;
/**
* 任务存储
* - 负责存储从页面分析而来的链接
* - 可做多种实现, 如 优先级排序等
*
* Created by langhsu on 16/6/3.
*/
public interface Bucket {
/**
* 添加请求任务到队尾
* @param request 请求任务
*/
void push(Request request);
/**
* 添加多个请求任务到队尾
* @param requests 任务列表
*/
void push(Collection requests);
/**
* 从队列中获取任务
* @return request 请求任务, 可能为 null
*/
Request poll();
/**
* 判断队列中是否包含某任务
* @param request 任务
* @return boolean true 已存在/ false 不存在
*/
boolean contains(Request request);
/**
* 判断队列是否为空
* @return true/false
*/
boolean isEmpty();
/**
* 查询队列大小
* @return 队列大小
*/
int size();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy