@Override public IoBuffer encodeMessage(final BinaryContext context, final Object objectMessage) throws Exception { final org.openscada.hd.data.message.CreateQuery value = (org.openscada.hd.data.message.CreateQuery) objectMessage; final IoBuffer data = IoBuffer.allocate(64); data.setAutoExpand(true); // encode message base data.putInt(MESSAGE_CODE); // number of fields data.put(((byte) 5)); // encode attributes org.openscada.core.protocol.ngp.codec.Structures.encodeRequest( context, data, ((byte) 1), value.getRequest()); context.encodePrimitiveLong(data, ((byte) 2), value.getQueryId()); context.encodeString(data, ((byte) 3), value.getItemId()); context.encodePrimitiveBoolean(data, ((byte) 4), value.isUpdateData()); org.openscada.hd.protocol.ngp.codec.Structures.encodeQueryParameters( context, data, ((byte) 5), value.getQueryParameters()); data.flip(); return data; }