ai-manus/chat-server/src/main/java/com/bjtds/brichat/service/IndexingTaskQueueService.java

53 lines
1.1 KiB
Java

package com.bjtds.brichat.service;
import com.bjtds.brichat.entity.dto.IndexingTaskDto;
import java.util.List;
/**
* 文档索引状态监控队列服务接口
*/
public interface IndexingTaskQueueService {
/**
* 将文档任务添加到Redis队列
*
* @param task 索引任务DTO
*/
void addTaskToQueue(IndexingTaskDto task);
/**
* 从Redis队列中获取所有待处理的任务
*
* @return 任务列表
*/
List<IndexingTaskDto> getAllPendingTasks();
/**
* 更新任务状态
*
* @param task 更新后的任务信息
*/
void updateTask(IndexingTaskDto task);
/**
* 从队列中移除任务
*
* @param documentId 文档ID
*/
void removeTaskFromQueue(String documentId);
/**
* 根据文档ID获取任务信息
*
* @param documentId 文档ID
* @return 任务信息
*/
IndexingTaskDto getTaskByDocumentId(String documentId);
/**
* 清理所有索引任务队列(用于解决序列化问题)
*/
void clearAllTasks();
}