Ejemplo n.º 1
0
 public override void PreProcess(SurrogateManager surrogateManager)
 {
     Condition.PreProcess(surrogateManager);
     Body.PreProcess(surrogateManager);
     if (PostBody != null)
     {
         PostBody.PreProcess(surrogateManager);
     }
 }
Ejemplo n.º 2
0
        static void Serialize <T>(T obj, Packet packet)
        {
            BinaryFormatter formatter = new BinaryFormatter();

            formatter.SurrogateSelector = SurrogateManager.GetSurrogateSelector();
            using (MemoryStream stream = new MemoryStream())
            {
                formatter.Serialize(stream, obj);
                stream.Flush();
                packet.Write(stream.GetBuffer());
            }
        }
Ejemplo n.º 3
0
        static T Deserialize <T>(Packet packet)
        {
            int length = packet.UnreadLength();

            byte[]          objBytes  = packet.ReadBytes(length);
            BinaryFormatter formatter = new BinaryFormatter();

            formatter.SurrogateSelector = SurrogateManager.GetSurrogateSelector();
            using (MemoryStream stream = new MemoryStream())
            {
                stream.Write(objBytes, 0, length);
                stream.Flush();
                stream.Seek(0, SeekOrigin.Begin);
                T obj = (T)formatter.Deserialize(stream);
                return(obj);
            }
        }
 public static IStorageManager CreateInstance(StateManager stateManager, SurrogateManager surrogateManager)
 {
     if (UseTestImpl)
     {
         return(obj ?? (obj = new TempDictStorageManager()));
     }
     else
     {
         var sessionMode = System.Web.HttpContext.Current.Session.Mode;
         if (sessionMode == System.Web.SessionState.SessionStateMode.InProc)
         {
             // A new object is needed each time, otherwise when having more than 1 user and a static StorageManager the single cache for the session keys would be shared among all the active users.
             return(new SessionStorageManagerInproc(stateManager, surrogateManager));
         }
         else
         {
             return(new SessionStorageManager(stateManager, surrogateManager));
         }
     }
 }