2016-06-07 21:28:28 +00:00
|
|
|
package controlapi
|
|
|
|
|
|
|
|
import (
|
|
|
|
"errors"
|
|
|
|
|
2017-01-29 16:11:26 +00:00
|
|
|
"github.com/docker/docker/pkg/plugingetter"
|
2016-07-21 00:34:33 +00:00
|
|
|
"github.com/docker/swarmkit/ca"
|
2017-07-31 18:21:04 +00:00
|
|
|
"github.com/docker/swarmkit/manager/drivers"
|
2016-06-07 21:28:28 +00:00
|
|
|
"github.com/docker/swarmkit/manager/state/raft"
|
|
|
|
"github.com/docker/swarmkit/manager/state/store"
|
|
|
|
)
|
|
|
|
|
|
|
|
var (
|
|
|
|
errInvalidArgument = errors.New("invalid argument")
|
|
|
|
)
|
|
|
|
|
|
|
|
// Server is the Cluster API gRPC server.
|
|
|
|
type Server struct {
|
2017-03-28 18:51:33 +00:00
|
|
|
store *store.MemoryStore
|
|
|
|
raft *raft.Node
|
|
|
|
securityConfig *ca.SecurityConfig
|
|
|
|
pg plugingetter.PluginGetter
|
2017-07-31 18:21:04 +00:00
|
|
|
dr *drivers.DriverProvider
|
2016-06-07 21:28:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// NewServer creates a Cluster API server.
|
2017-07-31 18:21:04 +00:00
|
|
|
func NewServer(store *store.MemoryStore, raft *raft.Node, securityConfig *ca.SecurityConfig, pg plugingetter.PluginGetter, dr *drivers.DriverProvider) *Server {
|
2016-06-07 21:28:28 +00:00
|
|
|
return &Server{
|
2017-03-28 18:51:33 +00:00
|
|
|
store: store,
|
2017-07-31 18:21:04 +00:00
|
|
|
dr: dr,
|
2017-03-28 18:51:33 +00:00
|
|
|
raft: raft,
|
|
|
|
securityConfig: securityConfig,
|
|
|
|
pg: pg,
|
2016-06-07 21:28:28 +00:00
|
|
|
}
|
|
|
|
}
|