com.zendesk.sunshine_conversations_client.model.ClientRemoveEventAllOfPayload Maven / Gradle / Ivy
/*
* Sunshine Conversations API
*
* The version of the OpenAPI document: 12.8.0
*
*
* 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.zendesk.sunshine_conversations_client.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.JsonValue;
import com.zendesk.sunshine_conversations_client.model.Client;
import com.zendesk.sunshine_conversations_client.model.ConversationTruncated;
import com.zendesk.sunshine_conversations_client.model.SourceWebhook;
import com.zendesk.sunshine_conversations_client.model.UserTruncated;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.openapitools.jackson.nullable.JsonNullable;
import java.util.NoSuchElementException;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* The payload of the event. The contents of this object depend on the type of event.
*/
@ApiModel(description = "The payload of the event. The contents of this object depend on the type of event.")
@JsonPropertyOrder({
ClientRemoveEventAllOfPayload.JSON_PROPERTY_CONVERSATION,
ClientRemoveEventAllOfPayload.JSON_PROPERTY_USER,
ClientRemoveEventAllOfPayload.JSON_PROPERTY_CLIENT,
ClientRemoveEventAllOfPayload.JSON_PROPERTY_REASON,
ClientRemoveEventAllOfPayload.JSON_PROPERTY_ERROR,
ClientRemoveEventAllOfPayload.JSON_PROPERTY_SOURCE
})
public class ClientRemoveEventAllOfPayload {
public static final String JSON_PROPERTY_CONVERSATION = "conversation";
private JsonNullable conversation = JsonNullable.of(null);
public static final String JSON_PROPERTY_USER = "user";
private UserTruncated user = null;
public static final String JSON_PROPERTY_CLIENT = "client";
private Client client = null;
/**
* The reason for which the client was removed. * `api` - The client was removed using the API. * `linkCancelled` - The user cancelled a channel link. * `linkFailed` - The client was removed after a channel link attempt failed. * `sdk` - The client was removed using the SDK. * `theft` - The client was transferred to another user due to a channel link.
*/
public enum ReasonEnum {
API("api"),
LINKCANCELLED("linkCancelled"),
LINKFAILED("linkFailed"),
SDK("sdk"),
THEFT("theft");
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_ERROR = "error";
private JsonNullable