Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BootstrapParams ¶
type BootstrapParams struct { Name string Logger bark.Logger MetricScope tally.Scope RingpopFactory RingpopFactory TChannelFactory TChannelFactory CassandraConfig config.Cassandra }
BootstrapParams holds the set of parameters needed to bootstrap a service
type RingpopFactory ¶
type RingpopFactory interface { // CreateRingpop vends a bootstrapped ringpop object CreateRingpop(ch *tchannel.Channel) (*ringpop.Ringpop, error) }
RingpopFactory provides a bootstrapped ringpop
type Service ¶
type Service interface { // GetHostName returns the name of host running the service GetHostName() string // Start starts the service Start(thriftService []thrift.TChanServer) // Stop stops the service Stop() GetLogger() bark.Logger GetMetricsClient() metrics.Client GetClientFactory() client.Factory GetMembershipMonitor() membership.Monitor GetHostInfo() *membership.HostInfo }
Service is the interface which must be implemented by all the services
func New ¶
func New(params *BootstrapParams) Service
New instantiates a Service Instance TODO: have a better name for Service.
type TChannelFactory ¶
type TChannelFactory interface { // CreateChannel creates and returns the (tchannel, thriftServer) tuple // The implementation typically also starts the server as part of this call CreateChannel(sName string, thriftServices []thrift.TChanServer) (*tchannel.Channel, *thrift.Server) }
TChannelFactory creates a TChannel and Thrift server
Click to show internal directories.
Click to hide internal directories.