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 UpdateUserLastSeen extends Update {
public static final int HEADER = 0x9;
public static UpdateUserLastSeen fromBytes(byte[] data) throws IOException {
return Bser.parse(new UpdateUserLastSeen(), data);
}
private int uid;
private long date;
private ApiDeviceType deviceType;
private String deviceCategory;
public UpdateUserLastSeen(int uid, long date, @Nullable ApiDeviceType deviceType, @Nullable String deviceCategory) {
this.uid = uid;
this.date = date;
this.deviceType = deviceType;
this.deviceCategory = deviceCategory;
}
public UpdateUserLastSeen() {
}
public int getUid() {
return this.uid;
}
public long getDate() {
return this.date;
}
@Nullable
public ApiDeviceType getDeviceType() {
return this.deviceType;
}
@Nullable
public String getDeviceCategory() {
return this.deviceCategory;
}
@Override
public void parse(BserValues values) throws IOException {
this.uid = values.getInt(1);
this.date = values.getLong(2);
int val_deviceType = values.getInt(3, 0);
if (val_deviceType != 0) {
this.deviceType = ApiDeviceType.parse(val_deviceType);
}
this.deviceCategory = values.optString(4);
}
@Override
public void serialize(BserWriter writer) throws IOException {
writer.writeInt(1, this.uid);
writer.writeLong(2, this.date);
if (this.deviceType != null) {
writer.writeInt(3, this.deviceType.getValue());
}
if (this.deviceCategory != null) {
writer.writeString(4, this.deviceCategory);
}
}
@Override
public String toString() {
String res = "update UserLastSeen{";
res += "uid=" + this.uid;
res += ", date=" + this.date;
res += "}";
return res;
}
@Override
public int getHeaderKey() {
return HEADER;
}
}