static void Main(string[] args) { Version version = Assembly.GetExecutingAssembly().GetName().Version; string ver = "{0}.{1}.{2}".Args(version.Major, version.Minor, version.Build); applicationName = Path.GetFileNameWithoutExtension(Environment.GetCommandLineArgs()[0]); NLogger.Instance.Info("{0} starting @ {1}. Version {2}".Args(applicationName, DateTime.Now.ToString("yyyyMMdd HH:mm:ss"), ver), true); NLogger.Instance.Info("Config = {0}".Args(Settings.Default.ConfigName), true, ConsoleColor.Yellow); NLogger.Instance.Info("-------------------------------------------", true); try { SwiftImportManager im; if (args.Length == 0) { im = new SwiftImportManager(new DataLayer(new DatabaseController(Settings.Default.ConnectionString)), Settings.Default.PollFolders.Cast <string>()); } else { im = new SwiftImportManager(new DataLayer(new DatabaseController(Settings.Default.ConnectionString)), args); } new AutoResetEvent(false).WaitOne(); } catch (Exception ex) { NLogger.Instance.Info("", true); NLogger.Instance.Info("Error: {0}".Args(ex.Message), true, ConsoleColor.Red); NLogger.Instance.Info("", true); WriteSyntax(); } NLogger.Instance.Info("{0} terminating @ {1}".Args(applicationName, DateTime.Now.ToString("yyyyMMdd HH:mm:ss")), true); }
private void StartImportManager() { im = new SwiftImportManager(new DataLayer(new DatabaseController(Settings.Default.ConnectionString)), Settings.Default.PollFolders.Cast <string>()); var reset = new AutoResetEvent(false); reset.WaitOne(); }
public MainViewModel() { Statements = new List <SwiftStatement>(); swiftManager = new SwiftImportManager(); swiftManager.StatusChanged += swiftManager_StatusChanged; swiftManager.Initialise(); // have to init after subscribing to events above so that we can recieve the status updates + errors straight away. FilePath = swiftManager.FileMonitorPath; MonitoringPath = swiftManager.FileMonitorPath; IsMonitoring = true; KeepStatusInMemory = false; // setup bgworker bgWorker = new BackgroundWorker(); bgWorker.DoWork += bgWorker_DoWork; bgWorker.ProgressChanged += bgWorker_ProgressChanged; bgWorker.RunWorkerCompleted += bgWorker_RunWorkerCompleted; bgWorker.WorkerSupportsCancellation = true; bgWorker.WorkerReportsProgress = true; #if !DEBUG // force a run on startup in case stuff has come in whilst it was not running UpdateStatus("Running on startup in case files were missed whilst down..."); RunBgWorker(bgworkerType.ImportAndSaveAll); #endif // setup timer timer = new Timer(1000); timer.Elapsed += timer_Elapsed; IsTimerScheduled = true; }
public void SavingMessages() { //setup if (!Directory.Exists(@"C:\temp\Swift_Files_Prod\")) { Directory.CreateDirectory(@"C:\temp\Swift_Files_Prod\"); } var mgr = new SwiftImportManager(new DataLayer(new DatabaseController("Data Source=devMINKY;Initial Catalog=Reconciliation;Integrated Security=True")), new List <string>() { @"C:\temp\Swift_Files_Prod\*.out" }); //drop a file into the folder //File.Copy("Testfiles\\M300_20160114.114822.inc", @"C:\temp\Swift_Files_Prod\Testfiles\M300_20160114.114822.inc", true); File.Delete(@"Testfiles\M300_20160114.114822.inc.working"); File.Delete(@"Testfiles\M300_20160114.114822.inc.archive"); File.Delete(@"Testfiles\MT535.00591822.out.working"); File.Delete(@"Testfiles\MT535.00591822.out.archive"); File.Delete(@"Testfiles\MT940.00322918.out.working"); File.Delete(@"Testfiles\MT940.00322918.out.archive"); File.Delete(@"Testfiles\MT950.00523025.out.working"); File.Delete(@"Testfiles\MT950.00523025.out.archive"); //explicitly call the import mgr.ImportFile("Testfiles\\M300_20160114.114822.inc"); mgr.ImportFile("Testfiles\\MT535.00591822.out"); mgr.ImportFile("Testfiles\\MT940.00322918.out"); mgr.ImportFile("Testfiles\\MT950.00523025.out"); }
public void PollFolders() { var t = Settings.Default.PollFolders.Cast <string>().ToList().Select(x => new KeyValuePair <string, string>(Path.GetDirectoryName(x), Path.GetFileName(x))); var mgr = new SwiftImportManager(new DataLayer(new DatabaseController(Settings.Default.ConnectionString)), Settings.Default.PollFolders.Cast <string>()); //new AutoResetEvent(false).WaitOne(); }
private void StopWork() { im = null; }