Merge branch 'newMaster2024' of https://git.it.verag.ag/edv/SDL into newMaster2024

This commit is contained in:
2025-10-08 09:28:19 +02:00
2 changed files with 47 additions and 9 deletions

View File

@@ -6,6 +6,7 @@
Imports System.Data.SqlClient
Imports System.Threading
Imports System.Threading.Tasks
Imports System.Windows.Forms
Imports Confluent.Kafka
Imports Newtonsoft.Json
@@ -22,8 +23,8 @@ Public Class cATEZ_Greenpulse_KafkaDecs
'== Kafka: Konfiguration (Klassenebene)
'========================
Public Shared BootstrapServers As String = "192.168.85.250:9092" 'http://192.168.85.250:8888
Public Shared TopicName As String = "greenpulse.declarationdata.v1"
'Public Shared TopicName As String = "dev.greenpulse.declarationdata.v1"
' Public Shared TopicName As String = "greenpulse.declarationdata.v1"
Public Shared TopicName As String = "dev.greenpulse.declarationdata.v1"
' Falls SASL/TLS benötigt:
Public Shared UseSasl As Boolean = False
Public Shared SaslUsername As String = ""
@@ -271,9 +272,22 @@ Public Class cATEZ_Greenpulse_KafkaDecs
End Function
'========================
'== Kafka: Insert/Update (per Message-Key)
'========================
Public Shared Function InsertOrUpdateToKafkaSync_Bool(rec As cATEZ_Greenpulse_KafkaDecs, unique_KEY As String, Optional waitMs As Integer = 30000) As Boolean
Try
Dim result = InsertOrUpdateToKafkaSync(rec, unique_KEY, waitMs)
Return True
Catch ex As Exception
MessageBox.Show("Fehler beim Senden an Kafka: " & ex.Message, "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error)
Return False
End Try
End Function
Public Shared Function InsertOrUpdateToKafkaSync(rec As cATEZ_Greenpulse_KafkaDecs, unique_KEY As String, Optional waitMs As Integer = 30000) As DeliveryResult(Of String, String)
@@ -290,7 +304,7 @@ Public Class cATEZ_Greenpulse_KafkaDecs
Using producer = New ProducerBuilder(Of String, String)(cfg).Build()
Dim key = unique_KEY ' GetUniqueKey(rec)
Dim msg = New Message(Of String, String) With {.key = key, .Value = rec.ToJson(False)}
Dim msg = New Message(Of String, String) With {.Key = key, .Value = rec.ToJson(False)}
Dim done As New Threading.ManualResetEventSlim(False)
Dim lastReport As DeliveryResult(Of String, String) = Nothing