public static void Encode(ClientMessage clientMessage, Hazelcast.Data.IndexConfig indexConfig) { clientMessage.Append(Frame.CreateBeginStruct()); var initialFrame = new Frame(new byte[InitialFrameSize]); initialFrame.Bytes.WriteIntL(TypeFieldOffset, indexConfig.Type); clientMessage.Append(initialFrame); CodecUtil.EncodeNullable(clientMessage, indexConfig.Name, StringCodec.Encode); ListMultiFrameCodec.Encode(clientMessage, indexConfig.Attributes, StringCodec.Encode); CodecUtil.EncodeNullable(clientMessage, indexConfig.BitmapIndexOptions, BitmapIndexOptionsCodec.Encode); clientMessage.Append(Frame.CreateEndStruct()); }
public static ClientMessage EncodeRequest(string name, Hazelcast.Data.IndexConfig indexConfig) { var clientMessage = new ClientMessage { IsRetryable = false, OperationName = "Map.AddIndex" }; 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); clientMessage.Append(initialFrame); StringCodec.Encode(clientMessage, name); IndexConfigCodec.Encode(clientMessage, indexConfig); return(clientMessage); }