internal void Write(ProtocolFormatter formatter) { formatter.WriteByte((byte)QueryKind); if (QueryKind == QueryKind.None) { return; } formatter.WriteString(InitialUser); formatter.WriteString(InitialQueryId); formatter.WriteString(InitialAddress?.ToString()); formatter.WriteByte((byte)Interface); switch (Interface) { case Interface.Tcp: formatter.WriteString(OsUser); formatter.WriteString(ClientHostname); formatter.WriteString(ClientName); formatter.WriteUInt(ClientVersionMajor); formatter.WriteUInt(ClientVersionMinor); formatter.WriteUInt(ClientRevision); break; case Interface.Http: formatter.WriteByte((byte)HttpMethod); formatter.WriteString(HttpUserAgent); break; } if (formatter.ServerInfo.Build > ProtocolCaps.DbmsMinRevisionWithQuotaKeyInClientInfo) { formatter.WriteString(QuotaKey); } }
internal void Write(ProtocolFormatter formatter) { formatter.WriteUInt(1); formatter.WriteByte(IsOwerflow ? (byte)1 : (byte)0); formatter.WriteUInt(2); formatter.WriteBytes(BitConverter.GetBytes(BucketNum)); formatter.WriteUInt(0); }
internal void Write(ProtocolFormatter formatter) { formatter.WriteUInt((int)ClientMessageType.Data); if (formatter.ServerInfo.Build >= ProtocolCaps.DbmsMinRevisionWithTemporaryTables) { formatter.WriteString(Name); } using (formatter.Compression) { if (formatter.ClientInfo.ClientRevision >= ProtocolCaps.DbmsMinRevisionWithBlockInfo) { BlockInfo.Write(formatter); } formatter.WriteUInt(Columns.Count); formatter.WriteUInt(Rows); foreach (var column in Columns) { column.Write(formatter, Rows); } } }
protected internal override void Write(ProtocolFormatter formatter) { formatter.WriteUInt((long)Value.TotalSeconds); }
protected internal override void Write(ProtocolFormatter formatter) { formatter.WriteUInt((long)Convert.ChangeType(Value, typeof(int))); }
protected internal override void Write(ProtocolFormatter formatter) => formatter.WriteUInt(Value ? 1L : 0L);