watcher: mv utils to util.go
This commit is contained in:
parent
bc936b09a5
commit
4573618440
44
pkg/watcher/util.go
Normal file
44
pkg/watcher/util.go
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
package watcher
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"path/filepath"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
"github.com/fsnotify/fsnotify"
|
||||||
|
)
|
||||||
|
|
||||||
|
func simulateInitialCreates(dirName string, eventChan chan<- fsnotify.Event) error {
|
||||||
|
dir, err := os.ReadDir(dirName)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, file := range dir {
|
||||||
|
eventChan <- fsnotify.Event{
|
||||||
|
Name: filepath.Join(dirName, file.Name()),
|
||||||
|
Op: fsnotify.Create,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func sliceToMap[T comparable](sl []T) map[T]interface{} {
|
||||||
|
m := make(map[T]interface{})
|
||||||
|
|
||||||
|
for _, k := range sl {
|
||||||
|
m[k] = nil
|
||||||
|
}
|
||||||
|
|
||||||
|
return m
|
||||||
|
}
|
||||||
|
|
||||||
|
func hasSlicePrefix(s string, sl []string) bool {
|
||||||
|
for _, prefix := range sl {
|
||||||
|
if strings.HasPrefix(s, prefix) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
@ -3,9 +3,7 @@ package watcher
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"git.k-space.ee/k-space/logmower-shipper/pkg/file"
|
"git.k-space.ee/k-space/logmower-shipper/pkg/file"
|
||||||
@ -150,38 +148,3 @@ var App = &cli.App{
|
|||||||
return ctx.Err()
|
return ctx.Err()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
func simulateInitialCreates(dirName string, eventChan chan<- fsnotify.Event) error {
|
|
||||||
dir, err := os.ReadDir(dirName)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, file := range dir {
|
|
||||||
eventChan <- fsnotify.Event{
|
|
||||||
Name: filepath.Join(dirName, file.Name()),
|
|
||||||
Op: fsnotify.Create,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func sliceToMap[T comparable](sl []T) map[T]interface{} {
|
|
||||||
m := make(map[T]interface{})
|
|
||||||
|
|
||||||
for _, k := range sl {
|
|
||||||
m[k] = nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return m
|
|
||||||
}
|
|
||||||
|
|
||||||
func hasSlicePrefix(s string, sl []string) bool {
|
|
||||||
for _, prefix := range sl {
|
|
||||||
if strings.HasPrefix(s, prefix) {
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user