コード例 #1
0
ファイル: Monitoring.cs プロジェクト: Antoshjkee/FTPConnector
        public void Start(int periodMin, FtpClient client, JArray fileStructure)
        {
            var context = Startup.ConnectionManager.GetHubContext <FileMonitoringHub>();

            context.Clients.All.BroadCastMessage($"Monitoring started at {DateTime.Now}");

            _timer = new Timer((e) =>
            {
                fileStructure = _directorySearch.CompareDirectories(fileStructure, _directorySearch.GetRecursiveFilesJson(client, "/"));
            }, null, 0, (int)TimeSpan.FromMinutes(periodMin).TotalMilliseconds);
        }
コード例 #2
0
        public IActionResult CheckConnection(string host, string user, string password)
        {
            try
            {
                var client = new FtpClient
                {
                    Host        = host,
                    Credentials = new NetworkCredential(user, password)
                };

                client.Connect();

                var fileStructure = _directorySearch.GetRecursiveFilesJson(client, "/");

                _monitoring.Start(1, client, fileStructure);

                return(Ok(fileStructure));
            }
            catch (Exception ex)
            {
                return(BadRequest($"Error occured: {ex.Message}"));
            }
        }