public static AbsContentContainer loadContainer(byte[] data) throws IOException { BserValues values = new BserValues(BserParser.deserialize(new DataInput(data))); int type = values.getInt(1); byte[] content = values.getBytes(2); if (type == TYPE_LOCAL) { return new ContentLocalContainer(AbsLocalContent.loadContainer(content)); } else if (type == TYPE_REMOTE) { return new ContentRemoteContainer(ApiMessage.fromBytes(content)); } else { throw new IOException("Unknown type"); } }
@Override public void parse(BserValues values) throws IOException { this.groupPeer = values.getObj(1, new ApiGroupOutPeer()); this.rid = values.getLong(4); this.user = values.getObj(3, new ApiUserOutPeer()); }