package cn.nianxx.thhotel.platform.debug.service.impl;

import java.time.Duration;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * Debug EML 上传接口配置。访问口令只能通过环境变量或部署 Secret 注入。
 */
@Component
@ConfigurationProperties(prefix = "debug.eml-upload")
public class DebugEmlSuperAgentProperties {

    /** 是否启用 Debug EML 上传接口。 */
    private boolean enabled = false;
    /** Debug EML 上传访问口令。 */
    private String accessKey = "";
    /** 允许上传的最大文件字节数。 */
    private long maxFileBytes = 10 * 1024 * 1024L;
    /** Debug SSE 心跳间隔，用于避免长时间调用 SuperAgent 时中间链路空闲断开。 */
    private Duration sseHeartbeatInterval = Duration.ofSeconds(15);

    public boolean isEnabled() {
        return enabled;
    }

    public void setEnabled(boolean enabled) {
        this.enabled = enabled;
    }

    public String getAccessKey() {
        return accessKey;
    }

    public void setAccessKey(String accessKey) {
        this.accessKey = accessKey;
    }

    public long getMaxFileBytes() {
        return maxFileBytes;
    }

    public void setMaxFileBytes(long maxFileBytes) {
        this.maxFileBytes = maxFileBytes;
    }

    public Duration getSseHeartbeatInterval() {
        return sseHeartbeatInterval;
    }

    public void setSseHeartbeatInterval(Duration sseHeartbeatInterval) {
        this.sseHeartbeatInterval = sseHeartbeatInterval;
    }
}
