watcher: mv utils to util.go
This commit is contained in:
		
							
								
								
									
										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 |  | ||||||
| } |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user