package im.actor.core.api.rpc; /* * 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 RequestLoadHistory extends Request<ResponseLoadHistory> { public static final int HEADER = 0x76; public static RequestLoadHistory fromBytes(byte[] data) throws IOException { return Bser.parse(new RequestLoadHistory(), data); } private ApiOutPeer peer; private long date; private ApiListLoadMode loadMode; private int limit; private List<ApiUpdateOptimization> optimizations; public RequestLoadHistory(@NotNull ApiOutPeer peer, long date, @Nullable ApiListLoadMode loadMode, int limit, @NotNull List<ApiUpdateOptimization> optimizations) { this.peer = peer; this.date = date; this.loadMode = loadMode; this.limit = limit; this.optimizations = optimizations; } public RequestLoadHistory() { } @NotNull public ApiOutPeer getPeer() { return this.peer; } public long getDate() { return this.date; } @Nullable public ApiListLoadMode getLoadMode() { return this.loadMode; } public int getLimit() { return this.limit; } @NotNull public List<ApiUpdateOptimization> getOptimizations() { return this.optimizations; } @Override public void parse(BserValues values) throws IOException { this.peer = values.getObj(1, new ApiOutPeer()); this.date = values.getLong(3); int val_loadMode = values.getInt(5, 0); if (val_loadMode != 0) { this.loadMode = ApiListLoadMode.parse(val_loadMode); } this.limit = values.getInt(4); this.optimizations = new ArrayList<ApiUpdateOptimization>(); for (int b : values.getRepeatedInt(6)) { optimizations.add(ApiUpdateOptimization.parse(b)); } } @Override public void serialize(BserWriter writer) throws IOException { if (this.peer == null) { throw new IOException(); } writer.writeObject(1, this.peer); writer.writeLong(3, this.date); if (this.loadMode != null) { writer.writeInt(5, this.loadMode.getValue()); } writer.writeInt(4, this.limit); for (ApiUpdateOptimization i : this.optimizations) { writer.writeInt(6, i.getValue()); } } @Override public String toString() { String res = "rpc LoadHistory{"; res += "peer=" + this.peer; res += ", date=" + this.date; res += ", loadMode=" + this.loadMode; res += ", limit=" + this.limit; res += ", optimizations=" + this.optimizations; res += "}"; return res; } @Override public int getHeaderKey() { return HEADER; } }