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

com.huaweicloud.sdk.koomessage.v1.model.ResourceInfo Maven / Gradle / Ivy

There is a newer version: 3.1.114
Show newest version
package com.huaweicloud.sdk.koomessage.v1.model;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.Objects;

/**
 * 智能信息基础版资源信息。
 */
public class ResourceInfo {

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value = "index")

    private String index;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value = "type")

    private String type;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value = "name")

    private String name;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value = "source")

    private String source;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonProperty(value = "content")

    private String content;

    public ResourceInfo withIndex(String index) {
        this.index = index;
        return this;
    }

    /**
     * 智能信息基础版序号。  从1开始,例如: 1-1,表示第1帧第1个元素;1-2:表示第1帧第2个元素;2-1:表示第2帧第1个元素。  > - 每帧支持最多2个元素,2个元素中必须包含有文本 > - 如果未填该字段,则每个元素独占一帧并按数组顺序排序 > - 最多支持8帧 > - 最多2帧同时包含2个元素 > - index必须全部指定,或者全为空,不能重复 
     * @return index
     */
    public String getIndex() {
        return index;
    }

    public void setIndex(String index) {
        this.index = index;
    }

    public ResourceInfo withType(String type) {
        this.type = type;
        return this;
    }

    /**
     * 智能信息基础版资源类型。 - 类型为文字填:txt - 类型为图片填:jpg/jpeg/png/gif - 类型为音频填:mp3/wav - 类型为视频填:3gp 
     * @return type
     */
    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public ResourceInfo withName(String name) {
        this.name = name;
        return this;
    }

    /**
     * 智能信息基础版资源名称。
     * @return name
     */
    public String getName() {
        return name;
    }

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

    public ResourceInfo withSource(String source) {
        this.source = source;
        return this;
    }

    /**
     * 智能信息基础版资源来源。  - txt:表示资源内容是纯文字 - file:表示资源内容来源于文件流 - url:表示资源内容来源于URL外链  > 资源来自于文字/文件流/URL外链。 
     * @return source
     */
    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public ResourceInfo withContent(String content) {
        this.content = content;
        return this;
    }

    /**
     * 智能信息基础版。 - 当source=txt时,填写经过UTF-8编码的文字 - 当source=file时,填写经过Base64编码的文件流,不须带文件格式前缀,样例:\"iVBORw0KGgoAAAANSUhEUgA...\",样例过长,未显示全部 - 当source=url时,填写资源URL地址,URL长度不能超过1024个字节  > - 支持文字图片,文字和图片使用#p_n#参数变量占位,n为1~100内的数字,不同类型的资源中不允许有重复的参数占位符,相同类型的资源同一参数占位符可复用。如:#p_1#已表示是文本参数占位符时,不可以同时是图片又是文本参数占位符。不能包含除模板签名外的“【】” > - 第一个文本帧,内容必须以:【签名】开始,'签名' 标识客户信息 
     * @return content
     */
    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    @Override
    public boolean equals(java.lang.Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null || getClass() != obj.getClass()) {
            return false;
        }
        ResourceInfo that = (ResourceInfo) obj;
        return Objects.equals(this.index, that.index) && Objects.equals(this.type, that.type)
            && Objects.equals(this.name, that.name) && Objects.equals(this.source, that.source)
            && Objects.equals(this.content, that.content);
    }

    @Override
    public int hashCode() {
        return Objects.hash(index, type, name, source, content);
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("class ResourceInfo {\n");
        sb.append("    index: ").append(toIndentedString(index)).append("\n");
        sb.append("    type: ").append(toIndentedString(type)).append("\n");
        sb.append("    name: ").append(toIndentedString(name)).append("\n");
        sb.append("    source: ").append(toIndentedString(source)).append("\n");
        sb.append("    content: ").append(toIndentedString(content)).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