package com.bonus.oss.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * 配置OSS（对象存储服务）的属性类。
 * 使用@ConfigurationProperties注解将类绑定到配置文件中以oss为前缀的属性上。
 * 使用@Configuration注解将此类标记为一个配置类，它会被Spring Boot自动检测并用于配置上下文。
 * 使用@Data注解来自动生成getter和setter方法，简化了属性访问。
 */
@Configuration
@ConfigurationProperties(prefix = "oss")
@Data
public class OSSConfig {
    /**
     * OSS的访问密钥ID。
     * 用于身份验证的重要凭证之一。
     */
    private String accessKeyId;

    /**
     * OSS的访问密钥秘钥。
     * 用于身份验证的重要凭证之一，应保密。
     */
    private String accessKeySecret;

    /**
     * OSS的存储桶名称。
     * 存储桶是OSS中用于存储对象的容器。
     */
    private String bucket;

    /**
     * OSS的Endpoint。
     * Endpoint指定了与OSS交互时使用的域名或区域。
     */
    private String endpoint;
}
