
com.zendesk.sunshine_conversations_client.model.Unity Maven / Gradle / Ivy
The newest version!
/*
* Sunshine Conversations API
*
* The version of the OpenAPI document: 15.5.1
*
*
* 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.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonValue;
import com.zendesk.sunshine_conversations_client.model.Android;
import com.zendesk.sunshine_conversations_client.model.Apple;
import com.zendesk.sunshine_conversations_client.model.Custom;
import com.zendesk.sunshine_conversations_client.model.DefaultResponder;
import com.zendesk.sunshine_conversations_client.model.DefaultResponderDefaultResponder;
import com.zendesk.sunshine_conversations_client.model.DefaultResponderId;
import com.zendesk.sunshine_conversations_client.model.Instagram;
import com.zendesk.sunshine_conversations_client.model.Integration;
import com.zendesk.sunshine_conversations_client.model.Ios;
import com.zendesk.sunshine_conversations_client.model.Line;
import com.zendesk.sunshine_conversations_client.model.Mailgun;
import com.zendesk.sunshine_conversations_client.model.Messagebird;
import com.zendesk.sunshine_conversations_client.model.Messenger;
import com.zendesk.sunshine_conversations_client.model.Status;
import com.zendesk.sunshine_conversations_client.model.Telegram;
import com.zendesk.sunshine_conversations_client.model.Twilio;
import com.zendesk.sunshine_conversations_client.model.Twitter;
import com.zendesk.sunshine_conversations_client.model.Unity;
import com.zendesk.sunshine_conversations_client.model.UnityAllOf;
import com.zendesk.sunshine_conversations_client.model.Viber;
import com.zendesk.sunshine_conversations_client.model.Web;
import com.zendesk.sunshine_conversations_client.model.Whatsapp;
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;
/**
* Unity
*/
@JsonPropertyOrder({
Unity.JSON_PROPERTY_TYPE,
Unity.JSON_PROPERTY_CAN_USER_SEE_CONVERSATION_LIST,
Unity.JSON_PROPERTY_CAN_USER_CREATE_MORE_CONVERSATIONS,
Unity.JSON_PROPERTY_ATTACHMENTS_ENABLED,
Unity.JSON_PROPERTY_DEFAULT_RESPONDER_ID,
Unity.JSON_PROPERTY_DEFAULT_RESPONDER
})
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "type", visible = true)
@JsonSubTypes({
@JsonSubTypes.Type(value = Android.class, name = "android"),
@JsonSubTypes.Type(value = Apple.class, name = "apple"),
@JsonSubTypes.Type(value = Custom.class, name = "custom"),
@JsonSubTypes.Type(value = Instagram.class, name = "instagram"),
@JsonSubTypes.Type(value = Ios.class, name = "ios"),
@JsonSubTypes.Type(value = Line.class, name = "line"),
@JsonSubTypes.Type(value = Mailgun.class, name = "mailgun"),
@JsonSubTypes.Type(value = Messagebird.class, name = "messagebird"),
@JsonSubTypes.Type(value = Messenger.class, name = "messenger"),
@JsonSubTypes.Type(value = Telegram.class, name = "telegram"),
@JsonSubTypes.Type(value = Twilio.class, name = "twilio"),
@JsonSubTypes.Type(value = Twitter.class, name = "twitter"),
@JsonSubTypes.Type(value = Unity.class, name = "unity"),
@JsonSubTypes.Type(value = Viber.class, name = "viber"),
@JsonSubTypes.Type(value = Web.class, name = "web"),
@JsonSubTypes.Type(value = Whatsapp.class, name = "whatsapp"),
})
public class Unity extends Integration {
public static final String JSON_PROPERTY_TYPE = "type";
protected String type = "unity";
public static final String JSON_PROPERTY_CAN_USER_SEE_CONVERSATION_LIST = "canUserSeeConversationList";
private Boolean canUserSeeConversationList;
public static final String JSON_PROPERTY_CAN_USER_CREATE_MORE_CONVERSATIONS = "canUserCreateMoreConversations";
private Boolean canUserCreateMoreConversations;
public static final String JSON_PROPERTY_ATTACHMENTS_ENABLED = "attachmentsEnabled";
private Boolean attachmentsEnabled;
public static final String JSON_PROPERTY_DEFAULT_RESPONDER_ID = "defaultResponderId";
private JsonNullable defaultResponderId = JsonNullable.undefined();
public static final String JSON_PROPERTY_DEFAULT_RESPONDER = "defaultResponder";
private JsonNullable defaultResponder = JsonNullable.undefined();
public Unity type(String type) {
this.type = type;
return this;
}
/**
* To configure a Unity integration, create an integration with type 'unity' by calling the Create Integration endpoint.
* @return type
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "To configure a Unity integration, create an integration with type 'unity' by calling the Create Integration endpoint. ")
@JsonProperty(JSON_PROPERTY_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Unity canUserSeeConversationList(Boolean canUserSeeConversationList) {
this.canUserSeeConversationList = canUserSeeConversationList;
return this;
}
/**
* Allows users to view their list of conversations. By default, the list of conversations will be visible. *This setting only applies to apps where `settings.multiConvoEnabled` is set to `true`*.
* @return canUserSeeConversationList
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "false", value = "Allows users to view their list of conversations. By default, the list of conversations will be visible. *This setting only applies to apps where `settings.multiConvoEnabled` is set to `true`*. ")
@JsonProperty(JSON_PROPERTY_CAN_USER_SEE_CONVERSATION_LIST)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Boolean getCanUserSeeConversationList() {
return canUserSeeConversationList;
}
public void setCanUserSeeConversationList(Boolean canUserSeeConversationList) {
this.canUserSeeConversationList = canUserSeeConversationList;
}
public Unity canUserCreateMoreConversations(Boolean canUserCreateMoreConversations) {
this.canUserCreateMoreConversations = canUserCreateMoreConversations;
return this;
}
/**
* Allows users to create more than one conversation on the Unity integration.
* @return canUserCreateMoreConversations
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Allows users to create more than one conversation on the Unity integration.")
@JsonProperty(JSON_PROPERTY_CAN_USER_CREATE_MORE_CONVERSATIONS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Boolean getCanUserCreateMoreConversations() {
return canUserCreateMoreConversations;
}
public void setCanUserCreateMoreConversations(Boolean canUserCreateMoreConversations) {
this.canUserCreateMoreConversations = canUserCreateMoreConversations;
}
/**
* Allows users to send attachments. By default, the setting is set to true. This setting can only be configured in Zendesk Admin Center.
* @return attachmentsEnabled
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Allows users to send attachments. By default, the setting is set to true. This setting can only be configured in Zendesk Admin Center. ")
@JsonProperty(JSON_PROPERTY_ATTACHMENTS_ENABLED)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Boolean getAttachmentsEnabled() {
return attachmentsEnabled;
}
public Unity defaultResponderId(String defaultResponderId) {
this.defaultResponderId = JsonNullable.of(defaultResponderId);
return this;
}
/**
* The default responder ID for the integration. This is the ID of the responder that will be used to send messages to the user. For more information, refer to the <a href=\"https://developer.zendesk.com/documentation/conversations/messaging-platform/programmable-conversations/switchboard/#default-integration-assignment\">Switchboard guide</a>.
* @return defaultResponderId
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "The default responder ID for the integration. This is the ID of the responder that will be used to send messages to the user. For more information, refer to the Switchboard guide. ")
@JsonIgnore
public String getDefaultResponderId() {
return defaultResponderId.orElse(null);
}
@JsonProperty(JSON_PROPERTY_DEFAULT_RESPONDER_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getDefaultResponderId_JsonNullable() {
return defaultResponderId;
}
@JsonProperty(JSON_PROPERTY_DEFAULT_RESPONDER_ID)
public void setDefaultResponderId_JsonNullable(JsonNullable defaultResponderId) {
this.defaultResponderId = defaultResponderId;
}
public void setDefaultResponderId(String defaultResponderId) {
this.defaultResponderId = JsonNullable.of(defaultResponderId);
}
public Unity defaultResponder(DefaultResponderDefaultResponder defaultResponder) {
this.defaultResponder = JsonNullable.of(defaultResponder);
return this;
}
/**
* Get defaultResponder
* @return defaultResponder
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "")
@JsonIgnore
public DefaultResponderDefaultResponder getDefaultResponder() {
return defaultResponder.orElse(null);
}
@JsonProperty(JSON_PROPERTY_DEFAULT_RESPONDER)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getDefaultResponder_JsonNullable() {
return defaultResponder;
}
@JsonProperty(JSON_PROPERTY_DEFAULT_RESPONDER)
public void setDefaultResponder_JsonNullable(JsonNullable defaultResponder) {
this.defaultResponder = defaultResponder;
}
public void setDefaultResponder(DefaultResponderDefaultResponder defaultResponder) {
this.defaultResponder = JsonNullable.of(defaultResponder);
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Unity unity = (Unity) o;
return Objects.equals(this.type, unity.type) &&
Objects.equals(this.canUserSeeConversationList, unity.canUserSeeConversationList) &&
Objects.equals(this.canUserCreateMoreConversations, unity.canUserCreateMoreConversations) &&
Objects.equals(this.attachmentsEnabled, unity.attachmentsEnabled) &&
Objects.equals(this.defaultResponderId, unity.defaultResponderId) &&
Objects.equals(this.defaultResponder, unity.defaultResponder) &&
super.equals(o);
}
@Override
public int hashCode() {
return Objects.hash(type, canUserSeeConversationList, canUserCreateMoreConversations, attachmentsEnabled, defaultResponderId, defaultResponder, super.hashCode());
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Unity {\n");
sb.append(" ").append(toIndentedString(super.toString())).append("\n");
sb.append(" type: ").append(toIndentedString(type)).append("\n");
sb.append(" canUserSeeConversationList: ").append(toIndentedString(canUserSeeConversationList)).append("\n");
sb.append(" canUserCreateMoreConversations: ").append(toIndentedString(canUserCreateMoreConversations)).append("\n");
sb.append(" attachmentsEnabled: ").append(toIndentedString(attachmentsEnabled)).append("\n");
sb.append(" defaultResponderId: ").append(toIndentedString(defaultResponderId)).append("\n");
sb.append(" defaultResponder: ").append(toIndentedString(defaultResponder)).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 - 2025 Weber Informatics LLC | Privacy Policy