Exemplo n.º 1
0
 public virtual void WriteIndexEntry(IContext context, ByteArrayBuffer writer, object
                                     entry)
 {
     if (entry == null)
     {
         writer.WriteInt(0);
         writer.WriteInt(0);
         return;
     }
     if (entry is StatefulBuffer)
     {
         StatefulBuffer entryAsWriter = (StatefulBuffer)entry;
         writer.WriteInt(entryAsWriter.GetAddress());
         writer.WriteInt(entryAsWriter.Length());
         return;
     }
     if (entry is Slot)
     {
         Slot s = (Slot)entry;
         writer.WriteInt(s.Address());
         writer.WriteInt(s.Length());
         return;
     }
     throw new ArgumentException();
 }
Exemplo n.º 2
0
        public override MsgD GetWriter(StatefulBuffer bytes)
        {
            var message = GetWriterForLength(bytes.Transaction(), bytes.Length() + Const4.IntLength
                                             );

            message._payLoad.WriteInt(bytes.GetAddress());
            message._payLoad.Append(bytes._buffer);
            return(message);
        }