package com.backendsys.modules.queue.service;

import com.backendsys.modules.queue.entity.Entire;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.PendingMessages;
import org.springframework.data.redis.connection.stream.RecordId;

import java.util.List;
import java.util.Map;

public interface TaskService {

    // 初始化消费者组
    void initConsumerGroup(String stream_key, String group_name);

    // 获取任务队列
    List<MapRecord<String, String, String>> getTaskList(String stream_key);
    // 获取任务队列 (未消费)
    List<MapRecord<String, String, String>> getTaskPaddingList(String stream_key);

    // 添加任务
    RecordId addTask(String stream_key, Map<String, Object> task_data);
    // 移除任务
    void removeTask(String stream_key, String task_id);

    // 消费任务
    void consumeTask(String stream_key, String task_id);

//    // 消费任务
//    void consumeTask(String stream_key);
//    // 获取任务队列
//    List<MapRecord<String, String, String>> getTaskList(String stream_key);
//    List<MapRecord<String, String, String>> getTaskList(String stream_key, Entire entire);

}
