62 lines
1.6 KiB
C#
62 lines
1.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace ProManagerPartner.Models
|
|
{
|
|
public class Monitor : DTO_Base
|
|
{
|
|
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
|
|
|
public Monitor()
|
|
{
|
|
|
|
}
|
|
|
|
private SourceSystem _source;
|
|
public SourceSystem Source
|
|
{
|
|
get { return _source; }
|
|
set { SetProperty(ref _source, value); }
|
|
}
|
|
|
|
private string _filePath;
|
|
public string FilePath
|
|
{
|
|
get { return _filePath; }
|
|
set { SetProperty(ref _filePath, value); }
|
|
}
|
|
|
|
private string _status;
|
|
public string Status
|
|
{
|
|
get { return _status; }
|
|
set { SetProperty(ref _status, value); }
|
|
}
|
|
|
|
private Utils.CIECAMonitor _folderMonitor;
|
|
public Utils.CIECAMonitor FolderMonitor
|
|
{
|
|
get { return _folderMonitor; }
|
|
set { SetProperty(ref _folderMonitor, value); }
|
|
}
|
|
|
|
public void StartMonitor()
|
|
{
|
|
logger.Debug("Starting folder monitor for path {0}", FilePath);
|
|
System.IO.Directory.CreateDirectory(FilePath);
|
|
FolderMonitor = new Utils.CIECAMonitor(FilePath);
|
|
OnPropertyChanged( nameof(FolderMonitor));
|
|
}
|
|
|
|
public void StopMonitor()
|
|
{
|
|
logger.Debug("Stopping folder monitor for path {0}", FilePath);
|
|
FolderMonitor?.Dispose();
|
|
OnPropertyChanged(nameof(FolderMonitor));
|
|
}
|
|
}
|
|
}
|