public byte[] ReadBinary() { AssertExists(); LastAccessTimeUtc = TimeService.Current.Now; _stream.Open(); _stream.Seek(0, SeekOrigin.Begin); byte[] buffer = new byte[_stream.Length]; _stream.Read(buffer, 0, buffer.Length); return(buffer); }
public Stream GetResponseStream(string uri, long progress, Func <GetCredentialsEventArgs, bool> getCredentials, out long contentLength) { var response = _responses[uri]; if (response == null) { throw new WebException("404 File not found"); } if (_credentials.ContainsKey(uri)) { bool hasValidCredentials = false; if (getCredentials != null) { var args = new GetCredentialsEventArgs(); while (getCredentials(args)) { if (_credentials[uri].Key == args.UserName && _credentials[uri].Value == args.Password) { hasValidCredentials = true; break; } } } if (!hasValidCredentials) { throw new WebException("401 Unauthorized"); } } contentLength = response.Data.Length; var stream = new MockStream(response.Data); if (response.OnRead != null) { stream.OnRead += response.OnRead; } if (response.OnWrite != null) { stream.OnWrite += response.OnWrite; } stream.Open(); stream.Seek(progress, SeekOrigin.Begin); return(stream); }
public void WriteBinary(byte[] data) { if (_parent == null) { throw new DirectoryNotFoundException("Parent directory is null."); } LastAccessTimeUtc = TimeService.Current.Now; LastWriteTimeUtc = TimeService.Current.Now; _stream = new MockStream(); _stream.Open(); _stream.Write(data, 0, data.Length); if (_parent.GetFiles(Name).Count == 0) { _parent.AddFile(this); } }
public void WriteBinary(byte[] data) { if (_parent == null) throw new DirectoryNotFoundException("Parent directory is null."); LastAccessTimeUtc = TimeService.Current.Now; LastWriteTimeUtc = TimeService.Current.Now; _stream = new MockStream(); _stream.Open(); _stream.Write(data, 0, data.Length); if (_parent.GetFiles(Name).Count == 0) { _parent.AddFile(this); } }
public Stream GetResponseStream(string uri, long progress, Func<GetCredentialsEventArgs, bool> getCredentials, out long contentLength) { var response = _responses[uri]; if (response==null) { throw new WebException("404 File not found"); } if (_credentials.ContainsKey(uri)) { bool hasValidCredentials = false; if (getCredentials != null) { var args = new GetCredentialsEventArgs(); while (getCredentials(args)) { if (_credentials[uri].Key==args.UserName && _credentials[uri].Value==args.Password) { hasValidCredentials = true; break; } } } if (!hasValidCredentials) { throw new WebException("401 Unauthorized"); } } contentLength = response.Data.Length; var stream = new MockStream(response.Data); if (response.OnRead != null) stream.OnRead += response.OnRead; if (response.OnWrite != null) stream.OnWrite += response.OnWrite; stream.Open(); stream.Seek(progress, SeekOrigin.Begin); return stream; }