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

com.symphony.api.model.MessageStatus Maven / Gradle / Ivy

package com.symphony.api.model;

import com.symphony.api.model.MessageStatusUser;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.ArrayList;
import java.util.List;

import io.swagger.v3.oas.annotations.media.Schema;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonValue;
import com.fasterxml.jackson.annotation.JsonCreator;

/**
  * Holds the status of a particular message, indicating which user the message has been sent, delivered or read. 
 **/
@Schema(description="Holds the status of a particular message, indicating which user the message has been sent, delivered or read. ")
public class MessageStatus   {
  
  @Schema(description = "")
  private MessageStatusUser author = null;
  
  @Schema(description = "All users who have read that message, in any Symphony client.")
 /**
   * All users who have read that message, in any Symphony client.  
  **/
  private List read = null;
  
  @Schema(description = "All users who have at least one Symphony client to which the message has been delivered, and not read yet. ")
 /**
   * All users who have at least one Symphony client to which the message has been delivered, and not read yet.   
  **/
  private List delivered = null;
  
  @Schema(description = "All users to whom the message has been sent and received by the Symphony system, but not yet delivered to any user's Symphony client. ")
 /**
   * All users to whom the message has been sent and received by the Symphony system, but not yet delivered to any user's Symphony client.   
  **/
  private List sent = null;
 /**
   * Get author
   * @return author
  **/
  @JsonProperty("author")
  public MessageStatusUser getAuthor() {
    return author;
  }

  public void setAuthor(MessageStatusUser author) {
    this.author = author;
  }

  public MessageStatus author(MessageStatusUser author) {
    this.author = author;
    return this;
  }

 /**
   * All users who have read that message, in any Symphony client.
   * @return read
  **/
  @JsonProperty("read")
  public List getRead() {
    return read;
  }

  public void setRead(List read) {
    this.read = read;
  }

  public MessageStatus read(List read) {
    this.read = read;
    return this;
  }

  public MessageStatus addReadItem(MessageStatusUser readItem) {
    this.read.add(readItem);
    return this;
  }

 /**
   * All users who have at least one Symphony client to which the message has been delivered, and not read yet. 
   * @return delivered
  **/
  @JsonProperty("delivered")
  public List getDelivered() {
    return delivered;
  }

  public void setDelivered(List delivered) {
    this.delivered = delivered;
  }

  public MessageStatus delivered(List delivered) {
    this.delivered = delivered;
    return this;
  }

  public MessageStatus addDeliveredItem(MessageStatusUser deliveredItem) {
    this.delivered.add(deliveredItem);
    return this;
  }

 /**
   * All users to whom the message has been sent and received by the Symphony system, but not yet delivered to any user's Symphony client. 
   * @return sent
  **/
  @JsonProperty("sent")
  public List getSent() {
    return sent;
  }

  public void setSent(List sent) {
    this.sent = sent;
  }

  public MessageStatus sent(List sent) {
    this.sent = sent;
    return this;
  }

  public MessageStatus addSentItem(MessageStatusUser sentItem) {
    this.sent.add(sentItem);
    return this;
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class MessageStatus {\n");
    
    sb.append("    author: ").append(toIndentedString(author)).append("\n");
    sb.append("    read: ").append(toIndentedString(read)).append("\n");
    sb.append("    delivered: ").append(toIndentedString(delivered)).append("\n");
    sb.append("    sent: ").append(toIndentedString(sent)).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 static String toIndentedString(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy