public static ClientMessage EncodeRequest(string name, ICollection <KeyValuePair <Guid, long> > replicaTimestamps, Guid targetReplicaUUID) { var clientMessage = new ClientMessage { IsRetryable = true, OperationName = "PNCounter.Get" }; 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(RequestTargetReplicaUUIDFieldOffset, targetReplicaUUID); clientMessage.Append(initialFrame); StringCodec.Encode(clientMessage, name); EntryListUUIDLongCodec.Encode(clientMessage, replicaTimestamps); return(clientMessage); }
public static ClientMessage EncodeRequest(string name, long delta, bool getBeforeUpdate, ICollection <KeyValuePair <Guid, long> > replicaTimestamps, Guid targetReplicaUUID) { var clientMessage = CreateForEncode(); clientMessage.IsRetryable = false; clientMessage.OperationName = "PNCounter.Add"; var initialFrame = new Frame(new byte[RequestInitialFrameSize], UnfragmentedMessage); EncodeInt(initialFrame.Content, TypeFieldOffset, RequestMessageType); EncodeInt(initialFrame.Content, PartitionIdFieldOffset, -1); EncodeLong(initialFrame.Content, RequestDeltaFieldOffset, delta); EncodeBool(initialFrame.Content, RequestGetBeforeUpdateFieldOffset, getBeforeUpdate); EncodeGuid(initialFrame.Content, RequestTargetReplicaUUIDFieldOffset, targetReplicaUUID); clientMessage.Add(initialFrame); StringCodec.Encode(clientMessage, name); EntryListUUIDLongCodec.Encode(clientMessage, replicaTimestamps); return(clientMessage); }