Exemple #1
0
        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);
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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);
        }