package com.bocloud.ims.entity.resource;

import com.bocloud.entity.annotations.Column;
import com.bocloud.entity.annotations.PK;
import com.bocloud.entity.annotations.Table;
import com.bocloud.entity.meta.PKStrategy;

import java.math.BigDecimal;

/**
 * 额外配置实体类
 *
 * @author tanshaolong
 */
@Table("flavor_extra_specs")
public class FlavorExtraSpecs {

    @PK(value = PKStrategy.AUTO)
    private Long id; // ID
    @Column("priority")
    private Integer priority; // 可用性优先级
    @Column("dedicated_proc")
    private Boolean dedicatedProc; // 是否共享处理器
    @Column("max_mem")
    private BigDecimal maxMem; // 最大内存
    @Column("min_mem")
    private BigDecimal minMem; // 最小内存
    @Column("max_proc_units")
    private Double maxProcUnits; // 最大处理器单元数
    @Column("min_proc_units")
    private Double minProcUnits; // 最小处理器单元数
    @Column("proc_units")
    private Double procUnits; // 处理器单元数
    @Column("max_vcpu")
    private Integer maxVcpu; // 最大cpu
    @Column("min_vcpu")
    private Integer minVcpu; // 最小cpu
    @Column("shared_weight")
    private Integer sharedWeight; // 共享权重
    @Column("uncapped")
    private Boolean uncapped; // 是否限制
    @Column("proc_compatibility")
    private String procCompatibility; // 处理器兼容方式

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getPriority() {
        return priority;
    }

    public void setPriority(Integer priority) {
        this.priority = priority;
    }

    public Boolean getDedicatedProc() {
        return dedicatedProc;
    }

    public void setDedicatedProc(Boolean dedicatedProc) {
        this.dedicatedProc = dedicatedProc;
    }

    public BigDecimal getMaxMem() {
        return maxMem;
    }

    public void setMaxMem(BigDecimal maxMem) {
        this.maxMem = maxMem;
    }

    public BigDecimal getMinMem() {
        return minMem;
    }

    public void setMinMem(BigDecimal minMem) {
        this.minMem = minMem;
    }

    public Double getMaxProcUnits() {
        return maxProcUnits;
    }

    public void setMaxProcUnits(Double maxProcUnits) {
        this.maxProcUnits = maxProcUnits;
    }

    public Double getMinProcUnits() {
        return minProcUnits;
    }

    public void setMinProcUnits(Double minProcUnits) {
        this.minProcUnits = minProcUnits;
    }

    public Double getProcUnits() {
        return procUnits;
    }

    public void setProcUnits(Double procUnits) {
        this.procUnits = procUnits;
    }

    public Integer getMaxVcpu() {
        return maxVcpu;
    }

    public void setMaxVcpu(Integer maxVcpu) {
        this.maxVcpu = maxVcpu;
    }

    public Integer getMinVcpu() {
        return minVcpu;
    }

    public void setMinVcpu(Integer minVcpu) {
        this.minVcpu = minVcpu;
    }

    public Integer getSharedWeight() {
        return sharedWeight;
    }

    public void setSharedWeight(Integer sharedWeight) {
        this.sharedWeight = sharedWeight;
    }

    public Boolean getUncapped() {
        return uncapped;
    }

    public void setUncapped(Boolean uncapped) {
        this.uncapped = uncapped;
    }

    public String getProcCompatibility() {
        return procCompatibility;
    }

    public void setProcCompatibility(String procCompatibility) {
        this.procCompatibility = procCompatibility;
    }
}
