package pwc.taxtech.atms.dto.user;

public class RoleInfo {

    private String ID;

    private String name;

    private Boolean isAccessible;

    private Boolean isHeritable;

    private Integer roleSource;

    private String dimensionID;

    private String dimensionValueID;

    private String dimensionValue;

    /**
     * 
     */
    public RoleInfo() {
        super();
    }

    /**
     * @param iD
     * @param name
     */
    public RoleInfo(String iD, String name) {
        super();
        ID = iD;
        this.name = name;
    }

    public String getID() {
        return ID;
    }

    public void setID(String iD) {
        ID = iD;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Boolean getIsAccessible() {
        return isAccessible;
    }

    public void setIsAccessible(Boolean isAccessible) {
        this.isAccessible = isAccessible;
    }

    public Boolean getIsHeritable() {
        return isHeritable;
    }

    public void setIsHeritable(Boolean isHeritable) {
        this.isHeritable = isHeritable;
    }

    public Integer getRoleSource() {
        return roleSource;
    }

    public void setRoleSource(Integer roleSource) {
        this.roleSource = roleSource;
    }

    public String getDimensionID() {
        return dimensionID;
    }

    public void setDimensionID(String dimensionID) {
        this.dimensionID = dimensionID;
    }

    public String getDimensionValueID() {
        return dimensionValueID;
    }

    public void setDimensionValueID(String dimensionValueID) {
        this.dimensionValueID = dimensionValueID;
    }

    public String getDimensionValue() {
        return dimensionValue;
    }

    public void setDimensionValue(String dimensionValue) {
        this.dimensionValue = dimensionValue;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((ID == null) ? 0 : ID.hashCode());
        result = prime * result + ((dimensionID == null) ? 0 : dimensionID.hashCode());
        result = prime * result + ((dimensionValue == null) ? 0 : dimensionValue.hashCode());
        result = prime * result + ((dimensionValueID == null) ? 0 : dimensionValueID.hashCode());
        result = prime * result + ((isAccessible == null) ? 0 : isAccessible.hashCode());
        result = prime * result + ((isHeritable == null) ? 0 : isHeritable.hashCode());
        result = prime * result + ((name == null) ? 0 : name.hashCode());
        result = prime * result + ((roleSource == null) ? 0 : roleSource.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        RoleInfo other = (RoleInfo) obj;
        if (ID == null) {
            if (other.ID != null)
                return false;
        } else if (!ID.equals(other.ID))
            return false;
        if (dimensionID == null) {
            if (other.dimensionID != null)
                return false;
        } else if (!dimensionID.equals(other.dimensionID))
            return false;
        if (dimensionValue == null) {
            if (other.dimensionValue != null)
                return false;
        } else if (!dimensionValue.equals(other.dimensionValue))
            return false;
        if (dimensionValueID == null) {
            if (other.dimensionValueID != null)
                return false;
        } else if (!dimensionValueID.equals(other.dimensionValueID))
            return false;
        if (isAccessible == null) {
            if (other.isAccessible != null)
                return false;
        } else if (!isAccessible.equals(other.isAccessible))
            return false;
        if (isHeritable == null) {
            if (other.isHeritable != null)
                return false;
        } else if (!isHeritable.equals(other.isHeritable))
            return false;
        if (name == null) {
            if (other.name != null)
                return false;
        } else if (!name.equals(other.name))
            return false;
        if (roleSource == null) {
            if (other.roleSource != null)
                return false;
        } else if (!roleSource.equals(other.roleSource))
            return false;
        return true;
    }
    
    

}