package im.actor.core.api.updates;
/*
* Generated by the Actor API Scheme generator. DO NOT EDIT!
*/
import im.actor.runtime.bser.*;
import im.actor.runtime.collections.*;
import static im.actor.runtime.bser.Utils.*;
import im.actor.core.network.parser.*;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.NotNull;
import com.google.j2objc.annotations.ObjectiveCName;
import java.io.IOException;
import java.util.List;
import java.util.ArrayList;
import im.actor.core.api.*;
public class UpdateReactionsUpdate extends Update {
public static final int HEADER = 0xde;
public static UpdateReactionsUpdate fromBytes(byte[] data) throws IOException {
return Bser.parse(new UpdateReactionsUpdate(), data);
}
private ApiPeer peer;
private long rid;
private List<ApiMessageReaction> reactions;
public UpdateReactionsUpdate(@NotNull ApiPeer peer, long rid, @NotNull List<ApiMessageReaction> reactions) {
this.peer = peer;
this.rid = rid;
this.reactions = reactions;
}
public UpdateReactionsUpdate() {
}
@NotNull
public ApiPeer getPeer() {
return this.peer;
}
public long getRid() {
return this.rid;
}
@NotNull
public List<ApiMessageReaction> getReactions() {
return this.reactions;
}
@Override
public void parse(BserValues values) throws IOException {
this.peer = values.getObj(1, new ApiPeer());
this.rid = values.getLong(2);
List<ApiMessageReaction> _reactions = new ArrayList<ApiMessageReaction>();
for (int i = 0; i < values.getRepeatedCount(3); i ++) {
_reactions.add(new ApiMessageReaction());
}
this.reactions = values.getRepeatedObj(3, _reactions);
}
@Override
public void serialize(BserWriter writer) throws IOException {
if (this.peer == null) {
throw new IOException();
}
writer.writeObject(1, this.peer);
writer.writeLong(2, this.rid);
writer.writeRepeatedObj(3, this.reactions);
}
@Override
public String toString() {
String res = "update ReactionsUpdate{";
res += "peer=" + this.peer;
res += ", rid=" + this.rid;
res += ", reactions=" + this.reactions;
res += "}";
return res;
}
@Override
public int getHeaderKey() {
return HEADER;
}
}