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

org.symphonyoss.symphony.agent.model.MessageSearchQuery Maven / Gradle / Ivy

The newest version!
/*
 * Agent API
 * This document refers to Symphony API calls to send and receive messages and content. They need the on-premise Agent installed to perform decryption/encryption of content.  - sessionToken and keyManagerToken can be obtained by calling the authenticationAPI on the symphony back end and the key manager respectively. Refer to the methods described in authenticatorAPI.yaml. - Actions are defined to be atomic, ie will succeed in their entirety or fail and have changed nothing. - If it returns a 40X status then it will have sent no message to any stream even if a request to aome subset of the requested streams would have succeeded. - If this contract cannot be met for any reason then this is an error and the response code will be 50X. - MessageML is a markup language for messages. See reference here: https://developers.symphony.com/documentation/message_format_reference 
 *
 * OpenAPI spec version: 1.50.0
 * 
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */


package org.symphonyoss.symphony.agent.model;

import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * MessageSearchQuery
 */
@javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2018-03-13T13:44:51.568-04:00")
public class MessageSearchQuery {
  @JsonProperty("text")
  private String text = null;

  @JsonProperty("streamId")
  private String streamId = null;

  @JsonProperty("streamType")
  private String streamType = null;

  @JsonProperty("author")
  private Long author = null;

  @JsonProperty("hashtag")
  private String hashtag = null;

  @JsonProperty("cashtag")
  private String cashtag = null;

  @JsonProperty("mention")
  private Long mention = null;

  @JsonProperty("signal")
  private String signal = null;

  @JsonProperty("fromDate")
  private Long fromDate = null;

  @JsonProperty("toDate")
  private Long toDate = null;

  public MessageSearchQuery text(String text) {
    this.text = text;
    return this;
  }

   /**
   * Search for messages containing this text. Requires streamId to be specified.
   * @return text
  **/
  @ApiModelProperty(value = "Search for messages containing this text. Requires streamId to be specified.")
  public String getText() {
    return text;
  }

  public void setText(String text) {
    this.text = text;
  }

  public MessageSearchQuery streamId(String streamId) {
    this.streamId = streamId;
    return this;
  }

   /**
   * Search for messages sent to this stream
   * @return streamId
  **/
  @ApiModelProperty(value = "Search for messages sent to this stream")
  public String getStreamId() {
    return streamId;
  }

  public void setStreamId(String streamId) {
    this.streamId = streamId;
  }

  public MessageSearchQuery streamType(String streamType) {
    this.streamType = streamType;
    return this;
  }

   /**
   * Search for messages sent to this type of streams. Accepted values are CHAT, IM, MIM, ROOM, POST. 
   * @return streamType
  **/
  @ApiModelProperty(value = "Search for messages sent to this type of streams. Accepted values are CHAT, IM, MIM, ROOM, POST. ")
  public String getStreamType() {
    return streamType;
  }

  public void setStreamType(String streamType) {
    this.streamType = streamType;
  }

  public MessageSearchQuery author(Long author) {
    this.author = author;
    return this;
  }

   /**
   * Search for messages sent by this user ID
   * @return author
  **/
  @ApiModelProperty(value = "Search for messages sent by this user ID")
  public Long getAuthor() {
    return author;
  }

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

  public MessageSearchQuery hashtag(String hashtag) {
    this.hashtag = hashtag;
    return this;
  }

   /**
   * Search for messages containing this hashtag
   * @return hashtag
  **/
  @ApiModelProperty(value = "Search for messages containing this hashtag")
  public String getHashtag() {
    return hashtag;
  }

  public void setHashtag(String hashtag) {
    this.hashtag = hashtag;
  }

  public MessageSearchQuery cashtag(String cashtag) {
    this.cashtag = cashtag;
    return this;
  }

   /**
   * Search for messages containing this cashtag
   * @return cashtag
  **/
  @ApiModelProperty(value = "Search for messages containing this cashtag")
  public String getCashtag() {
    return cashtag;
  }

  public void setCashtag(String cashtag) {
    this.cashtag = cashtag;
  }

  public MessageSearchQuery mention(Long mention) {
    this.mention = mention;
    return this;
  }

   /**
   * Search for messages mentioning this user ID
   * @return mention
  **/
  @ApiModelProperty(value = "Search for messages mentioning this user ID")
  public Long getMention() {
    return mention;
  }

  public void setMention(Long mention) {
    this.mention = mention;
  }

  public MessageSearchQuery signal(String signal) {
    this.signal = signal;
    return this;
  }

   /**
   * Search for messages matching this signal. Can only be combined with date filtering and paging parameters. 
   * @return signal
  **/
  @ApiModelProperty(value = "Search for messages matching this signal. Can only be combined with date filtering and paging parameters. ")
  public String getSignal() {
    return signal;
  }

  public void setSignal(String signal) {
    this.signal = signal;
  }

  public MessageSearchQuery fromDate(Long fromDate) {
    this.fromDate = fromDate;
    return this;
  }

   /**
   * Search for messages sent on or after this timestamp
   * @return fromDate
  **/
  @ApiModelProperty(value = "Search for messages sent on or after this timestamp")
  public Long getFromDate() {
    return fromDate;
  }

  public void setFromDate(Long fromDate) {
    this.fromDate = fromDate;
  }

  public MessageSearchQuery toDate(Long toDate) {
    this.toDate = toDate;
    return this;
  }

   /**
   * Search for messages sent before this timestamp
   * @return toDate
  **/
  @ApiModelProperty(value = "Search for messages sent before this timestamp")
  public Long getToDate() {
    return toDate;
  }

  public void setToDate(Long toDate) {
    this.toDate = toDate;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    MessageSearchQuery messageSearchQuery = (MessageSearchQuery) o;
    return Objects.equals(this.text, messageSearchQuery.text) &&
        Objects.equals(this.streamId, messageSearchQuery.streamId) &&
        Objects.equals(this.streamType, messageSearchQuery.streamType) &&
        Objects.equals(this.author, messageSearchQuery.author) &&
        Objects.equals(this.hashtag, messageSearchQuery.hashtag) &&
        Objects.equals(this.cashtag, messageSearchQuery.cashtag) &&
        Objects.equals(this.mention, messageSearchQuery.mention) &&
        Objects.equals(this.signal, messageSearchQuery.signal) &&
        Objects.equals(this.fromDate, messageSearchQuery.fromDate) &&
        Objects.equals(this.toDate, messageSearchQuery.toDate);
  }

  @Override
  public int hashCode() {
    return Objects.hash(text, streamId, streamType, author, hashtag, cashtag, mention, signal, fromDate, toDate);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class MessageSearchQuery {\n");
    
    sb.append("    text: ").append(toIndentedString(text)).append("\n");
    sb.append("    streamId: ").append(toIndentedString(streamId)).append("\n");
    sb.append("    streamType: ").append(toIndentedString(streamType)).append("\n");
    sb.append("    author: ").append(toIndentedString(author)).append("\n");
    sb.append("    hashtag: ").append(toIndentedString(hashtag)).append("\n");
    sb.append("    cashtag: ").append(toIndentedString(cashtag)).append("\n");
    sb.append("    mention: ").append(toIndentedString(mention)).append("\n");
    sb.append("    signal: ").append(toIndentedString(signal)).append("\n");
    sb.append("    fromDate: ").append(toIndentedString(fromDate)).append("\n");
    sb.append("    toDate: ").append(toIndentedString(toDate)).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 - 2024 Weber Informatics LLC | Privacy Policy