示例#1
0
 public void SetLength(long l)
 {
     Length = l;
     if (waiting_stream != null)
     {
         waiting_stream.EnableWriting();
     }
     waiting_stream = null;
 }
示例#2
0
        public void HandleWrite(IOStream stream)
        {
            SocketStream sstream = (SocketStream)stream;

            if (!Chunked && Length == -1)
            {
                waiting_stream = sstream;
                sstream.DisableWriting();
                return;
            }

            sstream.SendFile(filename, Chunked, Length, (length, error) => {
                IsComplete = true;
                sstream.EnableWriting();
                OnComplete(length, error);
            });

            sstream.DisableWriting();
        }