Daten Channel hoch in die Signatur von Scancsv gezogen.

This commit is contained in:
Marco Kittel 2025-06-29 08:28:00 +02:00
parent dd6cb28e9a
commit a8cf840640
1 changed files with 2 additions and 4 deletions

View File

@ -46,7 +46,7 @@ func NewElioDateiFoo(lookUpDir string, process ElioHandleFunc) *ElioDateiFoo {
// Warenhausnamen in eine eine Hashmap ablegen. Dopplungen mit dem spätesten Zeitpunkt behalten. // Warenhausnamen in eine eine Hashmap ablegen. Dopplungen mit dem spätesten Zeitpunkt behalten.
// Veraltete Dateien mit Präfix no-import und Postifx .old benennen. // Veraltete Dateien mit Präfix no-import und Postifx .old benennen.
// Gültige Dateinamen zur Extraktion in Closure übergeben. // Gültige Dateinamen zur Extraktion in Closure übergeben.
func (f *ElioDateiFoo) ScanCsv() { func (f *ElioDateiFoo) ScanCsv(data chan<- CountryCsvData) {
files, err := os.ReadDir(f.lookUpDir) files, err := os.ReadDir(f.lookUpDir)
if err != nil { if err != nil {
fmt.Println(err) fmt.Println(err)
@ -76,8 +76,6 @@ func (f *ElioDateiFoo) ScanCsv() {
} }
} }
//BufferedChannel mit Platz für 10 Datensätzen
dataChannel := make(chan CountryCsvData, 10)
for _, v := range filemap { for _, v := range filemap {
f.mu.RLock() f.mu.RLock()
_, ok := f.haveDone[v.filename] _, ok := f.haveDone[v.filename]
@ -89,6 +87,6 @@ func (f *ElioDateiFoo) ScanCsv() {
f.mu.Lock() f.mu.Lock()
f.haveDone[v.filename] = time.Now() f.haveDone[v.filename] = time.Now()
f.mu.Unlock() f.mu.Unlock()
go f.process(v.filename, dataChannel) go f.process(v.filename, data)
} }
} }