package im.actor.core.api; /* * 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; public abstract class ApiTextMessageEx extends BserObject { public static ApiTextMessageEx fromBytes(byte[] src) throws IOException { BserValues values = new BserValues(BserParser.deserialize(new DataInput(src, 0, src.length))); int key = values.getInt(1); byte[] content = values.getBytes(2); switch(key) { case 1: return Bser.parse(new ApiTextExMarkdown(), content); case 2: return Bser.parse(new ApiTextModernMessage(), content); case 3: return Bser.parse(new ApiTextCommand(), content); default: return new ApiTextMessageExUnsupported(key, content); } } public abstract int getHeader(); public byte[] buildContainer() throws IOException { DataOutput res = new DataOutput(); BserWriter writer = new BserWriter(res); writer.writeInt(1, getHeader()); writer.writeBytes(2, toByteArray()); return res.toByteArray(); } }