public SMBDirectoryInfo(string fileName, IFileSystem fileSystem, ISMBCredentialProvider credentialProvider) : base(new FileSystem(), new DirectoryInfo(fileName)) { _fullName = fileName; _credentialProvider = credentialProvider; _fileSystem = fileSystem; }
public SMBDirectory(ISMBClientFactory smbclientFactory, ISMBCredentialProvider credentialProvider, IFileSystem fileSystem, uint maxBufferSize) : base(new FileSystem()) { _smbClientFactory = smbclientFactory; _credentialProvider = credentialProvider; _fileSystem = fileSystem; _maxBufferSize = maxBufferSize; transport = SMBTransportType.DirectTCPTransport; }
public SMBDirectoryInfoFactory(IFileSystem fileSystem, ISMBCredentialProvider credentialProvider, ISMBClientFactory smbClientFactory, uint maxBufferSize) { _fileSystem = fileSystem; _credentialProvider = credentialProvider; _smbClientFactory = smbClientFactory; _maxBufferSize = maxBufferSize; transport = SMBTransportType.DirectTCPTransport; }
public SMBFileSystem(ISMBClientFactory ismbClientfactory, ISMBCredentialProvider credentialProvider, uint maxBufferSize = 65536) { File = new SMBFile(ismbClientfactory, credentialProvider, this, maxBufferSize); Directory = new SMBDirectory(ismbClientfactory, credentialProvider, this, maxBufferSize); DirectoryInfo = new SMBDirectoryInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize); FileInfo = new SMBFileInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize); FileStream = new SMBFileStreamFactory(this); Path = new SMBPath(this); DriveInfo = new SMBDriveInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize); }
public SMBDirectoryInfoFactory(IFileSystem fileSystem, ISMBCredentialProvider credentialProvider, ISMBClientFactory smbClientFactory, uint maxBufferSize, ILoggerFactory loggerFactory = null) { _logger = loggerFactory?.CreateLogger <SMBDirectoryInfoFactory>(); _fileSystem = fileSystem; _credentialProvider = credentialProvider; _smbClientFactory = smbClientFactory; _maxBufferSize = maxBufferSize; transport = SMBTransportType.DirectTCPTransport; }
public SMBFile(ISMBClientFactory smbclientFactory, ISMBCredentialProvider credentialProvider, IFileSystem fileSystem, uint maxBufferSize = 65536, ISmbFileSystemSettings smbFileSystemSettings = null, ILoggerFactory loggerFactory = null) : base(new FileSystem()) { _logger = loggerFactory?.CreateLogger <SMBFile>(); _smbFileSystemSettings = smbFileSystemSettings ?? new SmbFileSystemSettings(); _smbClientFactory = smbclientFactory; _credentialProvider = credentialProvider; _fileSystem = fileSystem; _maxBufferSize = maxBufferSize; transport = SMBTransportType.DirectTCPTransport; }
internal SMBDirectoryInfo(DirectoryInfo directoryInfo, IFileSystem fileSystem, ISMBCredentialProvider credentialProvider) : this(directoryInfo.FullName, fileSystem, credentialProvider) { _creationTime = directoryInfo.CreationTime; _creationTimeUtc = directoryInfo.CreationTimeUtc; _fileSystem = fileSystem; _lastAccessTime = directoryInfo.LastAccessTime; _lastAccessTimeUtc = directoryInfo.LastAccessTimeUtc; _lastWriteTime = directoryInfo.LastWriteTime; _lastWriteTimeUtc = directoryInfo.LastWriteTimeUtc; _parent = (directoryInfo.Parent != null) ? _directoryInfoFactory.FromDirectoryName(directoryInfo.Parent.FullName) : null; _root = new SMBDirectoryInfo(directoryInfo.Root.FullName, fileSystem, credentialProvider); _exists = directoryInfo.Exists; _extension = directoryInfo.Extension; _name = directoryInfo.Name; }
public SMBFileSystem(ISMBClientFactory ismbClientfactory, ISMBCredentialProvider credentialProvider, uint maxBufferSize = 65536, ISmbFileSystemSettings smbFileSystemSettings = null, ILoggerFactory loggerFactory = null) { if (smbFileSystemSettings == null) { smbFileSystemSettings = new SmbFileSystemSettings(); } File = new SMBFile(ismbClientfactory, credentialProvider, this, maxBufferSize, smbFileSystemSettings, loggerFactory); Directory = new SMBDirectory(ismbClientfactory, credentialProvider, this, maxBufferSize, smbFileSystemSettings, loggerFactory); DirectoryInfo = new SMBDirectoryInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize, loggerFactory); FileInfo = new SMBFileInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize, loggerFactory); FileStream = new SMBFileStreamFactory(this); Path = new SMBPath(this); DriveInfo = new SMBDriveInfoFactory(this, credentialProvider, ismbClientfactory, maxBufferSize, loggerFactory); }
internal SMBDirectoryInfo(string fileName, FileInformation fileInfo, IFileSystem fileSystem, ISMBCredentialProvider credentialProvider, ISMBCredential credential) : this(fileName, fileSystem, credentialProvider) { FileBasicInformation fileDirectoryInformation = (FileBasicInformation)fileInfo; if (fileDirectoryInformation.CreationTime.Time.HasValue) { _creationTime = fileDirectoryInformation.CreationTime.Time.Value; _creationTimeUtc = CreationTime.ToUniversalTime(); } if (fileDirectoryInformation.LastAccessTime.Time.HasValue) { _lastAccessTime = fileDirectoryInformation.LastAccessTime.Time.Value; _lastAccessTimeUtc = LastAccessTime.ToUniversalTime(); } if (fileDirectoryInformation.LastWriteTime.Time.HasValue) { _lastWriteTime = fileDirectoryInformation.LastWriteTime.Time.Value; _lastWriteTimeUtc = LastWriteTime.ToUniversalTime(); } _parent = _smbDirectory.GetParent(fileName, credential); _fileSystem = fileSystem; var pathRoot = _fileSystem.Path.GetPathRoot(fileName); if (pathRoot != fileName) { _root = _directoryInfoFactory.FromDirectoryName(pathRoot, credential); } else { _root = this; } _exists = _fileSystem.Directory.Exists(FullName); _extension = string.Empty; _name = _fullName.GetLastPathSegment().RemoveLeadingAndTrailingSeperators(); }
public SMBCredential(string domain, string userName, string password, string path, ISMBCredentialProvider credentialProvider) { Domain = domain; UserName = userName; Password = password; Path = path; _credentialProvider = credentialProvider; Host = path.Hostname(); ShareName = path.ShareName(); if (string.IsNullOrEmpty(Domain) && UserName.Contains('\\')) { var userNameParts = UserName.Split('\\'); if (userNameParts.Length == 2) { Domain = userNameParts[0]; UserName = userNameParts[1]; } } credentialProvider.AddSMBCredential(this); }
public NetworkShareService(IFileSystem fileSystem, ISMBCredentialProvider credentialProvider) { _fileSystem = fileSystem; _credentialProvider = credentialProvider; }