package com.zulip.android.models;
import com.google.gson.annotations.SerializedName;
import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;
@DatabaseTable(tableName = "reactions")
public class Reaction {
private static final String ID_FIELD = "id";
private static final String NAME_FIELD = "name";
private static final String USER_FIELD = "user";
private static final String MESSAGE_FIELD = "message";
@SerializedName("emoji_name")
@DatabaseField(columnName = NAME_FIELD)
private String emojiName;
@SerializedName("user")
@DatabaseField(foreign = true, columnName = USER_FIELD)
private UserReaction user;
@DatabaseField(foreign = true, foreignAutoRefresh = true, columnName = MESSAGE_FIELD)
private Message message;
/**
* Construct an empty Reaction object.
*/
public Reaction() {
}
public String getEmoji() {
return this.emojiName;
}
public void setEmoji(String name) {
this.emojiName = name;
}
public UserReaction getUser() {
return this.user;
}
public void setUser(UserReaction user) {
this.user = user;
}
@Override
public String toString() {
return ":" + getEmoji() + ":";
}
@Override
public boolean equals(Object obj) {
if (obj instanceof Reaction) {
Reaction reaction = (Reaction) obj;
return this.emojiName.equals(reaction.emojiName) && this.user.equals(reaction.user);
} else {
return false;
}
}
}