com.salesforce.einsteinbot.sdk.model.SessionEndedResponseMessage Maven / Gradle / Ivy
/*
* Einstein Bots API (BETA)
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: v4
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.salesforce.einsteinbot.sdk.model;
import java.util.Objects;
import java.util.Arrays;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonTypeName;
import com.fasterxml.jackson.annotation.JsonValue;
import com.salesforce.einsteinbot.sdk.model.Schedule;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonTypeName;
/**
* Message informing client session has ended
*/
@ApiModel(description = "Message informing client session has ended")
@JsonPropertyOrder({
SessionEndedResponseMessage.JSON_PROPERTY_TYPE,
SessionEndedResponseMessage.JSON_PROPERTY_ID,
SessionEndedResponseMessage.JSON_PROPERTY_REASON,
SessionEndedResponseMessage.JSON_PROPERTY_SCHEDULE
})
@JsonTypeName("SessionEndedResponseMessage")
@javax.annotation.Generated(value = "com.salesforce.einsteinbot.openapi.codegen.EinsteinBotCodeGenerator", date = "2022-03-24T00:55:11.933462Z[Etc/UTC]")
public class SessionEndedResponseMessage implements AnyResponseMessage {
/**
* Message type
*/
public enum TypeEnum {
SESSIONENDED("sessionEnded");
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;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_TYPE = "type";
private TypeEnum type;
public static final String JSON_PROPERTY_ID = "id";
private String id;
/**
* Reason the session ended
*/
public enum ReasonEnum {
CLIENTREQUEST("ClientRequest"),
TRANSFERFAILEDNOTCONFIGURED("TransferFailedNotConfigured"),
ACTION("Action"),
ERROR("Error"),
INFINITELOOPDETECTED("InfiniteLoopDetected");
private String value;
ReasonEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static ReasonEnum fromValue(String value) {
for (ReasonEnum b : ReasonEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_REASON = "reason";
private ReasonEnum reason;
public static final String JSON_PROPERTY_SCHEDULE = "schedule";
private Schedule schedule;
public SessionEndedResponseMessage() {
}
public SessionEndedResponseMessage type(TypeEnum type) {
this.type = type;
return this;
}
/**
* Message type
* @return type
**/
@javax.annotation.Nonnull
@ApiModelProperty(example = "sessionEnded", required = true, value = "Message type")
@JsonProperty(JSON_PROPERTY_TYPE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public TypeEnum getType() {
return type;
}
@JsonProperty(JSON_PROPERTY_TYPE)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setType(TypeEnum type) {
this.type = type;
}
public SessionEndedResponseMessage id(String id) {
this.id = id;
return this;
}
/**
* UUID that references this message
* @return id
**/
@javax.annotation.Nonnull
@ApiModelProperty(example = "a133c185-73a7-4adf-b6d9-b7fd62babb4e", required = true, value = "UUID that references this message")
@JsonProperty(JSON_PROPERTY_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getId() {
return id;
}
@JsonProperty(JSON_PROPERTY_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setId(String id) {
this.id = id;
}
public SessionEndedResponseMessage reason(ReasonEnum reason) {
this.reason = reason;
return this;
}
/**
* Reason the session ended
* @return reason
**/
@javax.annotation.Nonnull
@ApiModelProperty(example = "ClientRequest", required = true, value = "Reason the session ended")
@JsonProperty(JSON_PROPERTY_REASON)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public ReasonEnum getReason() {
return reason;
}
@JsonProperty(JSON_PROPERTY_REASON)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setReason(ReasonEnum reason) {
this.reason = reason;
}
public SessionEndedResponseMessage schedule(Schedule schedule) {
this.schedule = schedule;
return this;
}
/**
* Get schedule
* @return schedule
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
@JsonProperty(JSON_PROPERTY_SCHEDULE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Schedule getSchedule() {
return schedule;
}
@JsonProperty(JSON_PROPERTY_SCHEDULE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSchedule(Schedule schedule) {
this.schedule = schedule;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
SessionEndedResponseMessage sessionEndedResponseMessage = (SessionEndedResponseMessage) o;
return Objects.equals(this.type, sessionEndedResponseMessage.type) &&
Objects.equals(this.id, sessionEndedResponseMessage.id) &&
Objects.equals(this.reason, sessionEndedResponseMessage.reason) &&
Objects.equals(this.schedule, sessionEndedResponseMessage.schedule);
}
@Override
public int hashCode() {
return Objects.hash(type, id, reason, schedule);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class SessionEndedResponseMessage {\n");
sb.append(" type: ").append(toIndentedString(type)).append("\n");
sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" reason: ").append(toIndentedString(reason)).append("\n");
sb.append(" schedule: ").append(toIndentedString(schedule)).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 - 2025 Weber Informatics LLC | Privacy Policy