package com.schisandra.oss.domain.bo;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;
/**
 * 京东云对象存储配置表 bo
 *
 * @author landaiqing
 * @since 2024-06-02 22:07:10
 */
@Data
public class SchisandraOssJdBO implements Serializable {

    /**
     * 
     */
    private Long id;

    /**
     * 
     */
    private Long userId;

    /**
     * 
     */
    private String basePath;

    /**
     * 
     */
    private String bucketName;

    /**
     * 
     */
    private String endpoint;

    /**
     * 
     */
    private String accessKey;

    /**
     * 
     */
    private String secretKey;

    /**
     * 
     */
    private String region;

    /**
     * 建立连接的超时时间（单位：毫秒）。默认为50000毫秒
     */
    private Integer connectionTimeout;

    /**
     * 允许打开的最大HTTP连接数。默认为1024
     */
    private Integer maxConnections;

    /**
     * 请求失败后最大的重试次数
     */
    private Integer maxErrorRetry;

    /**
     * 是否限制重试的默认值。
     */
    private String throttleRetries;

    /**
     * 连接协议类型
     */
    private String protocol;

    /**
     * 连接到HTTP代理时要使用的协议。
     */
    private String proxyProtocol;

    /**
     * 访问NTLM验证的代理服务器的Windows域名
     */
    private String proxyDomain;

    /**
     * 代理服务器主机地址
     */
    private String proxyHost;

    /**
     * 代理服务器验证的密码
     */
    private String proxyPassword;

    /**
     * 代理服务器端口
     */
    private String proxyPort;

    /**
     * 代理服务器验证的用户名
     */
    private String proxyUsername;

    /**
     * NTLM代理服务器的Windows工作站名称
     */
    private String proxyWorkstation;

    /**
     * 指定不通过代理应访问的主机。
     */
    private String nonProxyHosts;

    /**
     * 是否禁用Socket代理
     */
    private String disableSocketProxy;

    /**
     * 是否使用基本身份验证对代理服务器进行抢先身份验证
     */
    private String preemptiveBasicProxyAuth;

    /**
     * Socket层传输数据的超时时间（单位：毫秒）。默认为50000毫秒
     */
    private Integer socketTimeout;

    /**
     * 请求的默认超时时间。默认为0，禁用的。
     */
    private Integer requestTimeout;

    /**
     * 请求的默认超时时间。默认为0，禁用的。
     */
    private Integer clientExecutionTimeout;

    /**
     * 公共HTTP请求头前缀。
     */
    private String userAgentPrefix;

    /**
     * 是否使用com.amazonaws.http.IdleConnectionReaper管理旧连接
     */
    private String useReaper;

    /**
     * 是否使用gzip解压缩
     */
    private String useGzip;

    /**
     * Socket发送缓冲区的大小提示(以字节为单位)。
     */
    private Integer socketSendBufferSizeHint;

    /**
     * Socket接收缓冲区的大小提示(以字节为单位)。
     */
    private Integer socketReceiveBufferSizeHint;

    /**
     * 设置签名算法对请求进行签名。如果未明确设置，客户端将通过提取SDK中的配置文件来确定要使用的算法
     */
    private String signerOverride;

    /**
     * 响应元数据缓存大小
     */
    private Integer responseMetadataCacheSize;

    /**
     * 是否使用USE_EXPECT_CONTINUE作为期望值
     */
    private String useExpectContinue;

    /**
     * 是否缓存响应元数据
     */
    private String cacheResponseMetadata;

    /**
     * 连接TTL (生存时间)。Http连接由连接管理器用TTL缓存。
     */
    private Long connectionTTL;

    /**
     * 连接池中连接的最大空闲时间 (以毫秒为单位)。
     */
    private Long connectionMaxIdleMillis;

    /**
     * 在必须验证连接是否仍处于打开状态之前，连接可以在连接池中处于空闲状态。
     */
    private Integer validateAfterInActivityMillis;

    /**
     * 是否使用TCP KeepAlive的默认值。
     */
    private String tcpKeepAlive;

    /**
     * 所有请求的公共请求头
     */
    private String headers;

    /**
     * 请求失败最大重试次数
     */
    private Integer maxConsecutiveRetriesBeforeThrottling;

    /**
     * 是否禁用主机前缀
     */
    private String disableHostPrefixInjection;

    /**
     * 重试模式
     */
    private String retryMode;

    /**
     * 分片大小,默认5MB
     */
    private Integer partSize;

    /**
     * 并发线程数,默认等于CPU的核数
     */
    private Integer taskNum;

    /**
     * 状态
     */
    private String status;

    /**
     * 是否开启高级设置
     */
    private String openAdvancedSetup;

    /**
     * 创建人
     */
    private String createdBy;

    /**
     * 创建时间
     */
    private Date createdTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 更新人
     */
    private String updateBy;

    /**
     * 是否删除 0 未删除 1已删除
     */
    private Integer isDeleted;

    /**
     * 额外字段
     */
    private String extraJson;

    /**
     * 当桶不存在，是否创建
     */
    private String createBucket;

    /**
     * 启动检测桶，是否存在
     */
    private String checkBucket;

}

