public static RequestParameters DecodeRequest(ClientMessage clientMessage) { using var iterator = clientMessage.GetEnumerator(); var request = new RequestParameters(); var initialFrame = iterator.Take(); request.Timestamp = initialFrame.Bytes.ReadLongL(RequestTimestampFieldOffset); request.ClientAttributes = StringCodec.Decode(iterator); request.MetricsBlob = ByteArrayCodec.Decode(iterator); return(request); }
public static RequestParameters DecodeRequest(ClientMessage clientMessage) { using var iterator = clientMessage.GetEnumerator(); var request = new RequestParameters(); var initialFrame = iterator.Take(); request.Uuid = initialFrame.Bytes.ReadGuidL(RequestUuidFieldOffset); request.SerializationVersion = initialFrame.Bytes.ReadByteL(RequestSerializationVersionFieldOffset); request.ClusterName = StringCodec.Decode(iterator); request.Credentials = ByteArrayCodec.Decode(iterator); request.ClientType = StringCodec.Decode(iterator); request.ClientHazelcastVersion = StringCodec.Decode(iterator); request.ClientName = StringCodec.Decode(iterator); request.Labels = ListMultiFrameCodec.Decode(iterator, StringCodec.Decode); return(request); }
public static ClientMessage EncodeRequest(long timestamp, string clientAttributes, byte[] metricsBlob) { var clientMessage = CreateForEncode(); clientMessage.IsRetryable = false; clientMessage.OperationName = "Client.Statistics"; var initialFrame = new Frame(new byte[RequestInitialFrameSize], UnfragmentedMessage); EncodeInt(initialFrame.Content, TypeFieldOffset, RequestMessageType); EncodeInt(initialFrame.Content, PartitionIdFieldOffset, -1); EncodeLong(initialFrame.Content, RequestTimestampFieldOffset, timestamp); clientMessage.Add(initialFrame); StringCodec.Encode(clientMessage, clientAttributes); ByteArrayCodec.Encode(clientMessage, metricsBlob); return(clientMessage); }
public static ClientMessage EncodeRequest(long timestamp, string clientAttributes, byte[] metricsBlob) { var clientMessage = new ClientMessage { IsRetryable = false, OperationName = "Client.Statistics" }; var initialFrame = new Frame(new byte[RequestInitialFrameSize], (FrameFlags)ClientMessageFlags.Unfragmented); initialFrame.Bytes.WriteIntL(Messaging.FrameFields.Offset.MessageType, RequestMessageType); initialFrame.Bytes.WriteIntL(Messaging.FrameFields.Offset.PartitionId, -1); initialFrame.Bytes.WriteLongL(RequestTimestampFieldOffset, timestamp); clientMessage.Append(initialFrame); StringCodec.Encode(clientMessage, clientAttributes); ByteArrayCodec.Encode(clientMessage, metricsBlob); return(clientMessage); }
public static ClientMessage EncodeRequest(string clusterName, byte[] credentials, Guid uuid, string clientType, byte serializationVersion, string clientHazelcastVersion, string clientName, ICollection <string> labels) { var clientMessage = CreateForEncode(); clientMessage.IsRetryable = true; clientMessage.OperationName = "Client.AuthenticationCustom"; var initialFrame = new Frame(new byte[RequestInitialFrameSize], UnfragmentedMessage); EncodeInt(initialFrame.Content, TypeFieldOffset, RequestMessageType); EncodeInt(initialFrame.Content, PartitionIdFieldOffset, -1); EncodeGuid(initialFrame.Content, RequestUuidFieldOffset, uuid); EncodeByte(initialFrame.Content, RequestSerializationVersionFieldOffset, serializationVersion); clientMessage.Add(initialFrame); StringCodec.Encode(clientMessage, clusterName); ByteArrayCodec.Encode(clientMessage, credentials); StringCodec.Encode(clientMessage, clientType); StringCodec.Encode(clientMessage, clientHazelcastVersion); StringCodec.Encode(clientMessage, clientName); ListMultiFrameCodec.Encode(clientMessage, labels, StringCodec.Encode); return(clientMessage); }
public static ClientMessage EncodeRequest(string clusterName, byte[] credentials, Guid uuid, string clientType, byte serializationVersion, string clientHazelcastVersion, string clientName, ICollection <string> labels) { var clientMessage = new ClientMessage { IsRetryable = true, OperationName = "Client.AuthenticationCustom" }; var initialFrame = new Frame(new byte[RequestInitialFrameSize], (FrameFlags)ClientMessageFlags.Unfragmented); initialFrame.Bytes.WriteIntL(Messaging.FrameFields.Offset.MessageType, RequestMessageType); initialFrame.Bytes.WriteIntL(Messaging.FrameFields.Offset.PartitionId, -1); initialFrame.Bytes.WriteGuidL(RequestUuidFieldOffset, uuid); initialFrame.Bytes.WriteByteL(RequestSerializationVersionFieldOffset, serializationVersion); clientMessage.Append(initialFrame); StringCodec.Encode(clientMessage, clusterName); ByteArrayCodec.Encode(clientMessage, credentials); StringCodec.Encode(clientMessage, clientType); StringCodec.Encode(clientMessage, clientHazelcastVersion); StringCodec.Encode(clientMessage, clientName); ListMultiFrameCodec.Encode(clientMessage, labels, StringCodec.Encode); return(clientMessage); }