예제 #1
0
        /// <summary>Helper: create a new instance to deserializing into</summary>
        public static KVMessage DeserializeLength(Stream stream, int length)
        {
            KVMessage instance = new KVMessage();

            DeserializeLength(stream, length, instance);
            return(instance);
        }
예제 #2
0
        /// <summary>Helper: create a new instance to deserializing into</summary>
        public static KVMessage DeserializeLengthDelimited(Stream stream)
        {
            KVMessage instance = new KVMessage();

            DeserializeLengthDelimited(stream, instance);
            return(instance);
        }
예제 #3
0
        /// <summary>Helper: create a new instance to deserializing into</summary>
        public static KVMessage Deserialize(Stream stream)
        {
            KVMessage instance = new KVMessage();

            Deserialize(stream, instance);
            return(instance);
        }
예제 #4
0
        /// <summary>Helper: put the buffer into a MemoryStream and create a new instance to deserializing into</summary>
        public static KVMessage Deserialize(byte[] buffer)
        {
            KVMessage instance = new KVMessage();

            using (var ms = new MemoryStream(buffer))
                Deserialize(ms, instance);
            return(instance);
        }
예제 #5
0
 /// <summary>Helper: Serialize into a MemoryStream and return its byte array</summary>
 public static byte[] SerializeToBytes(KVMessage instance)
 {
     using (var ms = new MemoryStream())
     {
         Serialize(ms, instance);
         return(ms.ToArray());
     }
 }
예제 #6
0
        /// <summary>Serialize the instance into the stream</summary>
        public static void Serialize(Stream stream, KVMessage instance)
        {
            // Key for field: 1, Varint
            stream.WriteByte(8);
            global::SilentOrbit.ProtocolBuffers.ProtocolParser.WriteUInt32(stream, instance.Id);
            // Key for field: 2, Varint
            stream.WriteByte(16);
            global::SilentOrbit.ProtocolBuffers.ProtocolParser.WriteUInt32(stream, instance.Len);
            if (instance.Request != null)
            {
                // Key for field: 3, LengthDelimited
                stream.WriteByte(26);
                using(var ms3 = new MemoryStream())

                {
                    Example.KVRequest.Serialize(ms3, instance.Request);

                    // Length delimited byte array

                    uint ms3Length = (uint)ms3.Length;

                    global::SilentOrbit.ProtocolBuffers.ProtocolParser.WriteUInt32(stream, ms3Length);

                    stream.Write(ms3.GetBuffer(), 0, (int)ms3Length);
                }
            }
            if (instance.Response != null)
            {
                // Key for field: 4, LengthDelimited
                stream.WriteByte(34);
                using(var ms4 = new MemoryStream())

                {
                    Example.KVResponse.Serialize(ms4, instance.Response);

                    // Length delimited byte array

                    uint ms4Length = (uint)ms4.Length;

                    global::SilentOrbit.ProtocolBuffers.ProtocolParser.WriteUInt32(stream, ms4Length);

                    stream.Write(ms4.GetBuffer(), 0, (int)ms4Length);
                }
            }
        }