rs2322tcp/cmd/rs2322tcp-client-test/main.go

44 lines
793 B
Go

package main
import (
"fmt"
"os"
"os/signal"
"syscall"
"git.lang-dieter.de/rs2322tcp/internal/client"
)
func main() {
const configFile = "./configs/client.json"
application, err := client.NewApplication(configFile)
if err != nil {
fmt.Fprintf(os.Stderr, "NewApplication: %v\n", err)
os.Exit(1)
}
if err := application.Start(); err != nil {
fmt.Fprintf(os.Stderr, "Application.Start: %v\n", err)
os.Exit(1)
}
fmt.Println("rs2322tcp technical client started")
fmt.Println("Press Ctrl+C to stop.")
signals := make(chan os.Signal, 1)
signal.Notify(
signals,
os.Interrupt,
syscall.SIGTERM,
)
<-signals
fmt.Println("Stopping client...")
if err := application.Close(); err != nil {
fmt.Fprintf(os.Stderr, "Application.Close: %v\n", err)
os.Exit(1)
}
}