ConfirmationData.java 1.29 KB
package com.xly.entity;

import lombok.Data;

import java.util.HashMap;
import java.util.Map;

@Data
public class ConfirmationData {
    private final String requestId;
    private final String toolName;
    private final Map<String, Object> parameters;
    private final String initialResult;
    private final long expiryTimestamp; // 超时时间戳

    public ConfirmationData(String requestId, String toolName,
                            Map<String, Object> parameters,
                            String initialResult,
                            long timeoutMillis) {
        this.requestId = requestId;
        this.toolName = toolName;
        this.parameters = parameters != null ? new HashMap<>(parameters) : new HashMap<>();
        this.initialResult = initialResult;
        this.expiryTimestamp = System.currentTimeMillis() + timeoutMillis;
    }

    // Getters 和 检查方法
    public boolean isExpired() {
        return System.currentTimeMillis() > expiryTimestamp;
    }

    public String getRequestId() { return requestId; }
    public String getToolName() { return toolName; }
    public Map<String, Object> getParameters() { return new HashMap<>(parameters); }
    public String getInitialResult() { return initialResult; }
    public long getExpiryTimestamp() { return expiryTimestamp; }
}