com.unblu.webapi.model.v3.SuggestionSourceData Maven / Gradle / Ivy
Show all versions of models-v3 Show documentation
package com.unblu.webapi.model.v3;
import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* API Model representing a suggestion source
*/
@ApiModel(description = "API Model representing a suggestion source")
@JsonPropertyOrder({
SuggestionSourceData.JSON_PROPERTY_$_TYPE,
SuggestionSourceData.JSON_PROPERTY_ID,
SuggestionSourceData.JSON_PROPERTY_CREATION_TIMESTAMP,
SuggestionSourceData.JSON_PROPERTY_MODIFICATION_TIMESTAMP,
SuggestionSourceData.JSON_PROPERTY_VERSION,
SuggestionSourceData.JSON_PROPERTY_ACCOUNT_ID,
SuggestionSourceData.JSON_PROPERTY_NAME,
SuggestionSourceData.JSON_PROPERTY_DESCRIPTION,
SuggestionSourceData.JSON_PROPERTY_OUTBOUND_API_VERSION,
SuggestionSourceData.JSON_PROPERTY_OUTBOUND_STATUS,
SuggestionSourceData.JSON_PROPERTY_OUTBOUND_ENDPOINT,
SuggestionSourceData.JSON_PROPERTY_OUTBOUND_SECRET,
SuggestionSourceData.JSON_PROPERTY_OUTBOUND_TIMEOUT_MILLIS,
})
@JsonAutoDetect(creatorVisibility = Visibility.NONE, fieldVisibility = Visibility.NONE, getterVisibility = Visibility.NONE, isGetterVisibility = Visibility.NONE, setterVisibility = Visibility.NONE)
public class SuggestionSourceData {
/**
* Gets or Sets $type
*/
public enum TypeEnum {
SUGGESTIONSOURCEDATA("SuggestionSourceData");
private String value;
TypeEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static TypeEnum fromValue(String value) {
for (TypeEnum b : TypeEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
return TypeEnum.SUGGESTIONSOURCEDATA;
}
}
public static final String JSON_PROPERTY_$_TYPE = "$_type";
@JsonProperty(JSON_PROPERTY_$_TYPE)
private TypeEnum $type = TypeEnum.SUGGESTIONSOURCEDATA;
public static final String JSON_PROPERTY_ID = "id";
@JsonProperty(JSON_PROPERTY_ID)
private String id;
public static final String JSON_PROPERTY_CREATION_TIMESTAMP = "creationTimestamp";
@JsonProperty(JSON_PROPERTY_CREATION_TIMESTAMP)
private Long creationTimestamp;
public static final String JSON_PROPERTY_MODIFICATION_TIMESTAMP = "modificationTimestamp";
@JsonProperty(JSON_PROPERTY_MODIFICATION_TIMESTAMP)
private Long modificationTimestamp;
public static final String JSON_PROPERTY_VERSION = "version";
@JsonProperty(JSON_PROPERTY_VERSION)
private Long version;
public static final String JSON_PROPERTY_ACCOUNT_ID = "accountId";
@JsonProperty(JSON_PROPERTY_ACCOUNT_ID)
private String accountId;
public static final String JSON_PROPERTY_NAME = "name";
@JsonProperty(JSON_PROPERTY_NAME)
private String name;
public static final String JSON_PROPERTY_DESCRIPTION = "description";
@JsonProperty(JSON_PROPERTY_DESCRIPTION)
private String description;
public static final String JSON_PROPERTY_OUTBOUND_API_VERSION = "outboundApiVersion";
@JsonProperty(JSON_PROPERTY_OUTBOUND_API_VERSION)
private EWebApiVersion outboundApiVersion;
public static final String JSON_PROPERTY_OUTBOUND_STATUS = "outboundStatus";
@JsonProperty(JSON_PROPERTY_OUTBOUND_STATUS)
private EOutboundEndpointStatus outboundStatus;
public static final String JSON_PROPERTY_OUTBOUND_ENDPOINT = "outboundEndpoint";
@JsonProperty(JSON_PROPERTY_OUTBOUND_ENDPOINT)
private String outboundEndpoint;
public static final String JSON_PROPERTY_OUTBOUND_SECRET = "outboundSecret";
@JsonProperty(JSON_PROPERTY_OUTBOUND_SECRET)
private String outboundSecret;
public static final String JSON_PROPERTY_OUTBOUND_TIMEOUT_MILLIS = "outboundTimeoutMillis";
@JsonProperty(JSON_PROPERTY_OUTBOUND_TIMEOUT_MILLIS)
private Long outboundTimeoutMillis;
public SuggestionSourceData $type(TypeEnum $type) {
this.$type = $type;
return this;
}
/**
* Get $type
*
* @return $type
**/
@ApiModelProperty(value = "")
public TypeEnum get$Type() {
return $type;
}
public void set$Type(TypeEnum $type) {
this.$type = $type;
}
public SuggestionSourceData id(String id) {
this.id = id;
return this;
}
/**
* Unique id of the entity. When creating an entity this property can be omitted as it will be generated by the server anyway.
*
* @return id
**/
@ApiModelProperty(value = "Unique id of the entity. When creating an entity this property can be omitted as it will be generated by the server anyway.")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public SuggestionSourceData creationTimestamp(Long creationTimestamp) {
this.creationTimestamp = creationTimestamp;
return this;
}
/**
* Creation timestamp of the entity. It is defined when the entity is stored the first time in the system. It is ignored, when sending it to the server and
* therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data
* consistency.
*
* @return creationTimestamp
**/
@ApiModelProperty(value = "Creation timestamp of the entity. It is defined when the entity is stored the first time in the system. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.")
public Long getCreationTimestamp() {
return creationTimestamp;
}
public void setCreationTimestamp(Long creationTimestamp) {
this.creationTimestamp = creationTimestamp;
}
public SuggestionSourceData modificationTimestamp(Long modificationTimestamp) {
this.modificationTimestamp = modificationTimestamp;
return this;
}
/**
* Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational
* character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it
* will not be written to the storage and will not effect the data consistency.
*
* @return modificationTimestamp
**/
@ApiModelProperty(value = "Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.")
public Long getModificationTimestamp() {
return modificationTimestamp;
}
public void setModificationTimestamp(Long modificationTimestamp) {
this.modificationTimestamp = modificationTimestamp;
}
public SuggestionSourceData version(Long version) {
this.version = version;
return this;
}
/**
* Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When
* creating an object, the version can be omitted.
*
* @return version
**/
@ApiModelProperty(value = "Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.")
public Long getVersion() {
return version;
}
public void setVersion(Long version) {
this.version = version;
}
public SuggestionSourceData accountId(String accountId) {
this.accountId = accountId;
return this;
}
/**
* ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the
* user currently logged in. When editing an entity, you must include the account ID.
*
* @return accountId
**/
@ApiModelProperty(value = "ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.")
public String getAccountId() {
return accountId;
}
public void setAccountId(String accountId) {
this.accountId = accountId;
}
public SuggestionSourceData name(String name) {
this.name = name;
return this;
}
/**
* Name of the message interceptor. Maximum length of 250 characters. Mandatory.
*
* @return name
**/
@ApiModelProperty(value = "Name of the message interceptor. Maximum length of 250 characters. Mandatory.")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public SuggestionSourceData description(String description) {
this.description = description;
return this;
}
/**
* Description of the message interceptor. Maximum length of 500 characters. Optional.
*
* @return description
**/
@ApiModelProperty(value = "Description of the message interceptor. Maximum length of 500 characters. Optional.")
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public SuggestionSourceData outboundApiVersion(EWebApiVersion outboundApiVersion) {
this.outboundApiVersion = outboundApiVersion;
return this;
}
/**
* Get outboundApiVersion
*
* @return outboundApiVersion
**/
@ApiModelProperty(value = "")
public EWebApiVersion getOutboundApiVersion() {
return outboundApiVersion;
}
public void setOutboundApiVersion(EWebApiVersion outboundApiVersion) {
this.outboundApiVersion = outboundApiVersion;
}
public SuggestionSourceData outboundStatus(EOutboundEndpointStatus outboundStatus) {
this.outboundStatus = outboundStatus;
return this;
}
/**
* Get outboundStatus
*
* @return outboundStatus
**/
@ApiModelProperty(value = "")
public EOutboundEndpointStatus getOutboundStatus() {
return outboundStatus;
}
public void setOutboundStatus(EOutboundEndpointStatus outboundStatus) {
this.outboundStatus = outboundStatus;
}
public SuggestionSourceData outboundEndpoint(String outboundEndpoint) {
this.outboundEndpoint = outboundEndpoint;
return this;
}
/**
* The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters. <p> The
* following requests will be sent to the endpoint: <ul> <li>` OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION`: When a
* suggestion for one or more chat messages is requested.</li> <li>` OutboundRequest#ServiceNameConstants#PING`: When pinging the
* endpoint.</li> </ul>
*
* @return outboundEndpoint
**/
@ApiModelProperty(value = "The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters. The following requests will be sent to the endpoint:
- ` OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION`: When a suggestion for one or more chat messages is requested.
- ` OutboundRequest#ServiceNameConstants#PING`: When pinging the endpoint.
")
public String getOutboundEndpoint() {
return outboundEndpoint;
}
public void setOutboundEndpoint(String outboundEndpoint) {
this.outboundEndpoint = outboundEndpoint;
}
public SuggestionSourceData outboundSecret(String outboundSecret) {
this.outboundSecret = outboundSecret;
return this;
}
/**
* Optional secret which is send with each outbound request. <p> Maximum length of 4000 characters.
*
* @return outboundSecret
**/
@ApiModelProperty(value = "Optional secret which is send with each outbound request. Maximum length of 4000 characters.")
public String getOutboundSecret() {
return outboundSecret;
}
public void setOutboundSecret(String outboundSecret) {
this.outboundSecret = outboundSecret;
}
public SuggestionSourceData outboundTimeoutMillis(Long outboundTimeoutMillis) {
this.outboundTimeoutMillis = outboundTimeoutMillis;
return this;
}
/**
* The timeout for the requests sent to the outbound endpoint. Mandatory.
*
* @return outboundTimeoutMillis
**/
@ApiModelProperty(value = "The timeout for the requests sent to the outbound endpoint. Mandatory.")
public Long getOutboundTimeoutMillis() {
return outboundTimeoutMillis;
}
public void setOutboundTimeoutMillis(Long outboundTimeoutMillis) {
this.outboundTimeoutMillis = outboundTimeoutMillis;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
SuggestionSourceData suggestionSourceData = (SuggestionSourceData) o;
return Objects.equals(this.$type, suggestionSourceData.$type) &&
Objects.equals(this.id, suggestionSourceData.id) &&
Objects.equals(this.creationTimestamp, suggestionSourceData.creationTimestamp) &&
Objects.equals(this.modificationTimestamp, suggestionSourceData.modificationTimestamp) &&
Objects.equals(this.version, suggestionSourceData.version) &&
Objects.equals(this.accountId, suggestionSourceData.accountId) &&
Objects.equals(this.name, suggestionSourceData.name) &&
Objects.equals(this.description, suggestionSourceData.description) &&
Objects.equals(this.outboundApiVersion, suggestionSourceData.outboundApiVersion) &&
Objects.equals(this.outboundStatus, suggestionSourceData.outboundStatus) &&
Objects.equals(this.outboundEndpoint, suggestionSourceData.outboundEndpoint) &&
Objects.equals(this.outboundSecret, suggestionSourceData.outboundSecret) &&
Objects.equals(this.outboundTimeoutMillis, suggestionSourceData.outboundTimeoutMillis);
}
@Override
public int hashCode() {
return Objects.hash($type, id, creationTimestamp, modificationTimestamp, version, accountId, name, description, outboundApiVersion, outboundStatus, outboundEndpoint, outboundSecret, outboundTimeoutMillis);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class SuggestionSourceData {\n");
sb.append(" $type: ").append(toIndentedString($type)).append("\n");
sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" creationTimestamp: ").append(toIndentedString(creationTimestamp)).append("\n");
sb.append(" modificationTimestamp: ").append(toIndentedString(modificationTimestamp)).append("\n");
sb.append(" version: ").append(toIndentedString(version)).append("\n");
sb.append(" accountId: ").append(toIndentedString(accountId)).append("\n");
sb.append(" name: ").append(toIndentedString(name)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" outboundApiVersion: ").append(toIndentedString(outboundApiVersion)).append("\n");
sb.append(" outboundStatus: ").append(toIndentedString(outboundStatus)).append("\n");
sb.append(" outboundEndpoint: ").append(toIndentedString(outboundEndpoint)).append("\n");
sb.append(" outboundSecret: ").append(toIndentedString(outboundSecret)).append("\n");
sb.append(" outboundTimeoutMillis: ").append(toIndentedString(outboundTimeoutMillis)).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 ");
}
}