INNER CODE UNIT · Go
NewClient
samsara/samsara · clients/go/client.go:17
func NewClient(config Config) (*Client, error) {
if err := config.Validate(); err != nil {
return nil, err
}
client := &Client{
config: config,
publisher: &Publisher{config},
queue: NewRingBuffer(config.MaxBufferSize),
}
if config.StartPublishingThread {
go client.publishing()
}
return client, nil
}