package com.bonus.oss.domain;

import lombok.Builder;
import lombok.Data;

/**
 * OssInfo类用于封装OSS（Object Storage Service）对象的相关信息。
 * 通过此类，可以方便地管理和访问OSS对象的元数据，如名称、路径、大小等。
 */
@Builder
@Data
public class OssInfo {
    /**
     * 文件或对象的名称。
     * 用于唯一标识OSS中的一个对象。
     */
    private String name;

    /**
     * 文件在OSS中的存储路径。
     * 该路径不包含Bucket名称，仅指对象在Bucket内的相对路径。
     */
    private String path;

    /**
     * 文件或对象的大小。
     * 以字符串形式表示，单位可能为字节、KB、MB等。
     */
    private String length;

    /**
     * 文件的类型。
     * 可以是文件的MIME类型，或者根据文件扩展名推测的类型。
     */
    private String fileType;

    /**
     * 存储文件的Bucket名称。
     * Bucket是OSS中用于存储对象的容器，每个对象必须属于某个Bucket。
     */
    private String bucketName;

}
