All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.huaweicloud.sdk.iam.v3.model.Version Maven / Gradle / Ivy

package com.huaweicloud.sdk.iam.v3.model;





import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import com.huaweicloud.sdk.iam.v3.model.VersionLinks;
import com.huaweicloud.sdk.iam.v3.model.VersionMediatypes;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
import java.util.Objects;

/**
 * 
 */
public class Version  {



    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value="status")
    
    private String status;


    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value="updated")
    
    private String updated;


    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value="links")
    
    private List links = null;
    

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value="id")
    
    private String id;


    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value="media-types")
    
    private List mediaTypes = null;
    
    public Version withStatus(String status) {
        this.status = status;
        return this;
    }

    


    /**
     * 版本状态。
     * @return status
     */
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    

    public Version withUpdated(String updated) {
        this.updated = updated;
        return this;
    }

    


    /**
     * 最后更新时间。
     * @return updated
     */
    public String getUpdated() {
        return updated;
    }

    public void setUpdated(String updated) {
        this.updated = updated;
    }

    

    public Version withLinks(List links) {
        this.links = links;
        return this;
    }

    
    public Version addLinksItem(VersionLinks linksItem) {
        if(this.links == null) {
            this.links = new ArrayList<>();
        }
        this.links.add(linksItem);
        return this;
    }

    public Version withLinks(Consumer> linksSetter) {
        if(this.links == null) {
            this.links = new ArrayList<>();
        }
        linksSetter.accept(this.links);
        return this;
    }

    /**
     * 版本的资源链接信息。
     * @return links
     */
    public List getLinks() {
        return links;
    }

    public void setLinks(List links) {
        this.links = links;
    }

    

    public Version withId(String id) {
        this.id = id;
        return this;
    }

    


    /**
     * 版本号,如v3.6。
     * @return id
     */
    public String getId() {
        return id;
    }

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

    

    public Version withMediaTypes(List mediaTypes) {
        this.mediaTypes = mediaTypes;
        return this;
    }

    
    public Version addMediaTypesItem(VersionMediatypes mediaTypesItem) {
        if(this.mediaTypes == null) {
            this.mediaTypes = new ArrayList<>();
        }
        this.mediaTypes.add(mediaTypesItem);
        return this;
    }

    public Version withMediaTypes(Consumer> mediaTypesSetter) {
        if(this.mediaTypes == null) {
            this.mediaTypes = new ArrayList<>();
        }
        mediaTypesSetter.accept(this.mediaTypes);
        return this;
    }

    /**
     * 支持的消息格式。
     * @return mediaTypes
     */
    public List getMediaTypes() {
        return mediaTypes;
    }

    public void setMediaTypes(List mediaTypes) {
        this.mediaTypes = mediaTypes;
    }

    

    @Override
    public boolean equals(java.lang.Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        Version version = (Version) o;
        return Objects.equals(this.status, version.status) &&
            Objects.equals(this.updated, version.updated) &&
            Objects.equals(this.links, version.links) &&
            Objects.equals(this.id, version.id) &&
            Objects.equals(this.mediaTypes, version.mediaTypes);
    }
    @Override
    public int hashCode() {
        return Objects.hash(status, updated, links, id, mediaTypes);
    }
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("class Version {\n");
        sb.append("    status: ").append(toIndentedString(status)).append("\n");
        sb.append("    updated: ").append(toIndentedString(updated)).append("\n");
        sb.append("    links: ").append(toIndentedString(links)).append("\n");
        sb.append("    id: ").append(toIndentedString(id)).append("\n");
        sb.append("    mediaTypes: ").append(toIndentedString(mediaTypes)).append("\n");
        sb.append("}");
        return sb.toString();
    }
    /**
     * Convert the given object to string with each line indented by 4 spaces
     * (except the first line).
     */
    private String toIndentedString(java.lang.Object o) {
        if (o == null) {
            return "null";
        }
        return o.toString().replace("\n", "\n    ");
    }
    
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy