com.algolia.model.insights.ConvertedObjectIDsAfterSearch Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of algoliasearch Show documentation
Show all versions of algoliasearch Show documentation
Java client for Algolia Search API
The 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.insights;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
* Use this event to track when users convert after a previous Algolia request. For example, a user
* clicks on an item in the search results to view the product detail page. Then, the user adds the
* item to their shopping cart. If you're building your category pages with Algolia, you'll also use
* this event.
*/
@JsonDeserialize(as = ConvertedObjectIDsAfterSearch.class)
public class ConvertedObjectIDsAfterSearch implements EventsItems {
@JsonProperty("eventName")
private String eventName;
@JsonProperty("eventType")
private ConversionEvent eventType;
@JsonProperty("index")
private String index;
@JsonProperty("objectIDs")
private List objectIDs = new ArrayList<>();
@JsonProperty("queryID")
private String queryID;
@JsonProperty("userToken")
private String userToken;
@JsonProperty("authenticatedUserToken")
private String authenticatedUserToken;
@JsonProperty("timestamp")
private Long timestamp;
public ConvertedObjectIDsAfterSearch setEventName(String eventName) {
this.eventName = eventName;
return this;
}
/**
* Event name, up to 64 ASCII characters. Consider naming events consistently—for example, by
* adopting Segment's
* [object-action](https://segment.com/academy/collecting-data/naming-conventions-for-clean-data/#the-object-action-framework)
* framework.
*/
@javax.annotation.Nonnull
public String getEventName() {
return eventName;
}
public ConvertedObjectIDsAfterSearch setEventType(ConversionEvent eventType) {
this.eventType = eventType;
return this;
}
/** Get eventType */
@javax.annotation.Nonnull
public ConversionEvent getEventType() {
return eventType;
}
public ConvertedObjectIDsAfterSearch setIndex(String index) {
this.index = index;
return this;
}
/** Index name (case-sensitive) to which the event's items belong. */
@javax.annotation.Nonnull
public String getIndex() {
return index;
}
public ConvertedObjectIDsAfterSearch setObjectIDs(List objectIDs) {
this.objectIDs = objectIDs;
return this;
}
public ConvertedObjectIDsAfterSearch addObjectIDs(String objectIDsItem) {
this.objectIDs.add(objectIDsItem);
return this;
}
/** Object IDs of the records that are part of the event. */
@javax.annotation.Nonnull
public List getObjectIDs() {
return objectIDs;
}
public ConvertedObjectIDsAfterSearch setQueryID(String queryID) {
this.queryID = queryID;
return this;
}
/**
* Unique identifier for a search query. The query ID is required for events related to search or
* browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID
* is included in the API response.
*/
@javax.annotation.Nonnull
public String getQueryID() {
return queryID;
}
public ConvertedObjectIDsAfterSearch setUserToken(String userToken) {
this.userToken = userToken;
return this;
}
/**
* Anonymous or pseudonymous user identifier. Don't use personally identifiable information in
* user tokens. For more information, see [User
* token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken/).
*/
@javax.annotation.Nonnull
public String getUserToken() {
return userToken;
}
public ConvertedObjectIDsAfterSearch setAuthenticatedUserToken(String authenticatedUserToken) {
this.authenticatedUserToken = authenticatedUserToken;
return this;
}
/**
* Identifier for authenticated users. When the user signs in, you can get an identifier from your
* system and send it as `authenticatedUserToken`. This lets you keep using the `userToken` from
* before the user signed in, while providing a reliable way to identify users across sessions.
* Don't use personally identifiable information in user tokens. For more information, see [User
* token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken/).
*/
@javax.annotation.Nullable
public String getAuthenticatedUserToken() {
return authenticatedUserToken;
}
public ConvertedObjectIDsAfterSearch setTimestamp(Long timestamp) {
this.timestamp = timestamp;
return this;
}
/**
* Timestamp of the event, measured in milliseconds since the Unix epoch. By default, the Insights
* API uses the time it receives an event as its timestamp.
*/
@javax.annotation.Nullable
public Long getTimestamp() {
return timestamp;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
ConvertedObjectIDsAfterSearch convertedObjectIDsAfterSearch = (ConvertedObjectIDsAfterSearch) o;
return (
Objects.equals(this.eventName, convertedObjectIDsAfterSearch.eventName) &&
Objects.equals(this.eventType, convertedObjectIDsAfterSearch.eventType) &&
Objects.equals(this.index, convertedObjectIDsAfterSearch.index) &&
Objects.equals(this.objectIDs, convertedObjectIDsAfterSearch.objectIDs) &&
Objects.equals(this.queryID, convertedObjectIDsAfterSearch.queryID) &&
Objects.equals(this.userToken, convertedObjectIDsAfterSearch.userToken) &&
Objects.equals(this.authenticatedUserToken, convertedObjectIDsAfterSearch.authenticatedUserToken) &&
Objects.equals(this.timestamp, convertedObjectIDsAfterSearch.timestamp)
);
}
@Override
public int hashCode() {
return Objects.hash(eventName, eventType, index, objectIDs, queryID, userToken, authenticatedUserToken, timestamp);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ConvertedObjectIDsAfterSearch {\n");
sb.append(" eventName: ").append(toIndentedString(eventName)).append("\n");
sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n");
sb.append(" index: ").append(toIndentedString(index)).append("\n");
sb.append(" objectIDs: ").append(toIndentedString(objectIDs)).append("\n");
sb.append(" queryID: ").append(toIndentedString(queryID)).append("\n");
sb.append(" userToken: ").append(toIndentedString(userToken)).append("\n");
sb.append(" authenticatedUserToken: ").append(toIndentedString(authenticatedUserToken)).append("\n");
sb.append(" timestamp: ").append(toIndentedString(timestamp)).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