public class FileCacheQueueScheduler extends DuplicateRemovedScheduler implements MonitorableScheduler, Closeable
| 限定符和类型 | 字段和说明 |
|---|---|
private AtomicInteger |
cursor |
private String |
fileCursor |
private PrintWriter |
fileCursorWriter |
private String |
filePath |
private String |
fileUrlAllName |
private PrintWriter |
fileUrlWriter |
private ScheduledExecutorService |
flushThreadPool |
private AtomicBoolean |
inited |
private BlockingQueue<Request> |
queue |
private Task |
task |
private Set<String> |
urls |
logger| 构造器和说明 |
|---|
FileCacheQueueScheduler(String filePath) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
close() |
protected Request |
deserializeRequest(String line) |
private void |
flush() |
private String |
getFileName(String filename) |
int |
getLeftRequestsCount(Task task) |
int |
getTotalRequestsCount(Task task) |
private void |
init(Task task) |
private void |
initDuplicateRemover() |
private void |
initFlushThread() |
private void |
initWriter() |
Request |
poll(Task task) |
protected void |
pushWhenNoDuplicate(Request request,
Task task) |
private void |
readCursorFile() |
private void |
readFile() |
private void |
readUrlFile() |
protected String |
serializeRequest(Request request) |
getDuplicateRemover, noNeedToRemoveDuplicate, push, setDuplicateRemover, shouldReservedprivate String filePath
private String fileUrlAllName
private Task task
private String fileCursor
private PrintWriter fileUrlWriter
private PrintWriter fileCursorWriter
private AtomicInteger cursor
private AtomicBoolean inited
private BlockingQueue<Request> queue
private ScheduledExecutorService flushThreadPool
public FileCacheQueueScheduler(String filePath)
private void flush()
private void init(Task task)
private void initDuplicateRemover()
private void initFlushThread()
private void initWriter()
private void readFile()
private void readUrlFile()
throws IOException
IOExceptionprivate void readCursorFile()
throws IOException
IOExceptionpublic void close()
throws IOException
close 在接口中 Closeableclose 在接口中 AutoCloseableIOExceptionpublic int getLeftRequestsCount(Task task)
getLeftRequestsCount 在接口中 MonitorableSchedulerpublic int getTotalRequestsCount(Task task)
getTotalRequestsCount 在接口中 MonitorableSchedulerCopyright © 2021. All rights reserved.