public void Serialize(ObjectWriter writer, object value)
 {
     var items = value as SessionStateItemCollection;
     writer.InnerWrite(items.Count);
     foreach(string name in items.Keys)
     {
         writer.Serialize(name);
         writer.Serialize(items[name]);
     }
 }
Exemplo n.º 2
0
 public static void WriteValueTypeObject(this ObjectWriter writer, object value)
 {
     writer.InnerWriteObject(new Aoite.Reflection.Emitter.ValueTypeHolder(value)
                             , value.GetType()
                             , FormatterTag.ValueTypeObject);
 }
Exemplo n.º 3
0
 public static void WriteObjectArray(this ObjectWriter writer, object[] value)
 {
     writer.WriteTag(FormatterTag.ObjectArray);
     writer.InnerWrite(value);
 }
Exemplo n.º 4
0
 public static void WriteObject(this ObjectWriter writer, object value, Type type)
 {
     writer.InnerWriteObject(value
                             , type
                             , FormatterTag.Object);
 }
Exemplo n.º 5
0
 public static void WriteResult(this ObjectWriter writer, Result value)
 {
     writer.WriteTag(FormatterTag.Result);
     writer.InnerWrite(value._Status);
     writer.WriteStringOrReference(value._Message);
 }
Exemplo n.º 6
0
 public static void WriteGConcurrentDictionary(this ObjectWriter writer, IDictionary value, Type type)
 {
     WriteGDictionary(writer, FormatterTag.GConcurrentDictionary, value, type);
 }
Exemplo n.º 7
0
 public static void WriteSuccessfullyResult(this ObjectWriter writer)
 {
     writer.Stream.WriteByte((byte)FormatterTag.SuccessfullyResult);
 }
Exemplo n.º 8
0
 public static void WriteChar(this ObjectWriter writer, Char value)
 {
     writer.InnerWrite(FormatterTag.Char, BitConverter.GetBytes(value));
 }
Exemplo n.º 9
0
 public static void WriteType(this ObjectWriter writer, Type value)
 {
     writer.WriteTag(FormatterTag.Type);
     writer.InnerWrite(value);
 }
Exemplo n.º 10
0
 public static void WriteDBNull(this ObjectWriter writer)
 {
     writer.WriteTag(FormatterTag.DBNull);
 }
Exemplo n.º 11
0
 public static void WriteTimeSpan(this ObjectWriter writer, TimeSpan value)
 {
     writer.InnerWrite(FormatterTag.TimeSpan, BitConverter.GetBytes(value.Ticks));
 }
Exemplo n.º 12
0
 public static void WriteDateTime(this ObjectWriter writer, DateTime value)
 {
     writer.InnerWrite(FormatterTag.DateTime, BitConverter.GetBytes(value.ToBinary()));
 }
Exemplo n.º 13
0
 public static void WriteBoolean(this ObjectWriter writer, Boolean value)
 {
     writer.WriteTag(FormatterTag.Boolean);
     writer.Stream.WriteByte((value ? (byte)1 : (byte)0));
 }
Exemplo n.º 14
0
 public static void WriteTag(this ObjectWriter writer, FormatterTag value)
 {
     writer.Stream.WriteByte((byte)value);
 }
Exemplo n.º 15
0
        private static void WriteGDictionary(ObjectWriter writer, FormatterTag tag, IDictionary value, Type type)
        {
            writer.WriteTag(tag);
            var genericArguments = type.GetGenericArguments();
            writer.InnerWrite(genericArguments[0]);
            writer.InnerWrite(genericArguments[1]);
            writer.InnerWrite(value.Count);

            foreach(DictionaryEntry item in value)
            {
                writer.Serialize(item.Key);
                writer.Serialize(item.Value);
            }
        }
Exemplo n.º 16
0
 public static void WriteGuid(this ObjectWriter writer, Guid value)
 {
     writer.InnerWrite(FormatterTag.Guid, value.ToByteArray());
 }
Exemplo n.º 17
0
 public static void WriteStringBuilder(this ObjectWriter writer, StringBuilder value)
 {
     writer.WriteTag(FormatterTag.StringBuilder);
     writer.WriteStringOrReference(value.ToString());
 }