
com.infobip.model.SmsLog 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.time.OffsetDateTime;
import java.util.Objects;
/**
* Represents SmsLog model.
*/
public class SmsLog {
private String applicationId;
private String bulkId;
private OffsetDateTime doneAt;
private String entityId;
private MessageError error;
private String from;
private String mccMnc;
private String messageId;
private MessagePrice price;
private OffsetDateTime sentAt;
private Integer smsCount;
private MessageStatus status;
private String text;
private String to;
/**
* Sets applicationId.
*
* Field description:
* Application id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param applicationId
* @return This {@link SmsLog instance}.
*/
public SmsLog applicationId(String applicationId) {
this.applicationId = applicationId;
return this;
}
/**
* Returns applicationId.
*
* Field description:
* Application id used to send the message. 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:
* Application id used to send the message. 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;
}
/**
* Sets bulkId.
*
* Field description:
* Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request.
*
* @param bulkId
* @return This {@link SmsLog instance}.
*/
public SmsLog bulkId(String bulkId) {
this.bulkId = bulkId;
return this;
}
/**
* Returns bulkId.
*
* Field description:
* Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request.
*
* @return bulkId
*/
@JsonProperty("bulkId")
public String getBulkId() {
return bulkId;
}
/**
* Sets bulkId.
*
* Field description:
* Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request.
*
* @param bulkId
*/
@JsonProperty("bulkId")
public void setBulkId(String bulkId) {
this.bulkId = bulkId;
}
/**
* Sets doneAt.
*
* Field description:
* Date and time when the Infobip services finished processing the message (i.e. delivered to the destination, delivered to the destination network, etc.). Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @param doneAt
* @return This {@link SmsLog instance}.
*/
public SmsLog doneAt(OffsetDateTime doneAt) {
this.doneAt = doneAt;
return this;
}
/**
* Returns doneAt.
*
* Field description:
* Date and time when the Infobip services finished processing the message (i.e. delivered to the destination, delivered to the destination network, etc.). Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @return doneAt
*/
@JsonProperty("doneAt")
public OffsetDateTime getDoneAt() {
return doneAt;
}
/**
* Sets doneAt.
*
* Field description:
* Date and time when the Infobip services finished processing the message (i.e. delivered to the destination, delivered to the destination network, etc.). Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @param doneAt
*/
@JsonProperty("doneAt")
public void setDoneAt(OffsetDateTime doneAt) {
this.doneAt = doneAt;
}
/**
* Sets entityId.
*
* Field description:
* Entity id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
*
* @param entityId
* @return This {@link SmsLog instance}.
*/
public SmsLog entityId(String entityId) {
this.entityId = entityId;
return this;
}
/**
* Returns entityId.
*
* Field description:
* Entity id used to send the message. 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:
* Entity id used to send the message. 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 error.
*
* @param error
* @return This {@link SmsLog instance}.
*/
public SmsLog error(MessageError error) {
this.error = error;
return this;
}
/**
* Returns error.
*
* @return error
*/
@JsonProperty("error")
public MessageError getError() {
return error;
}
/**
* Sets error.
*
* @param error
*/
@JsonProperty("error")
public void setError(MessageError error) {
this.error = error;
}
/**
* Sets from.
*
* Field description:
* Sender ID that can be alphanumeric or numeric.
*
* @param from
* @return This {@link SmsLog instance}.
*/
public SmsLog from(String from) {
this.from = from;
return this;
}
/**
* Returns from.
*
* Field description:
* Sender ID that can be alphanumeric or numeric.
*
* @return from
*/
@JsonProperty("from")
public String getFrom() {
return from;
}
/**
* Sets from.
*
* Field description:
* Sender ID that can be alphanumeric or numeric.
*
* @param from
*/
@JsonProperty("from")
public void setFrom(String from) {
this.from = from;
}
/**
* Sets mccMnc.
*
* Field description:
* Mobile country and network codes.
*
* @param mccMnc
* @return This {@link SmsLog instance}.
*/
public SmsLog mccMnc(String mccMnc) {
this.mccMnc = mccMnc;
return this;
}
/**
* Returns mccMnc.
*
* Field description:
* Mobile country and network codes.
*
* @return mccMnc
*/
@JsonProperty("mccMnc")
public String getMccMnc() {
return mccMnc;
}
/**
* Sets mccMnc.
*
* Field description:
* Mobile country and network codes.
*
* @param mccMnc
*/
@JsonProperty("mccMnc")
public void setMccMnc(String mccMnc) {
this.mccMnc = mccMnc;
}
/**
* Sets messageId.
*
* Field description:
* Unique message ID.
*
* @param messageId
* @return This {@link SmsLog instance}.
*/
public SmsLog messageId(String messageId) {
this.messageId = messageId;
return this;
}
/**
* Returns messageId.
*
* Field description:
* Unique message ID.
*
* @return messageId
*/
@JsonProperty("messageId")
public String getMessageId() {
return messageId;
}
/**
* Sets messageId.
*
* Field description:
* Unique message ID.
*
* @param messageId
*/
@JsonProperty("messageId")
public void setMessageId(String messageId) {
this.messageId = messageId;
}
/**
* Sets price.
*
* @param price
* @return This {@link SmsLog instance}.
*/
public SmsLog price(MessagePrice price) {
this.price = price;
return this;
}
/**
* Returns price.
*
* @return price
*/
@JsonProperty("price")
public MessagePrice getPrice() {
return price;
}
/**
* Sets price.
*
* @param price
*/
@JsonProperty("price")
public void setPrice(MessagePrice price) {
this.price = price;
}
/**
* Sets sentAt.
*
* Field description:
* Date and time when the message was [scheduled](https://www.infobip.com/docs/api#channels/sms/get-scheduled-sms-messages) to be sent. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @param sentAt
* @return This {@link SmsLog instance}.
*/
public SmsLog sentAt(OffsetDateTime sentAt) {
this.sentAt = sentAt;
return this;
}
/**
* Returns sentAt.
*
* Field description:
* Date and time when the message was [scheduled](https://www.infobip.com/docs/api#channels/sms/get-scheduled-sms-messages) to be sent. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @return sentAt
*/
@JsonProperty("sentAt")
public OffsetDateTime getSentAt() {
return sentAt;
}
/**
* Sets sentAt.
*
* Field description:
* Date and time when the message was [scheduled](https://www.infobip.com/docs/api#channels/sms/get-scheduled-sms-messages) to be sent. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
*
* @param sentAt
*/
@JsonProperty("sentAt")
public void setSentAt(OffsetDateTime sentAt) {
this.sentAt = sentAt;
}
/**
* Sets smsCount.
*
* Field description:
* The number of parts the message content was split into.
*
* @param smsCount
* @return This {@link SmsLog instance}.
*/
public SmsLog smsCount(Integer smsCount) {
this.smsCount = smsCount;
return this;
}
/**
* Returns smsCount.
*
* Field description:
* The number of parts the message content was split into.
*
* @return smsCount
*/
@JsonProperty("smsCount")
public Integer getSmsCount() {
return smsCount;
}
/**
* Sets smsCount.
*
* Field description:
* The number of parts the message content was split into.
*
* @param smsCount
*/
@JsonProperty("smsCount")
public void setSmsCount(Integer smsCount) {
this.smsCount = smsCount;
}
/**
* Sets status.
*
* @param status
* @return This {@link SmsLog instance}.
*/
public SmsLog status(MessageStatus status) {
this.status = status;
return this;
}
/**
* Returns status.
*
* @return status
*/
@JsonProperty("status")
public MessageStatus getStatus() {
return status;
}
/**
* Sets status.
*
* @param status
*/
@JsonProperty("status")
public void setStatus(MessageStatus status) {
this.status = status;
}
/**
* Sets text.
*
* Field description:
* Content of the message being sent.
*
* @param text
* @return This {@link SmsLog instance}.
*/
public SmsLog text(String text) {
this.text = text;
return this;
}
/**
* Returns text.
*
* Field description:
* Content of the message being sent.
*
* @return text
*/
@JsonProperty("text")
public String getText() {
return text;
}
/**
* Sets text.
*
* Field description:
* Content of the message being sent.
*
* @param text
*/
@JsonProperty("text")
public void setText(String text) {
this.text = text;
}
/**
* Sets to.
*
* Field description:
* The destination address of the message.
*
* @param to
* @return This {@link SmsLog instance}.
*/
public SmsLog to(String to) {
this.to = to;
return this;
}
/**
* Returns to.
*
* Field description:
* The destination address of the message.
*
* @return to
*/
@JsonProperty("to")
public String getTo() {
return to;
}
/**
* Sets to.
*
* Field description:
* The destination address of the message.
*
* @param to
*/
@JsonProperty("to")
public void setTo(String to) {
this.to = to;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
SmsLog smsLog = (SmsLog) o;
return Objects.equals(this.applicationId, smsLog.applicationId)
&& Objects.equals(this.bulkId, smsLog.bulkId)
&& Objects.equals(this.doneAt, smsLog.doneAt)
&& Objects.equals(this.entityId, smsLog.entityId)
&& Objects.equals(this.error, smsLog.error)
&& Objects.equals(this.from, smsLog.from)
&& Objects.equals(this.mccMnc, smsLog.mccMnc)
&& Objects.equals(this.messageId, smsLog.messageId)
&& Objects.equals(this.price, smsLog.price)
&& Objects.equals(this.sentAt, smsLog.sentAt)
&& Objects.equals(this.smsCount, smsLog.smsCount)
&& Objects.equals(this.status, smsLog.status)
&& Objects.equals(this.text, smsLog.text)
&& Objects.equals(this.to, smsLog.to);
}
@Override
public int hashCode() {
return Objects.hash(
applicationId,
bulkId,
doneAt,
entityId,
error,
from,
mccMnc,
messageId,
price,
sentAt,
smsCount,
status,
text,
to);
}
@Override
public String toString() {
String newLine = System.lineSeparator();
return new StringBuilder()
.append("class SmsLog {")
.append(newLine)
.append(" applicationId: ")
.append(toIndentedString(applicationId))
.append(newLine)
.append(" bulkId: ")
.append(toIndentedString(bulkId))
.append(newLine)
.append(" doneAt: ")
.append(toIndentedString(doneAt))
.append(newLine)
.append(" entityId: ")
.append(toIndentedString(entityId))
.append(newLine)
.append(" error: ")
.append(toIndentedString(error))
.append(newLine)
.append(" from: ")
.append(toIndentedString(from))
.append(newLine)
.append(" mccMnc: ")
.append(toIndentedString(mccMnc))
.append(newLine)
.append(" messageId: ")
.append(toIndentedString(messageId))
.append(newLine)
.append(" price: ")
.append(toIndentedString(price))
.append(newLine)
.append(" sentAt: ")
.append(toIndentedString(sentAt))
.append(newLine)
.append(" smsCount: ")
.append(toIndentedString(smsCount))
.append(newLine)
.append(" status: ")
.append(toIndentedString(status))
.append(newLine)
.append(" text: ")
.append(toIndentedString(text))
.append(newLine)
.append(" to: ")
.append(toIndentedString(to))
.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);
}
}