Please enable JavaScript.
Coggle requires JavaScript to display documents.
FileDetector - Coggle Diagram
FileDetector
2.InitFileChangeDetector()
1.LoadSetting()
【註冊 AFIZZ600 裡面設定的 Import】
查 AFIZZ600, AFIZZ600_Detail
將1的查詢結果呼叫 Add()
若 _DetectorList 裡面沒有查詢的結果,
就加入 _DetectorList
BaseDetector d = new BaseDetector(import);
d.DetectorEvent += new BaseDetector.DetectorHandler(this.DetectorHandler);
DateTime? accessTime = GetAccessTime(e.FullPath);
FileDetectorEvent?.Invoke
OnImportFileDetected
Start2ImportFile
FlowDetecter.TryRegisterJob
serviceProxy.EexcuteImport
FlowDetecter.AckJob
d.OnErrorEvent += new BaseDetector.ErrorHandler(this.DetectorErrorHandler);
_DetectorList?.Add(d);
2.TcListener
1.new TableChangeDetector()
OnImportTableChanged?.Invoke
OnImportTableChanged 應該是 null
覺得這個時候不會跑
OnExportTableChanged?.Invoke
FileDetector 沒有 Export
而且 OnExportTableChanged 應該是 null
所以應該也不會跑
2.OnImportTableChanged
OnTableChangedHandler
【掛上事件處理】
3.Start()
【開始監聽 Table 有無資料變更】
【只監聽 Import】
1.RemoveAllCange()
_IsStop = false
_DoCheckImportJob = new Thread(DetectImportJobStart);
while(!_IsStop)
檢查是不是用 AD
依是不是 AD
執行 executeCommand()
檢查 DB 連線
檢查 AFIZZ601_Detail_Change
呼叫 OnTableChangedHandler
來維護 _DetectorList
Thread.Sleep(interval);
【睡 1 秒】
_DoCheckImportJob.Start();
_DetectorList = new List<
BaseDetector
>();
3.FileDetectorEvent
OnImportFileDetected
4.DetecErrorEvent
OnDetectError
5.Start(-1)
for _DetectorList.Count
Start(i)
List<string> files = _DetectorList[index].Start();
foreach file
GetAccessTime(file);
FileDetectorEvent?.Invoke
OnImportFileDetected
Start2ImportFile
FlowDetecter.TryRegisterJob
serviceProxy.EexcuteImport
FlowDetecter.AckJob
1.new FileChangeDetector()