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.