
com.infobip.model.WhatsAppLocationMessage Maven / Gradle / Ivy
/*
* This class is auto generated from the Infobip OpenAPI specification
* through the OpenAPI Specification Client API libraries (Re)Generator (OSCAR),
* powered by the OpenAPI Generator (https://openapi-generator.tech).
*
* Do not edit manually. To learn how to raise an issue, see the CONTRIBUTING guide
* or contact us @ [email protected].
*/
package com.infobip.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
/**
* Represents WhatsAppLocationMessage model.
*/
public class WhatsAppLocationMessage {
private String from;
private String to;
private String messageId;
private WhatsAppLocationContent content;
private String callbackData;
private String notifyUrl;
private String entityId;
private String applicationId;
/**
* Sets from.
*
* Field description:
* Registered WhatsApp sender number. Must be in international format and comply with [WhatsApp's requirements](https://www.infobip.com/docs/whatsapp/get-started#phone-number-what-you-need-to-know).
*
* The field is required.
*
* @param from
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage from(String from) {
this.from = from;
return this;
}
/**
* Returns from.
*
* Field description:
* Registered WhatsApp sender number. Must be in international format and comply with [WhatsApp's requirements](https://www.infobip.com/docs/whatsapp/get-started#phone-number-what-you-need-to-know).
*
* The field is required.
*
* @return from
*/
@JsonProperty("from")
public String getFrom() {
return from;
}
/**
* Sets from.
*
* Field description:
* Registered WhatsApp sender number. Must be in international format and comply with [WhatsApp's requirements](https://www.infobip.com/docs/whatsapp/get-started#phone-number-what-you-need-to-know).
*
* The field is required.
*
* @param from
*/
@JsonProperty("from")
public void setFrom(String from) {
this.from = from;
}
/**
* Sets to.
*
* Field description:
* Message recipient number. Must be in international format.
*
* The field is required.
*
* @param to
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage to(String to) {
this.to = to;
return this;
}
/**
* Returns to.
*
* Field description:
* Message recipient number. Must be in international format.
*
* The field is required.
*
* @return to
*/
@JsonProperty("to")
public String getTo() {
return to;
}
/**
* Sets to.
*
* Field description:
* Message recipient number. Must be in international format.
*
* The field is required.
*
* @param to
*/
@JsonProperty("to")
public void setTo(String to) {
this.to = to;
}
/**
* Sets messageId.
*
* Field description:
* The ID that uniquely identifies the message sent.
*
* @param messageId
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage messageId(String messageId) {
this.messageId = messageId;
return this;
}
/**
* Returns messageId.
*
* Field description:
* The ID that uniquely identifies the message sent.
*
* @return messageId
*/
@JsonProperty("messageId")
public String getMessageId() {
return messageId;
}
/**
* Sets messageId.
*
* Field description:
* The ID that uniquely identifies the message sent.
*
* @param messageId
*/
@JsonProperty("messageId")
public void setMessageId(String messageId) {
this.messageId = messageId;
}
/**
* Sets content.
*
* The field is required.
*
* @param content
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage content(WhatsAppLocationContent content) {
this.content = content;
return this;
}
/**
* Returns content.
*
* The field is required.
*
* @return content
*/
@JsonProperty("content")
public WhatsAppLocationContent getContent() {
return content;
}
/**
* Sets content.
*
* The field is required.
*
* @param content
*/
@JsonProperty("content")
public void setContent(WhatsAppLocationContent content) {
this.content = content;
}
/**
* Sets callbackData.
*
* Field description:
* Custom client data that will be included in a [Delivery Report](#channels/whatsapp/receive-whatsapp-delivery-reports).
*
* @param callbackData
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage callbackData(String callbackData) {
this.callbackData = callbackData;
return this;
}
/**
* Returns callbackData.
*
* Field description:
* Custom client data that will be included in a [Delivery Report](#channels/whatsapp/receive-whatsapp-delivery-reports).
*
* @return callbackData
*/
@JsonProperty("callbackData")
public String getCallbackData() {
return callbackData;
}
/**
* Sets callbackData.
*
* Field description:
* Custom client data that will be included in a [Delivery Report](#channels/whatsapp/receive-whatsapp-delivery-reports).
*
* @param callbackData
*/
@JsonProperty("callbackData")
public void setCallbackData(String callbackData) {
this.callbackData = callbackData;
}
/**
* Sets notifyUrl.
*
* Field description:
* The URL on your callback server to which delivery and seen reports will be sent. [Delivery report format](#channels/whatsapp/receive-whatsapp-delivery-reports), [Seen report format](#channels/whatsapp/receive-whatsapp-seen-reports).
*
* @param notifyUrl
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage notifyUrl(String notifyUrl) {
this.notifyUrl = notifyUrl;
return this;
}
/**
* Returns notifyUrl.
*
* Field description:
* The URL on your callback server to which delivery and seen reports will be sent. [Delivery report format](#channels/whatsapp/receive-whatsapp-delivery-reports), [Seen report format](#channels/whatsapp/receive-whatsapp-seen-reports).
*
* @return notifyUrl
*/
@JsonProperty("notifyUrl")
public String getNotifyUrl() {
return notifyUrl;
}
/**
* Sets notifyUrl.
*
* Field description:
* The URL on your callback server to which delivery and seen reports will be sent. [Delivery report format](#channels/whatsapp/receive-whatsapp-delivery-reports), [Seen report format](#channels/whatsapp/receive-whatsapp-seen-reports).
*
* @param notifyUrl
*/
@JsonProperty("notifyUrl")
public void setNotifyUrl(String notifyUrl) {
this.notifyUrl = notifyUrl;
}
/**
* Sets entityId.
*
* Field description:
* Required for entity use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param entityId
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage entityId(String entityId) {
this.entityId = entityId;
return this;
}
/**
* Returns entityId.
*
* Field description:
* Required for entity use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @return entityId
*/
@JsonProperty("entityId")
public String getEntityId() {
return entityId;
}
/**
* Sets entityId.
*
* Field description:
* Required for entity use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param entityId
*/
@JsonProperty("entityId")
public void setEntityId(String entityId) {
this.entityId = entityId;
}
/**
* Sets applicationId.
*
* Field description:
* Required for application use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param applicationId
* @return This {@link WhatsAppLocationMessage instance}.
*/
public WhatsAppLocationMessage applicationId(String applicationId) {
this.applicationId = applicationId;
return this;
}
/**
* Returns applicationId.
*
* Field description:
* Required for application use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @return applicationId
*/
@JsonProperty("applicationId")
public String getApplicationId() {
return applicationId;
}
/**
* Sets applicationId.
*
* Field description:
* Required for application use in a send request for outbound traffic. Returned in notification events. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param applicationId
*/
@JsonProperty("applicationId")
public void setApplicationId(String applicationId) {
this.applicationId = applicationId;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
WhatsAppLocationMessage whatsAppLocationMessage = (WhatsAppLocationMessage) o;
return Objects.equals(this.from, whatsAppLocationMessage.from)
&& Objects.equals(this.to, whatsAppLocationMessage.to)
&& Objects.equals(this.messageId, whatsAppLocationMessage.messageId)
&& Objects.equals(this.content, whatsAppLocationMessage.content)
&& Objects.equals(this.callbackData, whatsAppLocationMessage.callbackData)
&& Objects.equals(this.notifyUrl, whatsAppLocationMessage.notifyUrl)
&& Objects.equals(this.entityId, whatsAppLocationMessage.entityId)
&& Objects.equals(this.applicationId, whatsAppLocationMessage.applicationId);
}
@Override
public int hashCode() {
return Objects.hash(from, to, messageId, content, callbackData, notifyUrl, entityId, applicationId);
}
@Override
public String toString() {
String newLine = System.lineSeparator();
return new StringBuilder()
.append("class WhatsAppLocationMessage {")
.append(newLine)
.append(" from: ")
.append(toIndentedString(from))
.append(newLine)
.append(" to: ")
.append(toIndentedString(to))
.append(newLine)
.append(" messageId: ")
.append(toIndentedString(messageId))
.append(newLine)
.append(" content: ")
.append(toIndentedString(content))
.append(newLine)
.append(" callbackData: ")
.append(toIndentedString(callbackData))
.append(newLine)
.append(" notifyUrl: ")
.append(toIndentedString(notifyUrl))
.append(newLine)
.append(" entityId: ")
.append(toIndentedString(entityId))
.append(newLine)
.append(" applicationId: ")
.append(toIndentedString(applicationId))
.append(newLine)
.append("}")
.toString();
}
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
String lineSeparator = System.lineSeparator();
String lineSeparatorFollowedByIndentation = lineSeparator + " ";
return o.toString().replace(lineSeparator, lineSeparatorFollowedByIndentation);
}
}