com.ibm.watson.conversationalskills.model.RuntimeResponseGeneric Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of conversationalskills-sdk Show documentation
Show all versions of conversationalskills-sdk Show documentation
SDK for creating Conversational Skills Pro-Code Provider
/*
Copyright 2024 IBM Corporation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package com.ibm.watson.conversationalskills.model;
import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* RuntimeResponseGeneric
*/
@JsonPropertyOrder({
RuntimeResponseGeneric.JSON_PROPERTY_RESPONSE_TYPE,
RuntimeResponseGeneric.JSON_PROPERTY_TEXT,
RuntimeResponseGeneric.JSON_PROPERTY_CHANNELS,
RuntimeResponseGeneric.JSON_PROPERTY_TIME,
RuntimeResponseGeneric.JSON_PROPERTY_TYPING,
RuntimeResponseGeneric.JSON_PROPERTY_SOURCE,
RuntimeResponseGeneric.JSON_PROPERTY_TITLE,
RuntimeResponseGeneric.JSON_PROPERTY_DESCRIPTION,
RuntimeResponseGeneric.JSON_PROPERTY_ALT_TEXT,
RuntimeResponseGeneric.JSON_PROPERTY_PREFERENCE,
RuntimeResponseGeneric.JSON_PROPERTY_OPTIONS,
RuntimeResponseGeneric.JSON_PROPERTY_MESSAGE_TO_HUMAN_AGENT,
RuntimeResponseGeneric.JSON_PROPERTY_AGENT_AVAILABLE,
RuntimeResponseGeneric.JSON_PROPERTY_AGENT_UNAVAILABLE,
RuntimeResponseGeneric.JSON_PROPERTY_TRANSFER_INFO,
RuntimeResponseGeneric.JSON_PROPERTY_TOPIC,
RuntimeResponseGeneric.JSON_PROPERTY_SUGGESTIONS,
RuntimeResponseGeneric.JSON_PROPERTY_MESSAGE_TO_USER,
RuntimeResponseGeneric.JSON_PROPERTY_HEADER,
RuntimeResponseGeneric.JSON_PROPERTY_PRIMARY_RESULTS,
RuntimeResponseGeneric.JSON_PROPERTY_ADDITIONAL_RESULTS,
RuntimeResponseGeneric.JSON_PROPERTY_USER_DEFINED,
RuntimeResponseGeneric.JSON_PROPERTY_CHANNEL_OPTIONS,
RuntimeResponseGeneric.JSON_PROPERTY_IMAGE_URL
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.8.0")
@JsonIgnoreProperties(
value = "response_type", // ignore manually set response_type, it will be automatically generated by Jackson during serialization
allowSetters = true // allows the response_type to be set during deserialization
)
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "response_type", visible = true)
@JsonSubTypes({
@JsonSubTypes.Type(value = RuntimeResponseTypeAudio.class, name = "audio"),
@JsonSubTypes.Type(value = RuntimeResponseTypeChannelTransfer.class, name = "channel_transfer"),
@JsonSubTypes.Type(value = RuntimeResponseTypeConnectToAgent.class, name = "connect_to_agent"),
@JsonSubTypes.Type(value = RuntimeResponseTypeDate.class, name = "date"),
@JsonSubTypes.Type(value = RuntimeResponseTypeIframe.class, name = "iframe"),
@JsonSubTypes.Type(value = RuntimeResponseTypeImage.class, name = "image"),
@JsonSubTypes.Type(value = RuntimeResponseTypeOption.class, name = "option"),
@JsonSubTypes.Type(value = RuntimeResponseTypePause.class, name = "pause"),
@JsonSubTypes.Type(value = RuntimeResponseTypeSearch.class, name = "search"),
@JsonSubTypes.Type(value = RuntimeResponseTypeSuggestion.class, name = "suggestion"),
@JsonSubTypes.Type(value = RuntimeResponseTypeText.class, name = "text"),
@JsonSubTypes.Type(value = RuntimeResponseTypeUserDefined.class, name = "user_defined"),
@JsonSubTypes.Type(value = RuntimeResponseTypeVideo.class, name = "video"),
@JsonSubTypes.Type(value = RuntimeResponseTypeAudio.class, name = "RuntimeResponseTypeAudio"),
@JsonSubTypes.Type(value = RuntimeResponseTypeChannelTransfer.class, name = "RuntimeResponseTypeChannelTransfer"),
@JsonSubTypes.Type(value = RuntimeResponseTypeConnectToAgent.class, name = "RuntimeResponseTypeConnectToAgent"),
@JsonSubTypes.Type(value = RuntimeResponseTypeDate.class, name = "RuntimeResponseTypeDate"),
@JsonSubTypes.Type(value = RuntimeResponseTypeIframe.class, name = "RuntimeResponseTypeIframe"),
@JsonSubTypes.Type(value = RuntimeResponseTypeImage.class, name = "RuntimeResponseTypeImage"),
@JsonSubTypes.Type(value = RuntimeResponseTypeOption.class, name = "RuntimeResponseTypeOption"),
@JsonSubTypes.Type(value = RuntimeResponseTypePause.class, name = "RuntimeResponseTypePause"),
@JsonSubTypes.Type(value = RuntimeResponseTypeSearch.class, name = "RuntimeResponseTypeSearch"),
@JsonSubTypes.Type(value = RuntimeResponseTypeSuggestion.class, name = "RuntimeResponseTypeSuggestion"),
@JsonSubTypes.Type(value = RuntimeResponseTypeText.class, name = "RuntimeResponseTypeText"),
@JsonSubTypes.Type(value = RuntimeResponseTypeUserDefined.class, name = "RuntimeResponseTypeUserDefined"),
@JsonSubTypes.Type(value = RuntimeResponseTypeVideo.class, name = "RuntimeResponseTypeVideo"),
})
public class RuntimeResponseGeneric {
public static final String JSON_PROPERTY_RESPONSE_TYPE = "response_type";
private String responseType;
public static final String JSON_PROPERTY_TEXT = "text";
private String text;
public static final String JSON_PROPERTY_CHANNELS = "channels";
private List channels = new ArrayList<>();
public static final String JSON_PROPERTY_TIME = "time";
private Integer time;
public static final String JSON_PROPERTY_TYPING = "typing";
private Boolean typing;
public static final String JSON_PROPERTY_SOURCE = "source";
private String source;
public static final String JSON_PROPERTY_TITLE = "title";
private String title;
public static final String JSON_PROPERTY_DESCRIPTION = "description";
private String description;
public static final String JSON_PROPERTY_ALT_TEXT = "alt_text";
private String altText;
/**
* The preferred type of control to display.
*/
public enum PreferenceEnum {
DROPDOWN("dropdown"),
BUTTON("button");
private String value;
PreferenceEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static PreferenceEnum fromValue(String value) {
for (PreferenceEnum b : PreferenceEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_PREFERENCE = "preference";
private PreferenceEnum preference;
public static final String JSON_PROPERTY_OPTIONS = "options";
private List options = new ArrayList<>();
public static final String JSON_PROPERTY_MESSAGE_TO_HUMAN_AGENT = "message_to_human_agent";
private String messageToHumanAgent;
public static final String JSON_PROPERTY_AGENT_AVAILABLE = "agent_available";
private RuntimeResponseTypeConnectToAgentAgentAvailable agentAvailable;
public static final String JSON_PROPERTY_AGENT_UNAVAILABLE = "agent_unavailable";
private RuntimeResponseTypeConnectToAgentAgentUnavailable agentUnavailable;
public static final String JSON_PROPERTY_TRANSFER_INFO = "transfer_info";
private ChannelTransferInfo transferInfo;
public static final String JSON_PROPERTY_TOPIC = "topic";
private String topic;
public static final String JSON_PROPERTY_SUGGESTIONS = "suggestions";
private List suggestions = new ArrayList<>();
public static final String JSON_PROPERTY_MESSAGE_TO_USER = "message_to_user";
private String messageToUser;
public static final String JSON_PROPERTY_HEADER = "header";
private String header;
public static final String JSON_PROPERTY_PRIMARY_RESULTS = "primary_results";
private List primaryResults = new ArrayList<>();
public static final String JSON_PROPERTY_ADDITIONAL_RESULTS = "additional_results";
private List additionalResults = new ArrayList<>();
public static final String JSON_PROPERTY_USER_DEFINED = "user_defined";
private Map userDefined = new HashMap<>();
public static final String JSON_PROPERTY_CHANNEL_OPTIONS = "channel_options";
private Object channelOptions;
public static final String JSON_PROPERTY_IMAGE_URL = "image_url";
private String imageUrl;
public RuntimeResponseGeneric() {
}
public RuntimeResponseGeneric responseType(String responseType) {
this.responseType = responseType;
return this;
}
/**
* The type of response returned by the dialog node. The specified response type must be supported by the client application or channel.
* @return responseType
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_RESPONSE_TYPE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getResponseType() {
return responseType;
}
@JsonProperty(JSON_PROPERTY_RESPONSE_TYPE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setResponseType(String responseType) {
this.responseType = responseType;
}
public RuntimeResponseGeneric text(String text) {
this.text = text;
return this;
}
/**
* The text of the response.
* @return text
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_TEXT)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getText() {
return text;
}
@JsonProperty(JSON_PROPERTY_TEXT)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setText(String text) {
this.text = text;
}
public RuntimeResponseGeneric channels(List channels) {
this.channels = channels;
return this;
}
public RuntimeResponseGeneric addChannelsItem(ResponseGenericChannel channelsItem) {
if (this.channels == null) {
this.channels = new ArrayList<>();
}
this.channels.add(channelsItem);
return this;
}
/**
* An array of objects specifying channels for which the response is intended. If **channels** is present, the response is intended for a built-in integration and should not be handled by an API client.
* @return channels
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_CHANNELS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public List getChannels() {
return channels;
}
@JsonProperty(JSON_PROPERTY_CHANNELS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setChannels(List channels) {
this.channels = channels;
}
public RuntimeResponseGeneric time(Integer time) {
this.time = time;
return this;
}
/**
* How long to pause, in milliseconds.
* @return time
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_TIME)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public Integer getTime() {
return time;
}
@JsonProperty(JSON_PROPERTY_TIME)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setTime(Integer time) {
this.time = time;
}
public RuntimeResponseGeneric typing(Boolean typing) {
this.typing = typing;
return this;
}
/**
* Whether to send a \"user is typing\" event during the pause.
* @return typing
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_TYPING)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Boolean getTyping() {
return typing;
}
@JsonProperty(JSON_PROPERTY_TYPING)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setTyping(Boolean typing) {
this.typing = typing;
}
public RuntimeResponseGeneric source(String source) {
this.source = source;
return this;
}
/**
* The `https:` URL of the embeddable content.
* @return source
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_SOURCE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getSource() {
return source;
}
@JsonProperty(JSON_PROPERTY_SOURCE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setSource(String source) {
this.source = source;
}
public RuntimeResponseGeneric title(String title) {
this.title = title;
return this;
}
/**
* The title or introductory text to show before the response.
* @return title
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_TITLE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getTitle() {
return title;
}
@JsonProperty(JSON_PROPERTY_TITLE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setTitle(String title) {
this.title = title;
}
public RuntimeResponseGeneric description(String description) {
this.description = description;
return this;
}
/**
* The description to show with the the response.
* @return description
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_DESCRIPTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDescription() {
return description;
}
@JsonProperty(JSON_PROPERTY_DESCRIPTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDescription(String description) {
this.description = description;
}
public RuntimeResponseGeneric altText(String altText) {
this.altText = altText;
return this;
}
/**
* Descriptive text that can be used for screen readers or other situations where the audio player cannot be seen.
* @return altText
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_ALT_TEXT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getAltText() {
return altText;
}
@JsonProperty(JSON_PROPERTY_ALT_TEXT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAltText(String altText) {
this.altText = altText;
}
public RuntimeResponseGeneric preference(PreferenceEnum preference) {
this.preference = preference;
return this;
}
/**
* The preferred type of control to display.
* @return preference
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_PREFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public PreferenceEnum getPreference() {
return preference;
}
@JsonProperty(JSON_PROPERTY_PREFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setPreference(PreferenceEnum preference) {
this.preference = preference;
}
public RuntimeResponseGeneric options(List options) {
this.options = options;
return this;
}
public RuntimeResponseGeneric addOptionsItem(DialogNodeOutputOptionsElement optionsItem) {
if (this.options == null) {
this.options = new ArrayList<>();
}
this.options.add(optionsItem);
return this;
}
/**
* An array of objects describing the options from which the user can choose.
* @return options
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_OPTIONS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public List getOptions() {
return options;
}
@JsonProperty(JSON_PROPERTY_OPTIONS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setOptions(List options) {
this.options = options;
}
public RuntimeResponseGeneric messageToHumanAgent(String messageToHumanAgent) {
this.messageToHumanAgent = messageToHumanAgent;
return this;
}
/**
* A message to be sent to the human agent who will be taking over the conversation.
* @return messageToHumanAgent
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_MESSAGE_TO_HUMAN_AGENT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getMessageToHumanAgent() {
return messageToHumanAgent;
}
@JsonProperty(JSON_PROPERTY_MESSAGE_TO_HUMAN_AGENT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMessageToHumanAgent(String messageToHumanAgent) {
this.messageToHumanAgent = messageToHumanAgent;
}
public RuntimeResponseGeneric agentAvailable(RuntimeResponseTypeConnectToAgentAgentAvailable agentAvailable) {
this.agentAvailable = agentAvailable;
return this;
}
/**
* Get agentAvailable
* @return agentAvailable
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_AGENT_AVAILABLE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public RuntimeResponseTypeConnectToAgentAgentAvailable getAgentAvailable() {
return agentAvailable;
}
@JsonProperty(JSON_PROPERTY_AGENT_AVAILABLE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAgentAvailable(RuntimeResponseTypeConnectToAgentAgentAvailable agentAvailable) {
this.agentAvailable = agentAvailable;
}
public RuntimeResponseGeneric agentUnavailable(RuntimeResponseTypeConnectToAgentAgentUnavailable agentUnavailable) {
this.agentUnavailable = agentUnavailable;
return this;
}
/**
* Get agentUnavailable
* @return agentUnavailable
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_AGENT_UNAVAILABLE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public RuntimeResponseTypeConnectToAgentAgentUnavailable getAgentUnavailable() {
return agentUnavailable;
}
@JsonProperty(JSON_PROPERTY_AGENT_UNAVAILABLE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAgentUnavailable(RuntimeResponseTypeConnectToAgentAgentUnavailable agentUnavailable) {
this.agentUnavailable = agentUnavailable;
}
public RuntimeResponseGeneric transferInfo(ChannelTransferInfo transferInfo) {
this.transferInfo = transferInfo;
return this;
}
/**
* Get transferInfo
* @return transferInfo
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_TRANSFER_INFO)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public ChannelTransferInfo getTransferInfo() {
return transferInfo;
}
@JsonProperty(JSON_PROPERTY_TRANSFER_INFO)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setTransferInfo(ChannelTransferInfo transferInfo) {
this.transferInfo = transferInfo;
}
public RuntimeResponseGeneric topic(String topic) {
this.topic = topic;
return this;
}
/**
* A label identifying the topic of the conversation, derived from the **title** property of the relevant node or the **topic** property of the dialog node response.
* @return topic
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_TOPIC)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getTopic() {
return topic;
}
@JsonProperty(JSON_PROPERTY_TOPIC)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setTopic(String topic) {
this.topic = topic;
}
public RuntimeResponseGeneric suggestions(List suggestions) {
this.suggestions = suggestions;
return this;
}
public RuntimeResponseGeneric addSuggestionsItem(DialogSuggestion suggestionsItem) {
if (this.suggestions == null) {
this.suggestions = new ArrayList<>();
}
this.suggestions.add(suggestionsItem);
return this;
}
/**
* An array of objects describing the possible matching dialog nodes from which the user can choose.
* @return suggestions
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_SUGGESTIONS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public List getSuggestions() {
return suggestions;
}
@JsonProperty(JSON_PROPERTY_SUGGESTIONS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setSuggestions(List suggestions) {
this.suggestions = suggestions;
}
public RuntimeResponseGeneric messageToUser(String messageToUser) {
this.messageToUser = messageToUser;
return this;
}
/**
* The message to display to the user when initiating a channel transfer.
* @return messageToUser
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_MESSAGE_TO_USER)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getMessageToUser() {
return messageToUser;
}
@JsonProperty(JSON_PROPERTY_MESSAGE_TO_USER)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setMessageToUser(String messageToUser) {
this.messageToUser = messageToUser;
}
public RuntimeResponseGeneric header(String header) {
this.header = header;
return this;
}
/**
* The title or introductory text to show before the response. This text is defined in the search skill configuration.
* @return header
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_HEADER)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getHeader() {
return header;
}
@JsonProperty(JSON_PROPERTY_HEADER)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setHeader(String header) {
this.header = header;
}
public RuntimeResponseGeneric primaryResults(List primaryResults) {
this.primaryResults = primaryResults;
return this;
}
public RuntimeResponseGeneric addPrimaryResultsItem(SearchResult primaryResultsItem) {
if (this.primaryResults == null) {
this.primaryResults = new ArrayList<>();
}
this.primaryResults.add(primaryResultsItem);
return this;
}
/**
* An array of objects that contains the search results to be displayed in the initial response to the user.
* @return primaryResults
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_PRIMARY_RESULTS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public List getPrimaryResults() {
return primaryResults;
}
@JsonProperty(JSON_PROPERTY_PRIMARY_RESULTS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setPrimaryResults(List primaryResults) {
this.primaryResults = primaryResults;
}
public RuntimeResponseGeneric additionalResults(List additionalResults) {
this.additionalResults = additionalResults;
return this;
}
public RuntimeResponseGeneric addAdditionalResultsItem(SearchResult additionalResultsItem) {
if (this.additionalResults == null) {
this.additionalResults = new ArrayList<>();
}
this.additionalResults.add(additionalResultsItem);
return this;
}
/**
* An array of objects that contains additional search results that can be displayed to the user upon request.
* @return additionalResults
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_ADDITIONAL_RESULTS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public List getAdditionalResults() {
return additionalResults;
}
@JsonProperty(JSON_PROPERTY_ADDITIONAL_RESULTS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setAdditionalResults(List additionalResults) {
this.additionalResults = additionalResults;
}
public RuntimeResponseGeneric userDefined(Map userDefined) {
this.userDefined = userDefined;
return this;
}
public RuntimeResponseGeneric putUserDefinedItem(String key, Object userDefinedItem) {
this.userDefined.put(key, userDefinedItem);
return this;
}
/**
* An object containing any properties for the user-defined response type.
* @return userDefined
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_USER_DEFINED)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public Map getUserDefined() {
return userDefined;
}
@JsonProperty(JSON_PROPERTY_USER_DEFINED)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setUserDefined(Map userDefined) {
this.userDefined = userDefined;
}
public RuntimeResponseGeneric channelOptions(Object channelOptions) {
this.channelOptions = channelOptions;
return this;
}
/**
* For internal use only.
* @return channelOptions
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_CHANNEL_OPTIONS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Object getChannelOptions() {
return channelOptions;
}
@JsonProperty(JSON_PROPERTY_CHANNEL_OPTIONS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setChannelOptions(Object channelOptions) {
this.channelOptions = channelOptions;
}
public RuntimeResponseGeneric imageUrl(String imageUrl) {
this.imageUrl = imageUrl;
return this;
}
/**
* The URL of an image that shows a preview of the embedded content.
* @return imageUrl
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_IMAGE_URL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getImageUrl() {
return imageUrl;
}
@JsonProperty(JSON_PROPERTY_IMAGE_URL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setImageUrl(String imageUrl) {
this.imageUrl = imageUrl;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
RuntimeResponseGeneric runtimeResponseGeneric = (RuntimeResponseGeneric) o;
return Objects.equals(this.responseType, runtimeResponseGeneric.responseType) &&
Objects.equals(this.text, runtimeResponseGeneric.text) &&
Objects.equals(this.channels, runtimeResponseGeneric.channels) &&
Objects.equals(this.time, runtimeResponseGeneric.time) &&
Objects.equals(this.typing, runtimeResponseGeneric.typing) &&
Objects.equals(this.source, runtimeResponseGeneric.source) &&
Objects.equals(this.title, runtimeResponseGeneric.title) &&
Objects.equals(this.description, runtimeResponseGeneric.description) &&
Objects.equals(this.altText, runtimeResponseGeneric.altText) &&
Objects.equals(this.preference, runtimeResponseGeneric.preference) &&
Objects.equals(this.options, runtimeResponseGeneric.options) &&
Objects.equals(this.messageToHumanAgent, runtimeResponseGeneric.messageToHumanAgent) &&
Objects.equals(this.agentAvailable, runtimeResponseGeneric.agentAvailable) &&
Objects.equals(this.agentUnavailable, runtimeResponseGeneric.agentUnavailable) &&
Objects.equals(this.transferInfo, runtimeResponseGeneric.transferInfo) &&
Objects.equals(this.topic, runtimeResponseGeneric.topic) &&
Objects.equals(this.suggestions, runtimeResponseGeneric.suggestions) &&
Objects.equals(this.messageToUser, runtimeResponseGeneric.messageToUser) &&
Objects.equals(this.header, runtimeResponseGeneric.header) &&
Objects.equals(this.primaryResults, runtimeResponseGeneric.primaryResults) &&
Objects.equals(this.additionalResults, runtimeResponseGeneric.additionalResults) &&
Objects.equals(this.userDefined, runtimeResponseGeneric.userDefined) &&
Objects.equals(this.channelOptions, runtimeResponseGeneric.channelOptions) &&
Objects.equals(this.imageUrl, runtimeResponseGeneric.imageUrl);
}
@Override
public int hashCode() {
return Objects.hash(responseType, text, channels, time, typing, source, title, description, altText, preference, options, messageToHumanAgent, agentAvailable, agentUnavailable, transferInfo, topic, suggestions, messageToUser, header, primaryResults, additionalResults, userDefined, channelOptions, imageUrl);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class RuntimeResponseGeneric {\n");
sb.append(" responseType: ").append(toIndentedString(responseType)).append("\n");
sb.append(" text: ").append(toIndentedString(text)).append("\n");
sb.append(" channels: ").append(toIndentedString(channels)).append("\n");
sb.append(" time: ").append(toIndentedString(time)).append("\n");
sb.append(" typing: ").append(toIndentedString(typing)).append("\n");
sb.append(" source: ").append(toIndentedString(source)).append("\n");
sb.append(" title: ").append(toIndentedString(title)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" altText: ").append(toIndentedString(altText)).append("\n");
sb.append(" preference: ").append(toIndentedString(preference)).append("\n");
sb.append(" options: ").append(toIndentedString(options)).append("\n");
sb.append(" messageToHumanAgent: ").append(toIndentedString(messageToHumanAgent)).append("\n");
sb.append(" agentAvailable: ").append(toIndentedString(agentAvailable)).append("\n");
sb.append(" agentUnavailable: ").append(toIndentedString(agentUnavailable)).append("\n");
sb.append(" transferInfo: ").append(toIndentedString(transferInfo)).append("\n");
sb.append(" topic: ").append(toIndentedString(topic)).append("\n");
sb.append(" suggestions: ").append(toIndentedString(suggestions)).append("\n");
sb.append(" messageToUser: ").append(toIndentedString(messageToUser)).append("\n");
sb.append(" header: ").append(toIndentedString(header)).append("\n");
sb.append(" primaryResults: ").append(toIndentedString(primaryResults)).append("\n");
sb.append(" additionalResults: ").append(toIndentedString(additionalResults)).append("\n");
sb.append(" userDefined: ").append(toIndentedString(userDefined)).append("\n");
sb.append(" channelOptions: ").append(toIndentedString(channelOptions)).append("\n");
sb.append(" imageUrl: ").append(toIndentedString(imageUrl)).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(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy