Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'internal/bootstrap/server_factory.go')
-rw-r--r--internal/bootstrap/server_factory.go28
1 files changed, 17 insertions, 11 deletions
diff --git a/internal/bootstrap/server_factory.go b/internal/bootstrap/server_factory.go
index bb26a59d4..ca6d870d1 100644
--- a/internal/bootstrap/server_factory.go
+++ b/internal/bootstrap/server_factory.go
@@ -9,7 +9,8 @@ import (
"google.golang.org/grpc"
)
-type serverFactory struct {
+// GitalyServerFactory is a factory of gitaly grpc servers
+type GitalyServerFactory struct {
ruby *rubyserver.Server
secure, insecure *grpc.Server
}
@@ -19,17 +20,20 @@ type GracefulStoppableServer interface {
GracefulStop()
Stop()
Serve(l net.Listener, secure bool) error
- StartRuby() error
}
-// NewServerFactory initializes a rubyserver and then lazily initializes both secure and insecure grpc.Server
-func NewServerFactory() GracefulStoppableServer {
- return &serverFactory{ruby: &rubyserver.Server{}}
+// NewGitalyServerFactory initializes a rubyserver and then lazily initializes both secure and insecure grpc.Server
+func NewGitalyServerFactory() *GitalyServerFactory {
+ return &GitalyServerFactory{ruby: &rubyserver.Server{}}
}
-func (s *serverFactory) StartRuby() error { return s.ruby.Start() }
+// StartRuby starts the ruby process
+func (s *GitalyServerFactory) StartRuby() error {
+ return s.ruby.Start()
+}
-func (s *serverFactory) Stop() {
+// Stop stops both the secure and insecure servers
+func (s *GitalyServerFactory) Stop() {
for _, srv := range s.all() {
srv.Stop()
}
@@ -37,7 +41,8 @@ func (s *serverFactory) Stop() {
s.ruby.Stop()
}
-func (s *serverFactory) GracefulStop() {
+// GracefulStop stops both the secure and insecure servers gracefully
+func (s *GitalyServerFactory) GracefulStop() {
wg := sync.WaitGroup{}
for _, srv := range s.all() {
@@ -52,13 +57,14 @@ func (s *serverFactory) GracefulStop() {
wg.Wait()
}
-func (s *serverFactory) Serve(l net.Listener, secure bool) error {
+// Serve starts serving the listener
+func (s *GitalyServerFactory) Serve(l net.Listener, secure bool) error {
srv := s.get(secure)
return srv.Serve(l)
}
-func (s *serverFactory) get(secure bool) *grpc.Server {
+func (s *GitalyServerFactory) get(secure bool) *grpc.Server {
if secure {
if s.secure == nil {
s.secure = server.NewSecure(s.ruby)
@@ -74,7 +80,7 @@ func (s *serverFactory) get(secure bool) *grpc.Server {
return s.insecure
}
-func (s *serverFactory) all() []*grpc.Server {
+func (s *GitalyServerFactory) all() []*grpc.Server {
var servers []*grpc.Server
if s.secure != nil {
servers = append(servers, s.secure)