@@ -2,17 +2,19 @@ package main
22
33import "fmt"
44import "lbry/daemon/dht"
5+ import "lbry/daemon/peer"
56import "lbry/daemon/stream"
7+ import "lbry/daemon/reflector"
68import "lbry/daemon/rpc"
79import "net"
8- import "net/http"
910import "strconv"
1011import "sync"
1112
1213var wg sync.WaitGroup
1314
1415func main () {
1516 node , _ := dht .NewNode (4444 )
17+
1618 rpcServer := rpc .CreateServer ()
1719 contentServer := stream .CreateServer (stream .NewManager (node ))
1820
@@ -24,27 +26,49 @@ func main() {
2426
2527 wg .Go (func () {
2628 fmt .Println ("Starting RPC server on port 5279." )
27- startHTTPServer (rpcServer , 5279 )
29+ listener , err := getTCPListener ("" , 5279 )
30+ if err != nil {
31+ fmt .Println ("Error when getting TCP listener." )
32+ }
33+ defer listener .Close ()
34+ rpc .StartServer (rpcServer , listener )
2835 })
2936
3037 wg .Go (func () {
3138 fmt .Println ("Starting content server on port 5280." )
32- startHTTPServer (contentServer , 5280 )
39+ listener , err := getTCPListener ("" , 5280 )
40+ if err != nil {
41+ fmt .Println ("Error when getting TCP listener." )
42+ }
43+ defer listener .Close ()
44+ stream .StartServer (contentServer , listener )
45+ })
46+
47+ wg .Go (func () {
48+ fmt .Println ("Starting reflector server on port 5566." )
49+ listener , err := getTCPListener ("" , 5566 )
50+ if err != nil {
51+ fmt .Println ("Error when getting TCP listener." )
52+ }
53+ defer listener .Close ()
54+ reflector .StartServer (listener )
55+ })
56+
57+ wg .Go (func () {
58+ fmt .Println ("Starting peer server on port 5567." )
59+ listener , err := getTCPListener ("" , 5567 )
60+ if err != nil {
61+ fmt .Println ("Error when getting TCP listener." )
62+ }
63+ defer listener .Close ()
64+ peer .StartServer (listener )
3365 })
3466
3567 wg .Wait ()
3668
3769 fmt .Println ("All servers have stopped." )
3870}
3971
40- func startHTTPServer (rpcServer * http.Server , port int ) {
41- listener , err := net .Listen ("tcp" , net .JoinHostPort ("" , strconv .Itoa (port )))
42- if err != nil && err != http .ErrServerClosed {
43- fmt .Println ("Error when starting listening." )
44- }
45-
46- err = rpcServer .Serve (listener )
47- if err != nil && err != http .ErrServerClosed {
48- fmt .Println ("Error when starting HTTP server." )
49- }
72+ func getTCPListener (hostname string , port int ) (net.Listener , error ) {
73+ return net .Listen ("tcp" , net .JoinHostPort (hostname , strconv .Itoa (port )))
5074}
0 commit comments