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

com.algolia.model.analytics.GetConversationRateResponse Maven / Gradle / Ivy

There is a newer version: 4.11.0
Show newest version
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost
// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.

package com.algolia.model.analytics;

import com.fasterxml.jackson.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

/** GetConversationRateResponse */
public class GetConversationRateResponse {

  @JsonProperty("rate")
  private Double rate;

  @JsonProperty("trackedSearchCount")
  private Integer trackedSearchCount;

  @JsonProperty("conversionCount")
  private Integer conversionCount;

  @JsonProperty("dates")
  private List dates = new ArrayList<>();

  public GetConversationRateResponse setRate(Double rate) {
    this.rate = rate;
    return this;
  }

  /**
   * [Click-through rate
   * (CTR)](https://www.algolia.com/doc/guides/search-analytics/concepts/metrics/#click-through-rate).
   * minimum: 0 maximum: 1
   */
  @javax.annotation.Nonnull
  public Double getRate() {
    return rate;
  }

  public GetConversationRateResponse setTrackedSearchCount(Integer trackedSearchCount) {
    this.trackedSearchCount = trackedSearchCount;
    return this;
  }

  /**
   * Number of tracked searches. This is the number of search requests where the `clickAnalytics`
   * parameter is `true`.
   */
  @javax.annotation.Nonnull
  public Integer getTrackedSearchCount() {
    return trackedSearchCount;
  }

  public GetConversationRateResponse setConversionCount(Integer conversionCount) {
    this.conversionCount = conversionCount;
    return this;
  }

  /** Number of converted clicks. */
  @javax.annotation.Nonnull
  public Integer getConversionCount() {
    return conversionCount;
  }

  public GetConversationRateResponse setDates(List dates) {
    this.dates = dates;
    return this;
  }

  public GetConversationRateResponse addDates(ConversionRateEvent datesItem) {
    this.dates.add(datesItem);
    return this;
  }

  /** Conversion events. */
  @javax.annotation.Nonnull
  public List getDates() {
    return dates;
  }

  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    GetConversationRateResponse getConversationRateResponse = (GetConversationRateResponse) o;
    return (
      Objects.equals(this.rate, getConversationRateResponse.rate) &&
      Objects.equals(this.trackedSearchCount, getConversationRateResponse.trackedSearchCount) &&
      Objects.equals(this.conversionCount, getConversationRateResponse.conversionCount) &&
      Objects.equals(this.dates, getConversationRateResponse.dates)
    );
  }

  @Override
  public int hashCode() {
    return Objects.hash(rate, trackedSearchCount, conversionCount, dates);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class GetConversationRateResponse {\n");
    sb.append("    rate: ").append(toIndentedString(rate)).append("\n");
    sb.append("    trackedSearchCount: ").append(toIndentedString(trackedSearchCount)).append("\n");
    sb.append("    conversionCount: ").append(toIndentedString(conversionCount)).append("\n");
    sb.append("    dates: ").append(toIndentedString(dates)).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(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy