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]);
     }
 }
 public static void WriteValueTypeObject(this ObjectWriter writer, object value)
 {
     writer.InnerWriteObject(new Aoite.Reflection.Emitter.ValueTypeHolder(value)
                             , value.GetType()
                             , FormatterTag.ValueTypeObject);
 }
 public static void WriteObjectArray(this ObjectWriter writer, object[] value)
 {
     writer.WriteTag(FormatterTag.ObjectArray);
     writer.InnerWrite(value);
 }
 public static void WriteObject(this ObjectWriter writer, object value, Type type)
 {
     writer.InnerWriteObject(value
                             , type
                             , FormatterTag.Object);
 }
 public static void WriteResult(this ObjectWriter writer, Result value)
 {
     writer.WriteTag(FormatterTag.Result);
     writer.InnerWrite(value._Status);
     writer.WriteStringOrReference(value._Message);
 }
 public static void WriteGConcurrentDictionary(this ObjectWriter writer, IDictionary value, Type type)
 {
     WriteGDictionary(writer, FormatterTag.GConcurrentDictionary, value, type);
 }
 public static void WriteSuccessfullyResult(this ObjectWriter writer)
 {
     writer.Stream.WriteByte((byte)FormatterTag.SuccessfullyResult);
 }
 public static void WriteChar(this ObjectWriter writer, Char value)
 {
     writer.InnerWrite(FormatterTag.Char, BitConverter.GetBytes(value));
 }
Exemple #9
0
 public static void WriteType(this ObjectWriter writer, Type value)
 {
     writer.WriteTag(FormatterTag.Type);
     writer.InnerWrite(value);
 }
Exemple #10
0
 public static void WriteDBNull(this ObjectWriter writer)
 {
     writer.WriteTag(FormatterTag.DBNull);
 }
Exemple #11
0
 public static void WriteTimeSpan(this ObjectWriter writer, TimeSpan value)
 {
     writer.InnerWrite(FormatterTag.TimeSpan, BitConverter.GetBytes(value.Ticks));
 }
Exemple #12
0
 public static void WriteDateTime(this ObjectWriter writer, DateTime value)
 {
     writer.InnerWrite(FormatterTag.DateTime, BitConverter.GetBytes(value.ToBinary()));
 }
Exemple #13
0
 public static void WriteBoolean(this ObjectWriter writer, Boolean value)
 {
     writer.WriteTag(FormatterTag.Boolean);
     writer.Stream.WriteByte((value ? (byte)1 : (byte)0));
 }
Exemple #14
0
 public static void WriteTag(this ObjectWriter writer, FormatterTag value)
 {
     writer.Stream.WriteByte((byte)value);
 }
Exemple #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);
            }
        }
Exemple #16
0
 public static void WriteGuid(this ObjectWriter writer, Guid value)
 {
     writer.InnerWrite(FormatterTag.Guid, value.ToByteArray());
 }
Exemple #17
0
 public static void WriteStringBuilder(this ObjectWriter writer, StringBuilder value)
 {
     writer.WriteTag(FormatterTag.StringBuilder);
     writer.WriteStringOrReference(value.ToString());
 }