diff --git a/GUIs.ClipboardWatcher/ClipboardWatcher.vbproj.bak b/GUIs.ClipboardWatcher/ClipboardWatcher.vbproj.bak
deleted file mode 100644
index 079ef485..00000000
--- a/GUIs.ClipboardWatcher/ClipboardWatcher.vbproj.bak
+++ /dev/null
@@ -1,211 +0,0 @@
-
-
-
-
- Debug
- AnyCPU
- {B7D465A2-AE31-4CDF-A8B2-34B42D3EA84E}
- Library
- DigitalData.GUIs.ClipboardWatcher
- DigitalData.GUIs.ClipboardWatcher
- 512
- Windows
- v4.6.1
-
-
- true
- full
- true
- true
- bin\Debug\
- DigitalData.GUIs.ClipboardWatcher.xml
- 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
-
-
- pdbonly
- false
- true
- true
- bin\Release\
- DigitalData.GUIs.ClipboardWatcher.xml
- 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
-
-
- On
-
-
- Binary
-
-
- Off
-
-
- On
-
-
-
- False
-
-
-
- False
-
-
-
- False
-
-
- False
- ..\Modules.EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll
-
-
-
- ..\packages\NLog.4.7.10\lib\net45\NLog.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- frmMatch.vb
-
-
- Form
-
-
- frmTreeView.vb
-
-
- Form
-
-
-
- True
- Application.myapp
-
-
- True
- True
- Resources.resx
-
-
- True
- Settings.settings
- True
-
-
-
-
-
-
- frmMatchLoading.vb
-
-
- Form
-
-
-
-
- frmMatch.vb
-
-
- frmMatch.vb
-
-
- frmMatch.vb
-
-
- frmMatchLoading.vb
-
-
- frmMatchLoading.vb
-
-
- frmTreeView.vb
-
-
- frmTreeView.vb
-
-
-
- VbMyResourcesResXFileCodeGenerator
- Resources.Designer.vb
- My.Resources
- Designer
-
-
- frmMatchLoading.vb
-
-
-
-
-
- MyApplicationCodeGenerator
- Application.Designer.vb
-
-
- SettingsSingleFileGenerator
- My
- Settings.Designer.vb
-
-
-
-
-
- {D20A6BF2-C7C6-4A7A-B34D-FA27D775A049}
- Common
-
-
- {EAF0EA75-5FA7-485D-89C7-B2D843B03A96}
- Database
-
-
- {25017513-0d97-49d3-98d7-ba76d9b251b0}
- EDMI.API
-
-
- {d3c8cfed-d6f6-43a8-9bdf-454145d0352f}
- Language
-
-
- {903b2d7d-3b80-4be9-8713-7447b704e1b0}
- Logging
-
-
- {7c3b0c7e-59fe-4e1a-a655-27ae119f9444}
- Patterns
-
-
- {81cac44f-3711-4c8f-ae98-e02a7448782a}
- ZooFlow
-
-
- {5efaef9b-90b9-4f05-9f70-f79ad77fff86}
- Windows
-
-
-
-
\ No newline at end of file
diff --git a/GUIs.ClipboardWatcher/My Project/licenses.licx b/GUIs.ClipboardWatcher/My Project/licenses.licx
index e69de29b..f44a7f5f 100644
--- a/GUIs.ClipboardWatcher/My Project/licenses.licx
+++ b/GUIs.ClipboardWatcher/My Project/licenses.licx
@@ -0,0 +1 @@
+DevExpress.XtraEditors.TileControl, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/GUIs.ClipboardWatcher/frmMatch.resx.bak b/GUIs.ClipboardWatcher/frmMatch.resx.bak
deleted file mode 100644
index 652f24a7..00000000
--- a/GUIs.ClipboardWatcher/frmMatch.resx.bak
+++ /dev/null
@@ -1,270 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 2
-
-
-
- 0
-
-
-
- 6, 13
-
-
- $this
-
-
- 0, 420
-
-
- Label1
-
-
- DevExpress.XtraEditors.TileControl, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- 800, 30
-
-
- SplashScreenManager1
-
-
- 800, 38
-
-
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- Segoe UI, 12pt
-
-
- 0, 0
-
-
- TileControl1
-
-
-
- Fill
-
-
- Daten
-
-
- Top
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 0, 38
-
-
- 800, 450
-
-
- 5, 5, 5, 5
-
-
- $this
-
-
- Label2
-
-
- DevExpress.XtraEditors.TileGroup, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- Segoe UI, 9.75pt
-
-
- Segoe UI Semibold, 12pt, style=Bold
-
-
- TileGroupDocumentsData
-
-
- Wie wurden die Profile gefunden?
-
-
- frmMatch
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- Es wurde(n) {0} in {1} für Ihre Suche nach '{2}' gefunden:
-
-
- TileGroupDocuments
-
-
- 3
-
-
- Dokumente
-
-
- 800, 382
-
-
- $this
-
-
- 5, 5, 5, 5
-
-
- TileControlMatch
-
-
- 1
-
-
- 0
-
-
- TileGroupData
-
-
- Kombiniert
-
-
- DevExpress.XtraEditors.TileGroup, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- 1
-
-
- Clipboard Watcher - Profile gefunden
-
-
- Bottom
-
-
- DevExpress.XtraEditors.TileGroup, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- True
-
-
\ No newline at end of file
diff --git a/GUIs.ClipboardWatcher/frmMatch.vb b/GUIs.ClipboardWatcher/frmMatch.vb
index ae1b6a73..6105a9b8 100644
--- a/GUIs.ClipboardWatcher/frmMatch.vb
+++ b/GUIs.ClipboardWatcher/frmMatch.vb
@@ -27,18 +27,18 @@ Imports System.Globalization
''' - Clipboard Content as String
'''
Public Class frmMatch
- Private _LogConfig As LogConfig
- Private _Logger As Logger
- Private _Environment As Environment
- Private _Params As ClipboardWatcherParams
- Private _Language As String
+ Private ReadOnly _LogConfig As LogConfig
+ Private ReadOnly _Logger As Logger
+ Private ReadOnly _Environment As Environment
+ Private ReadOnly _Params As ClipboardWatcherParams
+ Private ReadOnly _Language As String
- Private PrimaryFont As New Font("Segoe UI", 12, FontStyle.Bold)
- Private SecondaryFont As New Font("Segoe UI", 10)
- Private TileForeColor As Color = Color.Black
- Private TileBackColor As Color = Color.FromArgb(255, 214, 47)
+ Private ReadOnly PrimaryFont As New Font("Segoe UI", 12, FontStyle.Bold)
+ Private ReadOnly SecondaryFont As New Font("Segoe UI", 10)
+ Private ReadOnly TileForeColor As Color = Color.Black
+ Private ReadOnly TileBackColor As Color = Color.FromArgb(255, 214, 47)
- Private OpenForms As New List(Of IResultForm)
+ Private ReadOnly OpenForms As New List(Of IResultForm)
Private ShouldHideInitially As Boolean = False
Private Const NO_COUNT_SQL As Integer = 99998
@@ -60,7 +60,7 @@ Public Class frmMatch
_Environment = Environment
_Params = Params
- _Language = Language.Utils.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
+ _Language = Utils.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
Thread.CurrentThread.CurrentUICulture = New CultureInfo(_Language)
End Sub
@@ -144,13 +144,16 @@ Public Class frmMatch
OpenDocumentResults(oProfile, oSearches)
_Logger.Debug($"OpenDocumentResults finished")
Hide()
+
ElseIf oProfile.CountDocs > 0 And oProfile.CountData > 0 Then
_Logger.Debug($"Docs AND Data")
+
ElseIf oProfile.CountDocs = 0 And oProfile.CountData > 0 Then
_Logger.Debug($"ONLY Data")
Dim oSearches = Await oProfileSearch.LoadDataSearchesAsync(oProfile.Guid)
OpenDataResults(oProfile, oSearches)
Hide()
+
End If
End If
Catch ex As Exception
diff --git a/GUIs.ClipboardWatcher/frmMatchLoading.resx.bak b/GUIs.ClipboardWatcher/frmMatchLoading.resx.bak
deleted file mode 100644
index fcdedd5f..00000000
--- a/GUIs.ClipboardWatcher/frmMatchLoading.resx.bak
+++ /dev/null
@@ -1,237 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tableLayoutPanel1
-
-
-
- 0, 14, 0, 14
-
-
-
- True
-
-
- GrowAndShrink
-
-
-
- 6, 13
-
-
- 246, 39
-
-
- progressPanel1
-
-
- Form1
-
-
- DevExpress.XtraWaitForm.WaitForm, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- 246, 73
-
-
- frmMatchLoading
-
-
- 1
-
-
- 0, 3, 0, 3
-
-
- Fill
-
-
- 1
-
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="progressPanel1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Percent,100" /><Rows Styles="Percent,100" /></TableLayoutSettings>
-
-
- $this
-
-
- 246, 73
-
-
- Manual
-
-
- 0, 17
-
-
- Bitte warten
-
-
- 0, 0
-
-
- True
-
-
- GrowAndShrink
-
-
- progressPanel1
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Ergebnisse werden geladen...
-
-
- DevExpress.XtraWaitForm.ProgressPanel, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- Microsoft Sans Serif, 8.25pt
-
-
- System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Fill
-
-
- 1
-
-
- Microsoft Sans Serif, 12pt
-
-
- tableLayoutPanel1
-
-
- True
-
-
- fr-FR
-
-
\ No newline at end of file
diff --git a/GUIs.ClipboardWatcher/frmTreeView.resx.bak b/GUIs.ClipboardWatcher/frmTreeView.resx.bak
deleted file mode 100644
index 84d515f4..00000000
--- a/GUIs.ClipboardWatcher/frmTreeView.resx.bak
+++ /dev/null
@@ -1,275 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- 800, 450
-
-
-
- 0
-
-
- $this
-
-
- System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- 800, 450
-
-
- 0
-
-
- 6, 13
-
-
- ImageList1
-
-
- tvProfileMatch
-
-
- Profilsuchen Algorithmus
-
-
- 0
-
-
- 0
-
-
- 0, 0
-
-
- Segoe UI, 9.75pt
-
-
-
- AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
- LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
- ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAD+
- EgAAAk1TRnQBSQFMAgEBBgEAARABAAEUAQABEAEAARABAAT/ASEBEAj/AUIBTQE2BwABNgMAASgDAAFA
- AwABIAMAAQEBAAEgBgABIDYABP8DmQH/A+oF/wPMAf8DwAH/xAADhgH/A4YB/wOGAf8DhgH/A4YB/wOG
- Af8DhgH/A4YF/wPXAf8D+AH/AcwBmQExAf8BzAGZATEB/wHMApkF/wOWAf8EAAOGAf8DhgH/A4YB/wOG
- Af8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/hAADhgH/HAADhgX/AcwBmQFk
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExCf8QAAOGAf8YAAOGAf+QAAOGAf8cAAOyBf8B8AHKAaYB/wHM
- AZkBMQ3/A8wB/xAAA4YB/xgAA4YB/5AAA4YB/yAAA5YF/wHwAcoBpgn/A8AB/wPqAf8EAAOGAf8DhgH/
- A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/hAADhgH/JAAD8QH/
- A5YB/wOGAf8DwAH/BAADmQH/EAADhgH/GAADhgH/kAADhgH/OAADhgH/EAADhgH/GAADhgH/kAADhgH/
- OAADhgH/BAADhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/
- A4YB/4QAA4YB/zgAA4YB/xAAA4YB/xgAA4YB/5AAA4YB/zgAA4YB/xAAA4YB/xgAA4YB/5AAAcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wQAA4YB/wQAA4YB/wOG
- Af8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf+EAAHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8EAAOGAf8EAAPXAf8D1wH/
- A9cB/wOGAf8D1wH/A9cB/wPXAf8D1wH/A9cB/wPXAf8DhgH/A9cB/wPXAf8D1wH/hAABzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/BAADhgH/BAAD1wH/A9cB/wPX
- Af8DhgH/A9cB/wPXAf8D1wH/A9cB/wPXAf8D1wH/A4YB/wPXAf8D1wH/A9cB/4wAAcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wQAA4YB/wOGAf8DhgH/A4YB/wOG
- Af8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf+MAAHMAZkBMQH/AcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf/IAAHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf//AF0AA4Yh/xwAAcwBmQFkAf8BzAGZATEB/wPqAf8kAAOG
- Af8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/ZAADhiH/HAABzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf9MAAOGAf8QAAHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/EAABMQHMAv8BZAHMAv8BZAHMAv8BZAHMAv8DhiH/CAAE/wHMAZkBMQH/AcwBmQExBf8D3QH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQX/AswBmQH/AcwBmQExAf8CzAGZAf8gAAOGAf8DhgH/A4YB/wOG
- Af8DhgH/CAADhgH/EAABzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/xAA
- ATEBzAL/AWQBzAL/AWQBzAL/AWQBzAL/A4Yh/wgAAcwBmQFkAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/IAABZAHMAv8BZAHMAv8BZAHMAv8BZAHMAv8DhgH/CAADhgH/EAABzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/xAAATEBzAL/AWQBzAL/AWQBzAL/AWQBzAL/A4Yh/wgA
- BP8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wLMAZkB/yAAAWQBzAL/AWQBzAL/AWQBzAL/AWQBzAL/A4YB/wgA
- A4YB/xAAAcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAExAcwC/wFk
- AcwC/wFkAcwC/wFkAcwC/wOGIf8MAAHMAZkBZAH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/A/EF/wLM
- AZkB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEF/yAAAWQBzAL/AWQBzAL/AWQBzAL/AWQBzAL/A4YB/wgA
- A4YB/xAAAcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAExAcwC/wFk
- AcwC/wFkAcwC/wFkAcwC/wOGIf8EAAHMAZkBZAH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8QAALMAZkB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/A+oB/wQAA+MB/wOGBf8kAAOG
- Af8DhgH/DAABzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/CAABzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAExAcwC/wFkAcwC/wFkAcwC/wFk
- AcwC/wOGIf8EAAHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAT/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wQABP8DhgH/A4YF/xwAA8AB/wOGAf8DzAH/
- DAABzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/CAABzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAExAcwC/wFkAcwC/wFkAcwC/wFkAcwC/wOG
- If8EAAHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8QAAPxAf8BzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBZAH/CAAE/wOGAf8DhgX/FAADwAH/A4YB/wPMAf8QAAHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/EAABMQHMAv8BZAHMAv8BZAHM
- Av8BZAHMAv8DhiH/DAABzAGZATEB/wHMAZkBMQH/AcwBmQExAf8D1wH/DAABzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8D3QH/FAAE/wOGAf8DhgX/DAADwAH/A4YB/wPMAf8UAAHMAZkBMQH/AcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/EAABMQHMAv8BZAHMAv8BZAHMAv8BZAHMAv8DhgH/A4YB/wOG
- Af8DhgH/A4YB/wOGAf8DhgH/A4YB/wOGAf8MAAHMApkB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHM
- AZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEF/xgABP8DhgH/A4YF/wQA
- A8AB/wOGAf8DzAH/AcwBmQFkAf8UAAHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQEx
- Af8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wPq
- Af8QAAExAcwC/yAAAWQBzAL/FAAB8AHKAaYB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8cAAT/
- A4YB/wOGAf8DwAH/A4YB/wPMAf8BzAGZAWQB/wHMAZkBMQH/IAABzAGZATEB/xAAAcwBmQExAf8gAAEx
- AcwC/wQAA4YB/wOGAf8DhgH/A4YB/wOGAf8DhgH/A4YB/wFkAcwC/xQAA8wB/wHMAZkBMQH/AcwBmQEx
- Af8BzAKZAf8BzAGZATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBZAH/AcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/IAAE/wOGAf8DhgH/A8wB/wQAAcwBmQExAf8BzAGZATEB/yAAAcwBmQExAf8BzAGZ
- ATEB/wHMAZkBMQH/AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/MAADhgH/BAADhgH/JAADzAH/A8wB/wgA
- AcwBmQExAf8BzAGZATEB/wHMAZkBMQH/BAAE/wHMAZkBZAX/JAAE/wPMAf+4AAHMAZkBMQH/AcwBmQEx
- Af8BzAGZAWQB//8AGQABQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/wEAAf8BgQL/
- BgABgAEBBAABfwEAAfcB7wQAAX8BAAH3Ae8EAAF/AoABAQQAAX8BwgH3Ae8EAAF/Af4B9wHvBAABfwH+
- AYABAQQAAX8B/gH3Ae8EAAF/Af4B9wHvBQABAgGAAQEFAAECAYABAQUAAQIBgAEBBAABwAEAAYABAQQA
- AcABAAL/BAABwAEAAv8EAAT/Af4BAAH+AT8B4AEDAv8B/gEAAf4BPwH/AfsBwAEBAeABAAHAAQMB/AEb
- AcABAQHgAQABwAEDAfwBGwHAAQEB4AEAAcABAwH8ARsBwAEBAeABAAHgAQMB/AEbAcABAQHgAQABgwHA
- AY8B+QHBAYEB4AEAAYMBwAGHAfEBwQGBAeABAAGDAcABwwHjAcABAQHgAQAB4QHDAeEBxwHAAQEB4AEA
- AeABAwHwAYcBwAEBAe8B9wHAAQMB+AEHAfsB3wHoAQcBwAEDAfwBJwH4AR8B/gG/AeYBIwH+AX8E/wH+
- AT8I/xYACw==
-
-
-
-
- Fill
-
-
- System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- frmTreeView
-
-
- fr-FR
-
-
- True
-
-
- 17, 17
-
-
\ No newline at end of file
diff --git a/GUIs.Common/Common.vbproj b/GUIs.Common/Common.vbproj
index e4ccd8e6..2c711bad 100644
--- a/GUIs.Common/Common.vbproj
+++ b/GUIs.Common/Common.vbproj
@@ -118,6 +118,7 @@
+
diff --git a/GUIs.Common/DataResultList/frmDataResultList.vb b/GUIs.Common/DataResultList/frmDataResultList.vb
index 1f5ecdc0..a1a54684 100644
--- a/GUIs.Common/DataResultList/frmDataResultList.vb
+++ b/GUIs.Common/DataResultList/frmDataResultList.vb
@@ -30,7 +30,7 @@ Public Class frmDataResultList
Public Property ShouldReturnToPreviousForm As Boolean Implements IResultForm.ShouldReturnToPreviousForm
- Private Property OperationMode As IResultForm.Mode Implements IResultForm.OperationMode
+ Private Property OperationMode As Helpers.OperationMode Implements IResultForm.OperationMode
Public Sub New(LogConfig As LogConfig, Environment As Environment, Params As DataResultParams)
' Dieser Aufruf ist für den Designer erforderlich.
diff --git a/GUIs.Common/DocumentResultList/DocumentResultParams.vb b/GUIs.Common/DocumentResultList/DocumentResultParams.vb
index b383c86c..5d1e5679 100644
--- a/GUIs.Common/DocumentResultList/DocumentResultParams.vb
+++ b/GUIs.Common/DocumentResultList/DocumentResultParams.vb
@@ -1,4 +1,6 @@
-Public Class DocumentResultParams
+Imports DigitalData.GUIs.Common.Helpers
+
+Public Class DocumentResultParams
'''
''' WindowGuid is used to save layout data
'''
@@ -6,6 +8,7 @@
Public WindowTitle As String = ""
Public Results As New List(Of DocumentResult)
Public ColumnNames As New ColumnNames
+ Public OperationModeOverride As OperationMode = OperationMode.None
End Class
Public Class DocumentResult
@@ -16,4 +19,5 @@ Public Class ColumnNames
Public ObjectIdColumn As String = "DocId"
Public FullPathColumn As String = "FULL_FILENAME"
Public FilenameColumn As String = "Name"
+ Public IconColumn As String = "ICON"
End Class
diff --git a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
index 85b7c3dc..2e61de82 100644
--- a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
+++ b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
@@ -7,7 +7,6 @@ Imports DevExpress.XtraBars
Imports DevExpress.XtraEditors
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
-Imports DevExpress.XtraGrid.Menu
Imports DevExpress.XtraGrid.Views.BandedGrid
Imports DevExpress.XtraGrid.Views.Base
Imports DevExpress.XtraGrid.Views.Grid
@@ -16,21 +15,20 @@ Imports DevExpress.XtraPrinting
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.Client
+Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Imports DigitalData.Modules.Language
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
-Imports DigitalData.Modules.Windows
-Imports DigitalData.Modules.Filesystem
Public Class frmDocumentResultList
Implements IResultForm
' These are NOT constants, only defaults
' Can be changed when calling frmDocumentResultList
- Private COLUMN_FILEPATH As String = "FULL_FILENAME"
- Private COLUMN_FILENAME As String = "Filename"
- Private COLUMN_DOCID As String = "DocID"
- Private COLUMN_ICON As String = "ICON"
+ Private ReadOnly COLUMN_FILEPATH As String = "FULL_FILENAME"
+ Private ReadOnly COLUMN_FILENAME As String = "Filename"
+ Private ReadOnly COLUMN_DOCID As String = "DocID"
+ Private ReadOnly COLUMN_ICON As String = "ICON"
' Constants
Private Const OPEN_FILE As String = "Datei öffnen"
@@ -43,16 +41,17 @@ Public Class frmDocumentResultList
' Helper Classes
Private _IDBClient As Client
- Private _LogConfig As LogConfig
- Private _Logger As Logger
- Private _Config As ConfigManager(Of DocumentResultConfig)
- Private _Environment As Environment
- Private _Params As DocumentResultParams
- Private _ResultLists As List(Of DocumentResult)
- Private _Helpers As DocumentResultList
- Private _Filesystem As Modules.Filesystem.File
- Private _GridBuilder As GridBuilder
- Private _File As Modules.Windows.File
+ Private ReadOnly _LogConfig As LogConfig
+ Private ReadOnly _Logger As Logger
+ Private ReadOnly _Config As ConfigManager(Of DocumentResultConfig)
+ Private ReadOnly _Environment As Environment
+ Private ReadOnly _Params As DocumentResultParams
+ Private ReadOnly _ResultLists As List(Of DocumentResult)
+ Private ReadOnly _Helpers As DocumentResultList
+ Private ReadOnly _Filesystem As Modules.Filesystem.File
+ Private ReadOnly _GridBuilder As GridBuilder
+ Private ReadOnly _File As Modules.Windows.File
+ Private ReadOnly _OpenDocuments As New DocumentResultCache(50000000)
' Runtime variables
Private _IsLoading As Boolean = True
@@ -63,13 +62,13 @@ Public Class frmDocumentResultList
'Private _HashOriginalFile As String = Nothing
'Private _HashOpenedFile As String = Nothing
- Private WithEvents _FileOpenTimer As New Timer
- Private _OpenDocuments As New DocumentResultCache(50000000)
Private _CurrentDocument As DocumentResultInfo = Nothing
Private _CurrentDocumentId As Long = Nothing
- Private _Language As String
+ Private ReadOnly _Language As String
- Private Property OperationMode As IResultForm.Mode Implements IResultForm.OperationMode
+ Private WithEvents _FileOpenTimer As New Timer
+
+ Private Property OperationMode As Helpers.OperationMode Implements IResultForm.OperationMode
Public Property ShouldReturnToPreviousForm As Boolean = False Implements IResultForm.ShouldReturnToPreviousForm
@@ -83,6 +82,7 @@ Public Class frmDocumentResultList
COLUMN_DOCID = Params.ColumnNames.ObjectIdColumn
COLUMN_FILENAME = Params.ColumnNames.FilenameColumn
COLUMN_FILEPATH = Params.ColumnNames.FullPathColumn
+ COLUMN_ICON = Params.ColumnNames.IconColumn
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
@@ -97,15 +97,28 @@ Public Class frmDocumentResultList
_Language = Utils.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
End Sub
+ Private Function GetOperationMode() As Helpers.OperationMode
+ Dim oOperationMode = OperationMode.None
+
+ If _Environment.Service.IsActive AndAlso _Environment.Service.Address <> String.Empty Then
+ oOperationMode = Helpers.OperationMode.WithAppServer
+ Else
+ oOperationMode = Helpers.OperationMode.NoAppServer
+ End If
+
+ If _Params.OperationModeOverride <> Helpers.OperationMode.None Then
+ oOperationMode = _Params.OperationModeOverride
+ End If
+
+ Return oOperationMode
+ End Function
+
Private Sub frmDocumentResultList_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
- If _Environment.Service.IsActive AndAlso _Environment.Service.Address <> String.Empty Then
- OperationMode = IResultForm.Mode.WithAppServer
- Else
- OperationMode = IResultForm.Mode.NoAppServer
- End If
-
- If OperationMode = IResultForm.Mode.WithAppServer Then
+ ' Operation mode is either guessed from service settings
+ ' or explictly set from OperationModeOverride in Params
+ OperationMode = GetOperationMode()
+ If OperationMode = Helpers.OperationMode.WithAppServer Then
InitAppServer()
End If
@@ -125,7 +138,7 @@ Public Class frmDocumentResultList
SplitContainerControl2.SplitterPosition = _Config.Config.SplitContainer2Distance
SwitchDetailContainerHorizontal.Checked = _Config.Config.SplitContainer2Horizontal
- If OperationMode <> IResultForm.Mode.NoAppServer Then
+ If OperationMode <> Helpers.OperationMode.NoAppServer Then
' Location and size will be managed by the ZooFlow Search Window
If Utils.IsVisibleOnAnyScreen(_Config.Config.WindowLocation) Then
If Utils.LocationIsVisible(_Config.Config.WindowLocation) Then
@@ -136,8 +149,8 @@ Public Class frmDocumentResultList
End If
End If
- SwitchMainContainerHorizontal.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
- SwitchDetailContainerHorizontal.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
+ SwitchMainContainerHorizontal.Visibility = BarItemVisibility.Never
+ SwitchDetailContainerHorizontal.Visibility = BarItemVisibility.Never
End If
_GridBuilder.
@@ -171,11 +184,33 @@ Public Class frmDocumentResultList
DocumentViewer1.CloseDocument()
- If OperationMode = IResultForm.Mode.NoAppServer Then
- oDocumentInfo = LoadFile_Legacy(oRow)
- ElseIf OperationMode = IResultForm.Mode.WithAppServer Then
- oDocumentInfo = LoadFile_IDB(oRow)
- End If
+ Select Case OperationMode
+ Case Helpers.OperationMode.NoAppServer
+ oDocumentInfo = LoadFile_Legacy(oRow)
+
+ If oDocumentInfo.Contents IsNot Nothing Then
+ Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
+ DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
+ Else
+ DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
+ End If
+
+ Case Helpers.OperationMode.WithAppServer
+ oDocumentInfo = LoadFile_IDB(oRow)
+
+ If oDocumentInfo.Contents IsNot Nothing Then
+ Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
+ DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
+ Else
+ DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
+ End If
+
+
+ Case Helpers.OperationMode.ZooFlow
+ oDocumentInfo = LoadFile_ZooFlow(oRow)
+
+
+ End Select
If IsNothing(oDocumentInfo) Then
Show_Warning("File could not be loaded!")
@@ -191,7 +226,6 @@ Public Class frmDocumentResultList
If oDocumentInfo.Contents IsNot Nothing Then
Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
-
DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
Else
DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
@@ -281,6 +315,27 @@ Public Class frmDocumentResultList
End Try
End Function
+ Private Function LoadFile_ZooFlow(GridRow As DataRow)
+ Try
+ Dim oObjectId = GridRow.Item(COLUMN_DOCID)
+ _Logger.Debug("Loading FileObject for ObjectId: [{0}]", oObjectId)
+
+ ' This needs to be Sync bc otherwise the PopupMenuShowing event will fire before this method loaded the FileObject
+ Dim oFileObject As FileObject = _IDBClient.GetFileObject(oObjectId)
+ Dim oResultDocumentInfo As New DocumentResultInfo() With {
+ .AccessRight = "",
+ .FullPath = "",
+ .Contents = oFileObject._FileContents
+ }
+ _Logger.Debug("Successfully loaded Information for ObjectId: [{0}]", oObjectId)
+
+ Catch ex As Exception
+ _Logger.Error(ex)
+ Return Nothing
+
+ End Try
+ End Function
+
Private Function LoadFile_AsByteArray(DocumentInfo As DocumentResultInfo) As DocumentResultInfo
Try
_Logger.Debug("Loading File [{0}]", DocumentInfo.FullPath)
@@ -380,7 +435,7 @@ Public Class frmDocumentResultList
Throw New ApplicationException($"Datatable is missing DocId Column [{COLUMN_DOCID}] for search {Result.Title}!")
End If
- If OperationMode = IResultForm.Mode.NoAppServer And Result.Datatable.Columns.Contains(COLUMN_FILEPATH) = False Then
+ If OperationMode = Helpers.OperationMode.NoAppServer And Result.Datatable.Columns.Contains(COLUMN_FILEPATH) = False Then
Throw New ApplicationException($"Datatable is missing Filepath Column [{COLUMN_FILEPATH}] for search {Result.Title}!")
End If
@@ -516,7 +571,7 @@ Public Class frmDocumentResultList
oFilePathColumn.Visible = False
' Hide Fullpath column completely in AppServer-Mode
- If OperationMode = IResultForm.Mode.WithAppServer Then
+ If OperationMode = Helpers.OperationMode.WithAppServer Then
oFilePathColumn.OptionsColumn.ShowInCustomizationForm = False
End If
End If
@@ -877,7 +932,7 @@ Public Class frmDocumentResultList
_CurrentDocumentId = oObjectId
- If OperationMode = IResultForm.Mode.WithAppServer Then
+ If OperationMode = Helpers.OperationMode.WithAppServer Then
If oRight = Rights.AccessRight.FULL Or oRight = Rights.AccessRight.VIEW_EXPORT Then
MenuFullAccess_IDB.ShowPopup(oPoint)
Else
diff --git a/GUIs.Common/Helpers.vb b/GUIs.Common/Helpers.vb
new file mode 100644
index 00000000..41ccd0a9
--- /dev/null
+++ b/GUIs.Common/Helpers.vb
@@ -0,0 +1,8 @@
+Public Class Helpers
+ Public Enum OperationMode
+ WithAppServer
+ NoAppServer
+ ZooFlow
+ None
+ End Enum
+End Class
diff --git a/GUIs.Common/IResultForm.vb b/GUIs.Common/IResultForm.vb
index 896ff0d4..1614fd56 100644
--- a/GUIs.Common/IResultForm.vb
+++ b/GUIs.Common/IResultForm.vb
@@ -1,10 +1,7 @@
-Public Interface IResultForm
- Enum Mode
- WithAppServer
- NoAppServer
- End Enum
+Imports DigitalData.GUIs.Common.Helpers
- Property OperationMode As Mode
+Public Interface IResultForm
+ Property OperationMode As OperationMode
Property ShouldReturnToPreviousForm As Boolean
Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean
diff --git a/GUIs.Common/My Project/licenses.licx b/GUIs.Common/My Project/licenses.licx
index e69de29b..a42d698e 100644
--- a/GUIs.Common/My Project/licenses.licx
+++ b/GUIs.Common/My Project/licenses.licx
@@ -0,0 +1,3 @@
+DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/GUIs.ZooFlow/Globix/ClassEmailHeaderExtractor.vb b/GUIs.ZooFlow/Globix/ClassEmailHeaderExtractor.vb
deleted file mode 100644
index 40199418..00000000
--- a/GUIs.ZooFlow/Globix/ClassEmailHeaderExtractor.vb
+++ /dev/null
@@ -1,112 +0,0 @@
-Imports Independentsoft
-Imports System.Text.RegularExpressions
-
-Public Class ClassEmailHeaderExtractor
- '''
- ''' Extrahiert die Headerinformationen aus einer .msg Datei mithilfe der MSG.NET Klasse
- '''
- ''' Der Pfad einer .msg Datei
- ''' Headerinformationen als String oder Nothing wenn ein Fehler aufgetreten ist.
- Public Shared Function getMessageHeaders(path As String) As String
- Try
- Dim msg As New Msg.Message(path)
- Dim headers = msg.TransportMessageHeaders.Replace(vbCrLf, " ")
- Return headers
- Catch ex As Exception
- Return Nothing
- End Try
- End Function
-
- '''
- ''' Extrahiert die Headerinformationen aus einem msg Objekt mithilfe der MSG.NET Klasse
- '''
- ''' Eine Email vom Typ Msg.Message
- ''' Headerinformationen als String oder Nothing wenn ein Fehler aufgetreten ist.
- Public Shared Function getMessageHeaders(msg As Msg.Message) As String
- Try
- Dim headers = msg.TransportMessageHeaders.Replace(vbCrLf, " ")
- Return headers
- Catch ex As Exception
- Return Nothing
- End Try
- End Function
-
- '''
- ''' Extrahiert aus den Headerinformationen anhand einer Liste von Regular Expressions eine Absenderadresse.
- '''
- ''' Headerinformationen die von getMessageHeaders erzeugt wurden.
- ''' Eine Liste von Regular Expressions
- ''' Die Ergebnisgruppe, die die Adresse enthält
- ''' Eine Emailadresse oder Nothing, wenn keine der Regular Expressions ein Ergebnis lieferte.
- Public Shared Function extractFromAddress(messageHeaders As String, RegexList As List(Of Regex), Optional RegexGroup As Integer = 1) As String
- If IsNothing(messageHeaders) Then
- Return Nothing
- End If
-
- For Each rx In RegexList
- Dim match As Match = rx.Match(messageHeaders)
- Dim email As String = match.Groups(RegexGroup).Value
-
- If Not String.IsNullOrWhiteSpace(email) Then
- Return email
- End If
- Next
-
- Return Nothing
- End Function
- Public Shared Function extractFromHeader(messageHeaders As String, Regex As String) As String
- Try
- Dim result As String = ""
- Dim i As Integer = 0
- If IsNothing(messageHeaders) Then
- Return Nothing
- End If
- ' einen Regulären Ausdruck laden
- Dim strRegex As String = Regex
- Dim myRegex As New Regex(strRegex, RegexOptions.IgnorePatternWhitespace)
- Dim strTargetString As String = messageHeaders.Trim
- ' die Vorkommen im String auslesen
- For Each myMatch As Match In myRegex.Matches(strTargetString)
- If myMatch.Success Then
- If myMatch.Value <> "" Then
- If i = 0 Then
- result = myMatch.Value.ToString
- Else
- result = result & ";" & myMatch.Value.ToString
- End If
- i += 1
- End If
- End If
- Next
- Return result
- Catch ex As Exception
- MsgBox("Unexpected Error in extractFromHeader: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
- Return Nothing
- End Try
-
- End Function
-
- '''
- ''' Extrahiert aus den Headerinformationen anhand einer Liste von Regular Expressions eine Empfängeradresse.
- '''
- ''' Headerinformationen die von getMessageHeaders erzeugt wurden.
- ''' Eine Liste von Regular Expressions
- ''' Die Ergebnisgruppe, die die Adresse enthält
- ''' Eine Emailadresse oder Nothing, wenn keine der Regular Expressions ein Ergebnis lieferte.
- Public Shared Function extractToAddress(messageHeaders As String, RegexList As List(Of Regex), Optional RegexGroup As Integer = 1) As String
- If IsNothing(messageHeaders) Then
- Return Nothing
- End If
-
- For Each rx In RegexList
- Dim match As Match = rx.Match(messageHeaders)
- Dim email As String = match.Groups(RegexGroup).Value
-
- If Not String.IsNullOrWhiteSpace(email) Then
- Return email
- End If
- Next
-
- Return Nothing
- End Function
-End Class
diff --git a/GUIs.ZooFlow/Globix/ClassFolderwatcher.vb b/GUIs.ZooFlow/Globix/ClassFolderwatcher.vb
index a11d5b3b..80a49e3c 100644
--- a/GUIs.ZooFlow/Globix/ClassFolderwatcher.vb
+++ b/GUIs.ZooFlow/Globix/ClassFolderwatcher.vb
@@ -20,14 +20,9 @@ Public Class ClassFolderwatcher
'Gestartet also Stoppen
FWFolderWatcher.EnableRaisingEvents = False
My.Application.Globix.Folderwatchstarted = False
- 'FolderWatch neu instanzieren
- FWFolderWatcher = New FileSystemWatcher(My.Application.Globix.CurrentFolderWatchPath, "*.*")
- Logger.Info(" >> FolderWatch neu instanziert")
- FWFolderWatcher.IncludeSubdirectories = False
- FWFolderWatcher.EnableRaisingEvents = True
- AddHandler FWFolderWatcher.Created, AddressOf OnCreated
+
+ FWFolderWatcher = StartFolderwatcherForPath(My.Application.Globix.CurrentFolderWatchPath)
My.Application.Globix.Folderwatchstarted = True
- 'SaveConfigValue("my.Application.Globix.Folderwatchstarted", "True")
My.UIConfig.Globix.FolderWatchStarted = True
My.UIConfigManager.Save()
End If
@@ -43,13 +38,10 @@ Public Class ClassFolderwatcher
If FWScan.EnableRaisingEvents = True Then
'Gestartet also Stoppen
FWScan.EnableRaisingEvents = False
+
'FolderWatch neu instanzieren
- FWScan = New System.IO.FileSystemWatcher(My.Application.Globix.CURRENT_SCAN_FOLDERWATCH, "*.*")
- Logger.Info(" >> FolderWatchScan neu instanziert")
- FWScan.IncludeSubdirectories = False
- FWScan.EnableRaisingEvents = True
- AddHandler FWScan.Created, AddressOf OnCreated
- 'SaveConfigValue("FWSCAN_started", "True")
+ FWScan = StartFolderwatcherForPath(My.Application.Globix.CURRENT_SCAN_FOLDERWATCH)
+
My.UIConfig.Globix.FolderWatchScanStarted = True
My.UIConfigManager.Save()
End If
@@ -60,28 +52,16 @@ Public Class ClassFolderwatcher
End Sub
Public Sub StartStop_FolderWatch()
Try
- If FWFolderWatcher Is Nothing Then
- FWFolderWatcher = New System.IO.FileSystemWatcher(My.Application.Globix.CurrentFolderWatchPath, "*.*")
- Logger.Info(" >> FolderWatch Gestartet")
- FWFolderWatcher.IncludeSubdirectories = False
- FWFolderWatcher.EnableRaisingEvents = True
- AddHandler FWFolderWatcher.Created, AddressOf OnCreated
+ If FWFolderWatcher Is Nothing OrElse FWFolderWatcher.EnableRaisingEvents = False Then
+ ' Folderwatch neu instanzieren
+ FWFolderWatcher = StartFolderwatcherForPath(My.Application.Globix.CurrentFolderWatchPath)
My.Application.Globix.Folderwatchstarted = True
My.UIConfig.Globix.FolderWatchStarted = True
My.UIConfigManager.Save()
+
End If
- If FWFolderWatcher.EnableRaisingEvents = False Then
- ' Dim watcher As New FileSystemWatcher()
- ' watcher.Path = CURRENT_FOLDERWATCH
- FWFolderWatcher = New System.IO.FileSystemWatcher(My.Application.Globix.CurrentFolderWatchPath, "*.*")
- Logger.Info(" >> FolderWatch Gestartet")
- FWFolderWatcher.IncludeSubdirectories = False
- FWFolderWatcher.EnableRaisingEvents = True
- AddHandler FWFolderWatcher.Created, AddressOf OnCreated
- My.Application.Globix.Folderwatchstarted = True
- My.UIConfig.Globix.FolderWatchStarted = True
- My.UIConfigManager.Save()
- Else
+
+ If FWFolderWatcher.EnableRaisingEvents = True Then
'Gestartet also Stoppen
FWFolderWatcher.EnableRaisingEvents = False
My.Application.Globix.Folderwatchstarted = False
@@ -161,6 +141,21 @@ Public Class ClassFolderwatcher
Return False
End If
End Function
+
+ Private Function StartFolderwatcherForPath(pPath As String) As FileSystemWatcher
+ Dim oWatcher = New FileSystemWatcher(pPath, "*.*") With {
+ .IncludeSubdirectories = False,
+ .EnableRaisingEvents = True
+ }
+ AddHandler oWatcher.Created, AddressOf OnCreated
+ Logger.Debug("Folder Watcher started for Path [{0}]", pPath)
+
+ My.UIConfig.Globix.FolderWatchScanStarted = True
+ My.UIConfigManager.Save()
+
+ Return oWatcher
+ End Function
+
Private Sub OnCreated(source As Object, e As FileSystemEventArgs)
Try
If Not IsNothing(My.Application.Globix.DTEXCLUDE_FILES) Then
diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj
index 16880422..3a51fc62 100644
--- a/GUIs.ZooFlow/ZooFlow.vbproj
+++ b/GUIs.ZooFlow/ZooFlow.vbproj
@@ -275,7 +275,6 @@
True
MyDataset.xsd
-
frmGlobixBasicConfig.vb