All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.infobip.model.SmsReport 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 SmsReport model.
 */
public class SmsReport {

    private String bulkId;

    private String messageId;

    private String to;

    private String from;

    private OffsetDateTime sentAt;

    private OffsetDateTime doneAt;

    private Integer smsCount;

    private String mccMnc;

    private String callbackData;

    private MessagePrice price;

    private MessageStatus status;

    private MessageError error;

    private String entityId;

    private String 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 SmsReport instance}. */ public SmsReport 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 messageId. *

* Field description: * Unique message ID. * * @param messageId * @return This {@link SmsReport instance}. */ public SmsReport 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 to. *

* Field description: * Message destination address. * * @param to * @return This {@link SmsReport instance}. */ public SmsReport to(String to) { this.to = to; return this; } /** * Returns to. *

* Field description: * Message destination address. * * @return to */ @JsonProperty("to") public String getTo() { return to; } /** * Sets to. *

* Field description: * Message destination address. * * @param to */ @JsonProperty("to") public void setTo(String to) { this.to = to; } /** * Sets from. *

* Field description: * The sender ID which can be alphanumeric or numeric (e.g., `CompanyName`). * * @param from * @return This {@link SmsReport instance}. */ public SmsReport from(String from) { this.from = from; return this; } /** * Returns from. *

* Field description: * The sender ID which can be alphanumeric or numeric (e.g., `CompanyName`). * * @return from */ @JsonProperty("from") public String getFrom() { return from; } /** * Sets from. *

* Field description: * The sender ID which can be alphanumeric or numeric (e.g., `CompanyName`). * * @param from */ @JsonProperty("from") public void setFrom(String from) { this.from = from; } /** * Sets sentAt. *

* Field description: * Date and time when the message was [scheduled](#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 SmsReport instance}. */ public SmsReport sentAt(OffsetDateTime sentAt) { this.sentAt = sentAt; return this; } /** * Returns sentAt. *

* Field description: * Date and time when the message was [scheduled](#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](#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 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 SmsReport instance}. */ public SmsReport 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 smsCount. *

* Field description: * The number of parts the message content was split into. * * @param smsCount * @return This {@link SmsReport instance}. */ public SmsReport 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 mccMnc. *

* Field description: * Mobile country and network codes. * * @param mccMnc * @return This {@link SmsReport instance}. */ public SmsReport 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 callbackData. *

* Field description: * Custom data sent over to the `notifyUrl`. * * @param callbackData * @return This {@link SmsReport instance}. */ public SmsReport callbackData(String callbackData) { this.callbackData = callbackData; return this; } /** * Returns callbackData. *

* Field description: * Custom data sent over to the `notifyUrl`. * * @return callbackData */ @JsonProperty("callbackData") public String getCallbackData() { return callbackData; } /** * Sets callbackData. *

* Field description: * Custom data sent over to the `notifyUrl`. * * @param callbackData */ @JsonProperty("callbackData") public void setCallbackData(String callbackData) { this.callbackData = callbackData; } /** * Sets price. * * @param price * @return This {@link SmsReport instance}. */ public SmsReport 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 status. * * @param status * @return This {@link SmsReport instance}. */ public SmsReport 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 error. * * @param error * @return This {@link SmsReport instance}. */ public SmsReport 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 entityId. *

* Field description: * The entity used when sending the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management). * * @param entityId * @return This {@link SmsReport instance}. */ public SmsReport entityId(String entityId) { this.entityId = entityId; return this; } /** * Returns entityId. *

* Field description: * The entity used when sending 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: * The entity used when sending 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 applicationId. *

* Field description: * The application used when sending the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management). * * @param applicationId * @return This {@link SmsReport instance}. */ public SmsReport applicationId(String applicationId) { this.applicationId = applicationId; return this; } /** * Returns applicationId. *

* Field description: * The application used when sending 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: * The application used when sending 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; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } SmsReport smsReport = (SmsReport) o; return Objects.equals(this.bulkId, smsReport.bulkId) && Objects.equals(this.messageId, smsReport.messageId) && Objects.equals(this.to, smsReport.to) && Objects.equals(this.from, smsReport.from) && Objects.equals(this.sentAt, smsReport.sentAt) && Objects.equals(this.doneAt, smsReport.doneAt) && Objects.equals(this.smsCount, smsReport.smsCount) && Objects.equals(this.mccMnc, smsReport.mccMnc) && Objects.equals(this.callbackData, smsReport.callbackData) && Objects.equals(this.price, smsReport.price) && Objects.equals(this.status, smsReport.status) && Objects.equals(this.error, smsReport.error) && Objects.equals(this.entityId, smsReport.entityId) && Objects.equals(this.applicationId, smsReport.applicationId); } @Override public int hashCode() { return Objects.hash( bulkId, messageId, to, from, sentAt, doneAt, smsCount, mccMnc, callbackData, price, status, error, entityId, applicationId); } @Override public String toString() { String newLine = System.lineSeparator(); return new StringBuilder() .append("class SmsReport {") .append(newLine) .append(" bulkId: ") .append(toIndentedString(bulkId)) .append(newLine) .append(" messageId: ") .append(toIndentedString(messageId)) .append(newLine) .append(" to: ") .append(toIndentedString(to)) .append(newLine) .append(" from: ") .append(toIndentedString(from)) .append(newLine) .append(" sentAt: ") .append(toIndentedString(sentAt)) .append(newLine) .append(" doneAt: ") .append(toIndentedString(doneAt)) .append(newLine) .append(" smsCount: ") .append(toIndentedString(smsCount)) .append(newLine) .append(" mccMnc: ") .append(toIndentedString(mccMnc)) .append(newLine) .append(" callbackData: ") .append(toIndentedString(callbackData)) .append(newLine) .append(" price: ") .append(toIndentedString(price)) .append(newLine) .append(" status: ") .append(toIndentedString(status)) .append(newLine) .append(" error: ") .append(toIndentedString(error)) .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); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy