package com.sf.service.gateway.domain;

import java.util.Date;
import java.util.Date;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

/**
* 网关服务-app网关配置表
* @TableName Gateway_config
*/
@Data
public class GatewayConfig {

    /**
    * 应用编号
    */
    @ApiModelProperty("应用编号")
    private String appCode;
    /**
    * 是否启用数据加密（0关闭，1启用）
    */
    @ApiModelProperty("是否启用数据加密（0关闭，1启用）")
    private String dataEncryptionStatus;
    /**
    * 加密算法（ECC RSA 国密）
    */
    @ApiModelProperty("加密算法（ECC RSA 国密SM2）")
    private String encryptionAlgorithm;
    /**
    * 私钥（当加密算法为 ECC 或国密SM2时，填写私钥内容。当加密算法为 RSA 时，分别填写公私钥内容。)
    */
    @ApiModelProperty("私钥（当加密算法为 ECC 或国密SM2时，填写私钥内容。当加密算法为 RSA 时，分别填写公私钥内容。)")
    private String privateKey;
    /**
    * 公钥
    */
    @ApiModelProperty("公钥")
    private String publicKey;
    /**
    * 接口限流状态（0停用 1启用）
    */
    @ApiModelProperty("接口限流状态（0停用 1启用）")
    private String apiCurrentLimitingStatus;
    /**
    * 接口限流阈值
    */
    @ApiModelProperty("接口限流阈值")
    private Integer apiCurrentLimitingThreshold;
    /**
    * 接口限流时间窗口，单位s
    */
    @ApiModelProperty("接口限流时间窗口，单位s")
    private Integer apiCurrentLimitingTimeWindow;
    /**
    * 接口默认限流响应，JSON字符串
    */
    @ApiModelProperty("接口默认限流响应，JSON字符串")
    private String apiCurrentLimitingDefaultResponse;
    /**
    * APP限流状态（0停用 1启用）
    */
    @ApiModelProperty("APP限流状态（0停用 1启用）")
    private String appCurrentLimitingStatus;
    /**
    * APP限流阈值
    */
    @ApiModelProperty("APP限流阈值")
    private Integer appCurrentLimitingThreshold;
    /**
    * APP限流时间窗口，单位s
    */
    @ApiModelProperty("APP限流时间窗口，单位s")
    private Integer appCurrentLimitingTimeWindow;
    /**
    * APP默认限流响应，JSON字符串
    */
    @ApiModelProperty("APP默认限流响应，JSON字符串")
    private String appCurrentLimitingDefaultResponse;
    /**
    * 创建者
    */
    @ApiModelProperty("创建者")
    private String created;
    /**
    * 创建时间
    */
    @ApiModelProperty("创建时间")
    private Date createTime;
    /**
    * 更新者
    */
    @ApiModelProperty("更新者")
    private String modified;
    /**
    * 更新时间
    */
    @ApiModelProperty("更新时间")
    private Date updateTime;

}
