Implement initial server-side code

This commit is contained in:
2024-05-15 16:25:42 -04:00
parent cf184e627e
commit 7a5ff7fac9
3 changed files with 57 additions and 12 deletions
+37
View File
@@ -0,0 +1,37 @@
package sync
import (
"fmt"
"github.com/rwinkhart/MUTN/src/backend"
"os"
)
// GetRemoteDataFromServer prints to stdout the remote entries, mod times, folders, and deletions
// lists in output are separated by "\x1f"
// output is meant to be captured over SSH for interpretation by the client
func GetRemoteDataFromServer() {
entryList, dirList := WalkEntryDir()
modList := getModTimes(entryList)
deletionsList, err := os.ReadDir(backend.ConfigDir + "/deletions")
if err != nil {
fmt.Println(backend.AnsiError + "Failed to read the deletions directory: " + err.Error() + backend.AnsiReset)
os.Exit(1)
}
// print the lists to stdout
for _, entry := range entryList {
fmt.Println(entry)
}
fmt.Println("\x1f")
for _, mod := range modList {
fmt.Println(mod)
}
fmt.Print("\x1f") // do not print new lines as the prior output is []int64
for _, dir := range dirList {
fmt.Println(dir)
}
fmt.Println("\x1f")
for _, deletion := range deletionsList {
fmt.Println(deletion.Name())
}
}