gitlab.com/gitlab-org/labkit@v1.21.0/correlation/grpc/client_interceptors_options.go (about) 1 package grpccorrelation 2 3 // The configuration for InjectCorrelationID. 4 type clientInterceptConfig struct { 5 clientName string 6 } 7 8 // ClientCorrelationInterceptorOption configures client correlation interceptors. 9 type ClientCorrelationInterceptorOption func(*clientInterceptConfig) 10 11 func applyClientCorrelationInterceptorOptions(opts []ClientCorrelationInterceptorOption) clientInterceptConfig { 12 config := clientInterceptConfig{} 13 for _, v := range opts { 14 v(&config) 15 } 16 17 return config 18 } 19 20 // WithClientName will configure the client name metadata on the 21 // GRPC client interceptors. 22 func WithClientName(clientName string) ClientCorrelationInterceptorOption { 23 return func(config *clientInterceptConfig) { 24 config.clientName = clientName 25 } 26 }