Files
Proto/main.go

48 lines
810 B
Go
Raw Normal View History

2023-09-19 22:18:20 +02:00
package main
2023-09-21 19:10:27 +02:00
import (
"fmt"
"flag"
"os"
)
2023-09-19 22:18:20 +02:00
2023-09-21 19:10:27 +02:00
type Server interface {
Run()
}
2023-09-19 22:18:20 +02:00
func main() {
2023-09-21 19:10:27 +02:00
var challenge int
flag.IntVar(&challenge, "challenge",9, "Challenge number")
2023-09-21 19:10:27 +02:00
flag.Parse()
var port uint16
port = 13370
var server Server
switch challenge {
case 0:
server = NewEchoServer(port);
case 1:
server = NewPrimeServer(port);
2023-09-22 21:22:51 +02:00
case 2:
server = NewMeansServer(port);
2023-09-24 16:01:57 +02:00
case 3:
server = NewChatServer(port);
2023-09-24 21:33:20 +02:00
case 4:
server = NewDatabaseServer(port);
2023-09-26 22:39:30 +02:00
case 5:
server = NewProxyServer(port);
case 6:
server = NewSpeedServer(port);
case 7:
server = NewReverseServer(port);
2023-11-18 10:59:36 +01:00
case 8:
server = NewSecureServer(port);
case 9:
server = NewJobServer(port);
2023-09-21 19:10:27 +02:00
default:
fmt.Printf("Unknown challenge\n")
os.Exit(1)
}
server.Run()
2023-09-19 22:18:20 +02:00
}