Esempio n. 1
0
        public override void writeAsBinary(BinaryDataOutput output)
        {
            output.writeUnsignedByte(tokenType);
            output.writeCompressedInt(version);
            output.writeString(dataSource);
            output.writeString(userID);
            output.writeString(password);
            output.writeString(dataStoreUserID);
            output.writeString(dataStorePassword);
            output.writeString(clientID);
            output.writeString(timezone);
            output.writeString(timezoneOffset);

            if (extendedProperties != null)
            {
                flags |= EXTENDED_PROPERTIES;
            }
            else
            {
                flags &= ~EXTENDED_PROPERTIES;
            }

            output.writeCompressedInt(flags);

            if (extendedProperties != null)
            {
                output.writeString(extendedProperties);
            }

            output.writeString(vendorID);
        }
Esempio n. 2
0
        //@Override
        protected void writeAsBinary(BinaryDataOutput output)
        {
            output.writeUnsignedByte(messageType);

            for (int i = 0; i < tokens.Count; ++i)
            {
                Token token = (Token)tokens[i];
                token.writeAsBinary(output);
            }

            output.writeUnsignedByte(Token.TID_END);
        }
        public void Encode(Remoting.Channel ch, object message, ByteArray output)
        {
            ByteArray  data      = new ByteArray();
            Dataoutput binOutput = new BinaryDataOutput(data);

            byte pType = 0, commpressed = 0;

            if (message is HandSankeReq)
            {
                pType       = Packet.FLAG_HANDSNAKE;
                commpressed = PacketHeader.UNCOMPRESSED;
                HandSankeReq req = message as HandSankeReq;
                req.SerializaTo(binOutput);
            }
            else if (message is HeartBeatReq)
            {
                pType       = Packet.FLAG_HEARTBEAT;
                commpressed = PacketHeader.UNCOMPRESSED;
                HeartBeatReq req = message as HeartBeatReq;
                req.SerializaTo(binOutput);
            }
            else if (message is Request)
            {
                pType       = Packet.FLAG_MESSAGE;
                commpressed = PacketHeader.UNCOMPRESSED;
                Request req = message as Request;
                binOutput.WriteInt(req.Id);
                binOutput.WriteByte(req.Type);
                binOutput.WriteInt(req.Sequence);
                binOutput.WriteBool(req.TwoWay);
                RequestArg content = (RequestArg)req.Content;
                content.SerializaTo(binOutput);
            }

            Dataoutput wholeOutput = new BinaryDataOutput(output);

            wholeOutput.WriteByte(MAGIC_HIGH);
            wholeOutput.WriteByte(MAGIC_LOW);
            wholeOutput.WriteByte(pType);
            wholeOutput.WriteByte(commpressed);
            wholeOutput.WriteInt(data.Length);
            output.WriteBytes(data.Bytes);
        }
Esempio n. 4
0
        private void AssertReadWrite <T>(
            T key,
            Writer <T> write,
            Reader <T> read)
            where T : IntSeqKey
        {
            byte[] bytes;

            using (var memoryStream = new MemoryStream()) {
                using (var dataOutput = new BinaryDataOutput(memoryStream)) {
                    write.Invoke(dataOutput, key);
                    memoryStream.Flush();
                    memoryStream.Close();
                    bytes = memoryStream.ToArray();
                }
            }

            using (var memoryStream = new MemoryStream(bytes)) {
                using (var dataInput = new BinaryDataInput(memoryStream)) {
                    IntSeqKey deserialized = read.Invoke(dataInput);
                    Assert.AreEqual(key, deserialized);
                }
            }
        }
Esempio n. 5
0
        /// <summary> Writes the header to the specified BinaryDataOutput.
        /// 
        /// </summary>
        /// <param name="out">Where to write the header.
        /// 
        /// </param>
        public virtual void writeTo(BinaryDataOutput out_Renamed)
        {
            int i, len;
            byte[] buf;

            buf = Buffer;
            len = Length;

            for (i = 0; i < len; i++)
            {
                out_Renamed.writeByte(buf[i]);
            }
        }
Esempio n. 6
0
 public abstract void writeAsBinary(BinaryDataOutput output);