Beispiel #1
0
            public void writeExternal(java.io.ObjectOutput __p1)
            {
                Page page = CurrentPage;
                ObjectStateFormatter osf          = new ObjectStateFormatter(page);
                ObjectOutputStream   outputStream = new ObjectOutputStream(__p1);

                if (page.NeedViewStateEncryption || page.EnableViewStateMac)
                {
                    outputStream.writeObject(osf.Serialize(_state));
                }
                else
                {
                    osf.Serialize(outputStream, _state);
                }
            }
        public override void Save()
        {
            using (MemoryStream uncompressedStream = new MemoryStream())
            {
                ObjectStateFormatter formatter = new ObjectStateFormatter();
                formatter.Serialize(uncompressedStream, new Pair(ViewState, ControlState));

                using (MemoryStream compressedStream = new MemoryStream())
                {
                    using (GZipStream zipStream = new GZipStream(compressedStream, CompressionLevel.Optimal, leaveOpen: true))
                    {
                        zipStream.Write(uncompressedStream.GetBuffer(), 0, checked((int)uncompressedStream.Length));
                    }

                    if (uncompressedStream.Length > compressedStream.Length)
                    {
                        // compressing will probably save space
                        // CompressedSerializeData uses BinaryFormatter, which ObjectStateFormatter serializes better than byte[]
                        ViewState = new CompressedSerializedData() { RawData = compressedStream.ToArray() };
                        ControlState = null;
                    }

                    // depend on HiddenFieldPageStatePersister for heavy lifting and crypto
                    base.Save();
                }
            }
        }
		public void SerializeOverloads ()
		{
			ObjectStateFormatter osf = new ObjectStateFormatter ();
			string s1 = osf.Serialize (String.Empty);
			string s2;
			using (MemoryStream ms = new MemoryStream ()) {
				osf.Serialize (ms, String.Empty);
				s2 = Convert.ToBase64String (ms.ToArray ());
			}
			Assert.AreEqual (s1, s2, "identical");
		}
Beispiel #4
0
 internal string SerializeToBase64(object value)
 {
     return(osf.Serialize(value));
 }
Beispiel #5
0
        private void page_PreRender(object sender, EventArgs e)
        {
            var page = sender as Page;
            var ctx = HttpContext.Current;

            if (page != null && page.Form != null)
            {
                var csrfToken = string.Empty;

                if (
                    ctx.Request != null ||
                    ctx.Request.Cookies != null ||
                    ctx.Request.Cookies[cookieName] == null ||
                    string.IsNullOrWhiteSpace(ctx.Request.Cookies[cookieName].Value))
                {
                    csrfToken = Guid.NewGuid().ToString("D", CultureInfo.InvariantCulture);
                    ctx.Items[csrfCtx] = csrfToken;
                }
                else
                {
                    csrfToken = page.Request.Cookies[cookieName].Value;
                }

                var osf = new ObjectStateFormatter();

                page.ClientScript.RegisterHiddenField(hiddenField, osf.Serialize(csrfToken));
                //page.ClientScript.RegisterHiddenField(hiddenField, csrfToken);
            }
        }
Beispiel #6
0
        /// <devdoc>
        ///     Serialized value into the writer.
        /// </devdoc>
        private void SerializeInternal(TextWriter output, object value)
        {
            string data = _formatter.Serialize(value);

            output.Write(data);
        }
Beispiel #7
0
        /// <summary>
        /// Returns this <see cref="UploadSession" /> instance serialized into a string.
        /// </summary>
        /// <returns>The serialized string.</returns>
        public string Serialize()
        {
            ObjectStateFormatter formatter = new ObjectStateFormatter();

            return formatter.Serialize(ToObjectArray());
        }
Beispiel #8
0
			public void writeExternal (java.io.ObjectOutput __p1)
			{
				Page page = CurrentPage;
				ObjectStateFormatter osf = new ObjectStateFormatter (page);
				ObjectOutputStream outputStream = new ObjectOutputStream (__p1);

				if (page.NeedViewStateEncryption || page.EnableViewStateMac)
					outputStream.writeObject (osf.Serialize (_state));
				else
					osf.Serialize (outputStream, _state);
			}
 public static string StringSerialize(object source)
 {
     ObjectStateFormatter osf = new ObjectStateFormatter();
     return osf.Serialize(source);
 }
Beispiel #10
0
        internal static string GetSerializedString(object data)
        {
            string dataString;

            ObjectStateFormatter formatter = new ObjectStateFormatter();

            if (data is UploadSession)
                dataString = "session-" + ((UploadSession)data).Serialize();
            else if (data is UploadRequest)
                dataString = "request-" + ((UploadRequest)data).Serialize();
            else if (data is IEnumerable<UploadSession>)
            {
                List<string> serializedStrings = new List<string>();

                foreach (UploadSession session in (IEnumerable<UploadSession>)data)
                    serializedStrings.Add(session.Serialize());

                dataString = "sessionlist-" + formatter.Serialize(serializedStrings.ToArray());
            }
            else if (data is IEnumerable<UploadRequest>)
            {
                List<string> serializedStrings = new List<string>();

                foreach (UploadRequest request in (IEnumerable<UploadRequest>)data)
                    serializedStrings.Add(request.Serialize());

                dataString = "requestlist-" + formatter.Serialize(serializedStrings.ToArray());
            }
            else
                dataString = formatter.Serialize(data);

            // TODO: encrypt
            return dataString;
        }